1 #ifndef INDEPENDENCEPROPOSAL_H_
2 #define INDEPENDENCEPROPOSAL_H_
9 namespace SamplingAlgorithms {
30 std::shared_ptr<AbstractSamplingProblem>
const&
prob);
33 std::shared_ptr<AbstractSamplingProblem>
const&
prob,
34 std::shared_ptr<muq::Modeling::Distribution> proposalIn);
41 std::shared_ptr<muq::Modeling::Distribution>
proposal;
43 virtual std::shared_ptr<SamplingState>
Sample(std::shared_ptr<SamplingState>
const& currentState)
override;
45 virtual double LogDensity(std::shared_ptr<SamplingState>
const& currState,
46 std::shared_ptr<SamplingState>
const& propState)
override;
49 static std::shared_ptr<muq::Modeling::Distribution>
ExtractDistribution(boost::property_tree::ptree
const& opts,
50 std::shared_ptr<AbstractSamplingProblem>
const&
prob);
Implementation of an independence proposal with arbitrary distribution.
IndependenceProposal(boost::property_tree::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > const &prob, std::shared_ptr< muq::Modeling::Distribution > proposalIn)
static std::shared_ptr< muq::Modeling::Distribution > ExtractDistribution(boost::property_tree::ptree const &opts, std::shared_ptr< AbstractSamplingProblem > const &prob)
virtual std::shared_ptr< SamplingState > Sample(std::shared_ptr< SamplingState > const ¤tState) override
virtual ~IndependenceProposal()=default
virtual double LogDensity(std::shared_ptr< SamplingState > const &currState, std::shared_ptr< SamplingState > const &propState) override
IndependenceProposal(boost::property_tree::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > const &prob)
std::shared_ptr< muq::Modeling::Distribution > proposal
The proposal distribution.
std::shared_ptr< AbstractSamplingProblem > prob