MUQ  0.4.3
MIDummyKernel.h
Go to the documentation of this file.
1 #ifndef MIDUMMYKERNEL_H_
2 #define MIDUMMYKERNEL_H_
3 
8 
9 namespace muq {
10  namespace SamplingAlgorithms {
11 
17  public:
18 
19  MIDummyKernel(boost::property_tree::ptree const& pt,
20  std::shared_ptr<AbstractSamplingProblem> problem,
21  std::shared_ptr<MCMCProposal> proposal,
22  std::shared_ptr<MCMCProposal> coarse_proposal,
23  std::shared_ptr<MIInterpolation> proposalInterpolation,
24  std::shared_ptr<SingleChainMCMC> coarse_chain);
25 
27 
28  virtual std::shared_ptr<MCMCProposal> Proposal(){return proposal;};
29 
30  virtual void PostStep(unsigned int const t, std::vector<std::shared_ptr<SamplingState>> const& state) override;
31 
32  virtual void PrintStatus(std::string prefix) const override;
33 
34  virtual std::vector<std::shared_ptr<SamplingState>> Step(unsigned int const t, std::shared_ptr<SamplingState> prevState) override;
35 
36  protected:
37  std::shared_ptr<MCMCProposal> proposal;
38  std::shared_ptr<MCMCProposal> coarse_proposal;
39  std::shared_ptr<MIInterpolation> proposalInterpolation;
40  std::shared_ptr<SingleChainMCMC> coarse_chain;
41 
42  unsigned int numCalls = 0;
43  };
44  } // namespace SamplingAlgorithms
45 } // namespace muq
46 
47 #endif
Dummy kernel for Multiindex MC methods.
Definition: MIDummyKernel.h:16
virtual std::vector< std::shared_ptr< SamplingState > > Step(unsigned int const t, std::shared_ptr< SamplingState > prevState) override
std::shared_ptr< MCMCProposal > proposal
Definition: MIDummyKernel.h:37
std::shared_ptr< MCMCProposal > coarse_proposal
Definition: MIDummyKernel.h:38
virtual std::shared_ptr< MCMCProposal > Proposal()
Definition: MIDummyKernel.h:28
virtual void PostStep(unsigned int const t, std::vector< std::shared_ptr< SamplingState >> const &state) override
Allow the kernel to adapt given a new state.
std::shared_ptr< MIInterpolation > proposalInterpolation
Definition: MIDummyKernel.h:39
MIDummyKernel(boost::property_tree::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > problem, std::shared_ptr< MCMCProposal > proposal, std::shared_ptr< MCMCProposal > coarse_proposal, std::shared_ptr< MIInterpolation > proposalInterpolation, std::shared_ptr< SingleChainMCMC > coarse_chain)
std::shared_ptr< SingleChainMCMC > coarse_chain
Definition: MIDummyKernel.h:40
Defines the transition kernel used by an MCMC algorithm.
std::shared_ptr< AbstractSamplingProblem > problem
The sampling problem that evaluates/samples the target distribution.