Proposal retrieving samples from other ranks. More...
#include <RemoteMIProposal.h>
Proposal retrieving samples from other ranks.
This is particularly relevant for parallel MIMCMC type methods. It allows drawing proposals from coarser chains being computed on other processes. Which process to draw a sample from is determined via phonebook.
Definition at line 28 of file RemoteMIProposal.h.
Public Member Functions | |
RemoteMIProposal (pt::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > prob, std::shared_ptr< parcer::Communicator > comm, std::shared_ptr< MultiIndex > remoteIndex, std::shared_ptr< MultiIndex > sourceIndex, std::shared_ptr< PhonebookClient > phonebookClient) | |
std::shared_ptr< SamplingState > | Sample (std::shared_ptr< SamplingState > const ¤tState) |
double | LogDensity (std::shared_ptr< SamplingState > const &currState, std::shared_ptr< SamplingState > const &propState) |
Public Member Functions inherited from muq::SamplingAlgorithms::MCMCProposal | |
MCMCProposal (boost::property_tree::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > const &probIn) | |
virtual | ~MCMCProposal ()=default |
virtual void | Adapt (unsigned int const t, std::vector< std::shared_ptr< SamplingState >> const &state) |
Adapt the proposal after each step. More... | |
void | SetCommunicator (std::shared_ptr< parcer::Communicator > newcomm) |
virtual void | SetBlockInd (int newBlockInd) |
virtual int | GetBlockInd () const |
Additional Inherited Members | |
Public Types inherited from muq::SamplingAlgorithms::MCMCProposal | |
typedef std::function< std::shared_ptr< MCMCProposal >boost::property_tree::ptree, std::shared_ptr< AbstractSamplingProblem >)> | MCMCProposalConstructor |
typedef std::map< std::string, MCMCProposalConstructor > | MCMCProposalMap |
Static Public Member Functions inherited from muq::SamplingAlgorithms::MCMCProposal | |
static std::shared_ptr< MCMCProposal > | Construct (boost::property_tree::ptree const &pt, std::shared_ptr< AbstractSamplingProblem > const &probIn) |
Static constructor for the transition kernel. More... | |
static std::shared_ptr< MCMCProposalMap > | GetMCMCProposalMap () |
|
inline |
Definition at line 30 of file RemoteMIProposal.h.
|
inlinevirtual |
Implements muq::SamplingAlgorithms::MCMCProposal.
Definition at line 57 of file RemoteMIProposal.h.
|
inlinevirtual |
Implements muq::SamplingAlgorithms::MCMCProposal.
Definition at line 40 of file RemoteMIProposal.h.
References comm, muq::SamplingAlgorithms::ControlTag, phonebookClient, remoteIndex, muq::SamplingAlgorithms::SAMPLE, and sourceIndex.
|
private |
Definition at line 66 of file RemoteMIProposal.h.
Referenced by Sample().
|
private |
Definition at line 69 of file RemoteMIProposal.h.
Referenced by Sample().
|
private |
Definition at line 67 of file RemoteMIProposal.h.
Referenced by Sample().
|
private |
Definition at line 63 of file RemoteMIProposal.h.
|
private |
Definition at line 64 of file RemoteMIProposal.h.
|
private |
Definition at line 68 of file RemoteMIProposal.h.
Referenced by Sample().