Monte Carlo Integration Library 1.0
High-performance Monte Carlo methods for numerical integration and optimization
Classes | Namespaces
mixtureProposal.hpp File Reference

Mixture proposal distribution for importance sampling (non-owning raw pointers). More...

#include "proposal.hpp"
#include <vector>
#include <random>
#include <stdexcept>
#include <numeric>
#include <cmath>
#include "mixtureProposal.tpp"
Include dependency graph for mixtureProposal.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mc::proposals::MixtureProposal< dim >
 

Namespaces

namespace  mc
 
namespace  mc::proposals
 

Detailed Description

Mixture proposal distribution for importance sampling (non-owning raw pointers).

A mixture proposal is defined as: q(x) = sum_{k=1..K} w_k * q_k(x) where w_k >= 0 and sum_k w_k = 1, and each q_k is a Proposal<dim>.

Sampling: 1) draw k ~ Categorical(w) 2) draw x ~ q_k

PDF evaluation: q(x) = sum_k w_k * q_k.pdf(x)

LIFETIME NOTE: This class stores NON-OWNING pointers to proposal components. The caller must guarantee that all component proposals outlive this MixtureProposal.

Definition in file mixtureProposal.hpp.