Abstract class for IMH MCMC proposal distributions. More...
Public Member Functions | |
IMHProposal (std::string pn) | |
virtual std::string | getName () const |
virtual cxsc::real | fillNodeProposalProbs (const size_t nLeaf, const size_t nCherry, RealVec &probs) const =0 |
virtual cxsc::real | getLogQRatioSplitProposal (const size_t leavesNow, const size_t cherriesNow, const size_t leavesProspective, const size_t cherriesProspective) const =0 |
virtual cxsc::real | getLogQRatioMergeProposal (const size_t leavesNow, const size_t cherriesNow, const size_t leavesProspective, const size_t cherriesProspective) const =0 |
Protected Attributes | |
std::string | proposalName |
Abstract class for IMH MCMC proposal distributions.
The proposal distribution function object cannot work directly or solely with the state of the node tree because the MCMC definition allows some leaf nodes to be excluded from those proposable for splitting. Hence the proposal distributions should be based on the splittable leaf and cherry nodes, not all the leaf and cherry nodes in the tree.