|
Monte Carlo Integration Library 1.0
High-performance Monte Carlo methods for numerical integration and optimization
|
Abstract proposal distribution interface. More...
#include <proposal.hpp>
Public Member Functions | |
| virtual | ~Proposal ()=default |
| Virtual destructor for proper cleanup. | |
| virtual mc::geom::Point< dim > | sample (std::mt19937 &rng) const =0 |
| Draw a random sample from the proposal distribution. | |
| virtual double | pdf (const mc::geom::Point< dim > &x) const =0 |
| Evaluate the proposal probability density function. | |
Abstract proposal distribution interface.
| dim | Dimensionality of the distribution |
A proposal distribution q(x) is used in importance sampling to approximate the integrand or in MCMC to propose candidate moves. The efficiency of these algorithms depends on how well q(x) approximates the target.
Definition at line 28 of file proposal.hpp.
|
virtualdefault |
Virtual destructor for proper cleanup.
|
pure virtual |
Evaluate the proposal probability density function.
| x | Query point |
Must be non-zero everywhere in the support of the integrand.
Implemented in mc::proposals::UniformProposal< dim >, mc::proposals::GaussianProposal< dim >, and mc::proposals::MixtureProposal< dim >.
|
pure virtual |
Draw a random sample from the proposal distribution.
| rng | Mersenne Twister random generator |
Implemented in mc::proposals::GaussianProposal< dim >, mc::proposals::MixtureProposal< dim >, and mc::proposals::UniformProposal< dim >.