BayesianAnalysisToolkit
0.9.3
|
An engine class for Markov Chain Monte Carlo. More...
#include <BCEngineMCMC.h>
Classes | |
struct | MCMCThreadLocalStorage |
Public Types | |
Enumerators | |
enum | Precision { kLow, kMedium, kHigh, kVeryHigh } |
Public Member Functions | |
void | WriteMarkovChain (bool flag) |
Constructors and destructors | |
BCEngineMCMC () | |
BCEngineMCMC (const BCEngineMCMC &enginemcmc) | |
virtual | ~BCEngineMCMC () |
Assignment operators | |
BCEngineMCMC & | operator= (const BCEngineMCMC &engineMCMC) |
Getters | |
unsigned | MCMCGetNChains () const |
unsigned | MCMCGetNLag () const |
const std::vector< unsigned > & | MCMCGetNIterations () const |
unsigned | MCMCGetCurrentIteration () const |
unsigned | MCMCGetCurrentChain () const |
unsigned | MCMCGetNIterationsConvergenceGlobal () const |
bool | MCMCGetFlagConvergenceGlobal () const |
unsigned | MCMCGetNIterationsMax () const |
unsigned | MCMCGetNIterationsRun () const |
unsigned | MCMCGetNIterationsPreRunMin () const |
unsigned | MCMCGetNIterationsUpdate () const |
unsigned | MCMCGetNIterationsUpdateMax () const |
std::vector< int > | MCMCGetNTrialsTrue () const |
int | MCMCGetNTrials () const |
const std::vector< double > & | MCMCGetprobMean () const |
const std::vector< double > & | MCMCGetVariance () const |
const std::vector< double > & | MCMCGetTrialFunctionScaleFactor () const |
std::vector< double > | MCMCGetTrialFunctionScaleFactor (unsigned ichain) const |
double | MCMCGetTrialFunctionScaleFactor (unsigned ichain, unsigned ipar) |
const std::vector< double > & | MCMCGetx () const |
std::vector< double > | MCMCGetx (unsigned ichain) |
double | MCMCGetx (unsigned ichain, unsigned ipar) const |
const std::vector< double > & | MCMCGetLogProbx () const |
double | MCMCGetLogProbx (unsigned ichain) |
int | MCMCGetPhase () const |
const std::vector< double > & | MCMCGetMaximumPoints () const |
std::vector< double > | MCMCGetMaximumPoint (unsigned i) const |
const std::vector< double > & | MCMCGetMaximumLogProb () const |
int | MCMCGetFlagInitialPosition () const |
double | MCMCGetRValueCriterion () const |
double | MCMCGetRValueParametersCriterion () const |
double | MCMCGetRValue () const |
double | MCMCGetRValueParameters (unsigned i) |
bool | MCMCGetRValueStrict () const |
bool | MCMCGetFlagRun () const |
TTree * | MCMCGetMarkovChainTree (unsigned i) |
BCH1D * | MCMCGetH1Marginalized (unsigned i) |
BCH2D * | MCMCGetH2Marginalized (unsigned i, unsigned j) |
BCParameter * | GetParameter (int index) const |
BCParameter * | GetParameter (const char *name) const |
unsigned int | GetNParameters () const |
unsigned int | GetNFixedParameters () |
unsigned int | GetNFreeParameters () |
const std::vector< double > & | GetBestFitParametersMarginalized () const |
Setters | |
void | MCMCSetTrialFunctionScaleFactor (std::vector< double > scale) |
void | MCMCSetNChains (unsigned n) |
void | MCMCSetNLag (unsigned n) |
void | MCMCSetNIterationsMax (unsigned n) |
void | MCMCSetNIterationsRun (unsigned n) |
void | MCMCSetNIterationsPreRunMin (unsigned n) |
void | MCMCSetNIterationsUpdate (unsigned n) |
void | MCMCSetNIterationsUpdateMax (unsigned n) |
void | MCMCSetMinimumEfficiency (double efficiency) |
void | MCMCSetMaximumEfficiency (double efficiency) |
void | MCMCSetRandomSeed (unsigned seed) |
void | MCMCSetWriteChainToFile (bool flag) |
void | MCMCSetWritePreRunToFile (bool flag) |
void | MCMCSetInitialPositions (const std::vector< double > &x0s) |
void | MCMCSetInitialPositions (std::vector< std::vector< double > > x0s) |
void | MCMCSetFlagInitialPosition (int flag) |
void | MCMCSetFlagOrderParameters (bool flag) |
void | MCMCSetFlagFillHistograms (bool flag) |
void | MCMCSetFlagPreRun (bool flag) |
void | MCMCSetRValueCriterion (double r) |
void | MCMCSetRValueParametersCriterion (double r) |
void | MCMCSetRValueStrict (bool strict=true) |
void | MCMCSetMarkovChainTrees (const std::vector< TTree * > &trees) |
void | MCMCInitializeMarkovChainTrees () |
int | SetMarginalized (unsigned index, TH1D *h) |
int | SetMarginalized (unsigned index1, unsigned index2, TH2D *h) |
void | MCMCSetValuesDefault () |
void | MCMCSetValuesQuick () |
void | MCMCSetValuesDetail () |
void | MCMCSetPrecision (BCEngineMCMC::Precision precision) |
void | SetNbins (unsigned int nbins) |
Miscellaneous methods | |
void | Copy (const BCEngineMCMC &enginemcmc) |
virtual int | AddParameter (const char *name, double min, double max, const char *latexname="") |
virtual int | AddParameter (BCParameter *parameter) |
virtual void | MCMCTrialFunction (unsigned ichain, std::vector< double > &x) |
virtual double | MCMCTrialFunctionSingle (unsigned ichain, unsigned ipar) |
bool | MCMCGetProposalPointMetropolis (unsigned chain, std::vector< double > &x) |
bool | MCMCGetProposalPointMetropolis (unsigned chain, unsigned parameter, std::vector< double > &x) |
bool | MCMCGetNewPointMetropolis (unsigned chain=0) |
bool | MCMCGetNewPointMetropolis (unsigned chain, unsigned parameter) |
void | MCMCInChainCheckMaximum () |
void | MCMCInChainUpdateStatistics () |
void | MCMCInChainFillHistograms () |
void | MCMCInChainTestConvergenceAllChains () |
void | MCMCInChainWriteChains () |
virtual double | LogEval (const std::vector< double > ¶meters) |
int | MCMCMetropolis () |
int | MCMCMetropolisPreRun () |
void | MCMCResetRunStatistics () |
void | MCMCInitializeMarkovChains () |
int | MCMCInitialize () |
virtual void | ResetResults () |
void | ClearParameters (bool hard=false) |
virtual void | MCMCIterationInterface () |
virtual void | MCMCUserIterationInterface () |
virtual void | MCMCCurrentPointInterface (std::vector< double > &, int, bool) |
Private Types | |
typedef bool(BCEngineMCMC::* | MCMCPointerToGetProposalPoint )(int chain, std::vector< double > xnew, std::vector< double > xold) const |
Private Member Functions | |
void | SyncThreadStorage () |
Private Attributes | |
MCMCPointerToGetProposalPoint | fMCMCPointerToGetProposalPoint |
std::vector < MCMCThreadLocalStorage > | fMCMCThreadLocalStorage |
bool | fFlagMarginalized |
An engine class for Markov Chain Monte Carlo.
Definition at line 41 of file BCEngineMCMC.h.
|
private |
Defines a type of a pointer to a member function.
Definition at line 667 of file BCEngineMCMC.h.
BCEngineMCMC::BCEngineMCMC | ( | ) |
BCEngineMCMC::BCEngineMCMC | ( | const BCEngineMCMC & | enginemcmc) |
Default copy constructor.
Definition at line 174 of file BCEngineMCMC.cxx.
|
virtual |
|
virtual |
Adds a parameter.
min | minimum value of the parameter |
max | maximum value of the parameter |
latexname | Optional latexname used for plotting |
Definition at line 1489 of file BCEngineMCMC.cxx.
|
virtual |
Adds a parameter to the model.
parameter | A model parameter |
Reimplemented in BCModel.
Definition at line 1499 of file BCEngineMCMC.cxx.
|
inline |
Empty the sequence of parameters.
hard | Delete the parameters. |
Definition at line 632 of file BCEngineMCMC.h.
void BCEngineMCMC::Copy | ( | const BCEngineMCMC & | enginemcmc) |
Copy object
enginemcmc | Object to copy from |
Definition at line 180 of file BCEngineMCMC.cxx.
const std::vector< double > & BCEngineMCMC::GetBestFitParametersMarginalized | ( | ) | const |
Returns the set of values of the parameters at the modes of the marginalized posterior pdfs.
Definition at line 352 of file BCEngineMCMC.cxx.
unsigned int BCEngineMCMC::GetNFixedParameters | ( | ) |
unsigned int BCEngineMCMC::GetNFreeParameters | ( | ) |
Definition at line 264 of file BCEngineMCMC.cxx.
|
inline |
|
inline |
index | The index of the parameter in the parameter set. |
Definition at line 286 of file BCEngineMCMC.h.
|
inline |
name | The name of the parameter in the parameter set. |
Definition at line 292 of file BCEngineMCMC.h.
|
virtual |
Needs to be overloaded in the derived class.
Reimplemented in BCIntegrate, and BCModel.
Definition at line 880 of file BCEngineMCMC.cxx.
|
inlinevirtual |
Interface allowing to execute arbitrary code for each new point of the MCMC. This method needs to be overloaded in the derived class
point | point that was generated and checked |
ichain | index of the chain |
accepted | flag whether or not the point was accepted for the chain |
Definition at line 657 of file BCEngineMCMC.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
BCH1D * BCEngineMCMC::MCMCGetH1Marginalized | ( | unsigned | i) |
Retrieve a histogram of the 1D marginalized distribution of a single parameter.
i | index of the parameter |
Definition at line 289 of file BCEngineMCMC.cxx.
BCH2D * BCEngineMCMC::MCMCGetH2Marginalized | ( | unsigned | i, |
unsigned | j | ||
) |
Retrieve a histogram of the 2D marginalized distribution for two parameters.
i | index of the first parameter |
j | index of the second parameter |
Definition at line 314 of file BCEngineMCMC.cxx.
|
inline |
Definition at line 197 of file BCEngineMCMC.h.
double BCEngineMCMC::MCMCGetLogProbx | ( | unsigned | ichain) |
ichain | chain index |
Definition at line 568 of file BCEngineMCMC.cxx.
|
inline |
Retrieve the tree containing the Markov chain.
i | index of the Markov chain |
Definition at line 264 of file BCEngineMCMC.h.
|
inline |
Definition at line 222 of file BCEngineMCMC.h.
std::vector< double > BCEngineMCMC::MCMCGetMaximumPoint | ( | unsigned | i) | const |
i | The index of the Markov chain |
Definition at line 361 of file BCEngineMCMC.cxx.
|
inline |
|
inline |
bool BCEngineMCMC::MCMCGetNewPointMetropolis | ( | unsigned | chain = 0 ) |
Generates a new point using the Metropolis algorithm.
chain | chain index |
Definition at line 691 of file BCEngineMCMC.cxx.
bool BCEngineMCMC::MCMCGetNewPointMetropolis | ( | unsigned | chain, |
unsigned | parameter | ||
) |
Definition at line 629 of file BCEngineMCMC.cxx.
|
inline |
|
inline |
Definition at line 108 of file BCEngineMCMC.h.
|
inline |
Definition at line 118 of file BCEngineMCMC.h.
|
inline |
Definition at line 128 of file BCEngineMCMC.h.
|
inline |
|
inline |
|
inline |
Definition at line 138 of file BCEngineMCMC.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 154 of file BCEngineMCMC.h.
bool BCEngineMCMC::MCMCGetProposalPointMetropolis | ( | unsigned | chain, |
std::vector< double > & | x | ||
) |
Returns a trial point for the Metropolis algorithm.
chain | chain index |
x | proposal point |
Definition at line 579 of file BCEngineMCMC.cxx.
bool BCEngineMCMC::MCMCGetProposalPointMetropolis | ( | unsigned | chain, |
unsigned | parameter, | ||
std::vector< double > & | x | ||
) |
Returns a trial point for the Metropolis algorithm.
chain | chain index |
x | proposal point |
Definition at line 602 of file BCEngineMCMC.cxx.
|
inline |
|
inline |
|
inline |
i | parameter index |
Definition at line 248 of file BCEngineMCMC.h.
|
inline |
|
inline |
|
inline |
std::vector< double > BCEngineMCMC::MCMCGetTrialFunctionScaleFactor | ( | unsigned | ichain) | const |
ichain | chain index |
Definition at line 504 of file BCEngineMCMC.cxx.
double BCEngineMCMC::MCMCGetTrialFunctionScaleFactor | ( | unsigned | ichain, |
unsigned | ipar | ||
) |
ichain | chain index |
ipar | parameter index |
Definition at line 521 of file BCEngineMCMC.cxx.
|
inline |
Definition at line 160 of file BCEngineMCMC.h.
|
inline |
std::vector< double > BCEngineMCMC::MCMCGetx | ( | unsigned | ichain) |
ichain | index of the Markov chain |
Definition at line 536 of file BCEngineMCMC.cxx.
double BCEngineMCMC::MCMCGetx | ( | unsigned | ichain, |
unsigned | ipar | ||
) | const |
ichain | chain index |
ipar | parameter index |
Definition at line 553 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCInChainCheckMaximum | ( | ) |
void BCEngineMCMC::MCMCInChainFillHistograms | ( | ) |
Updates statistics: fill marginalized distributions
Definition at line 804 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCInChainTestConvergenceAllChains | ( | ) |
Updates statistics: check convergence
Definition at line 828 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCInChainUpdateStatistics | ( | ) |
Updates statistics:
Definition at line 774 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCInChainWriteChains | ( | ) |
int BCEngineMCMC::MCMCInitialize | ( | ) |
Initializes the engine.
Definition at line 1563 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCInitializeMarkovChains | ( | ) |
void BCEngineMCMC::MCMCInitializeMarkovChainTrees | ( | ) |
|
virtual |
Interface allowing to execute arbitrary code for each iteration of the MCMC. The frequency of calling this method is influenced by the setup of the Lag and whether or not the MCMC is run with ordered parameters. This method needs to be overloaded in the derived class.
Reimplemented in BCFitter, and BCRooInterface.
Definition at line 1704 of file BCEngineMCMC.cxx.
int BCEngineMCMC::MCMCMetropolis | ( | ) |
Runs Metropolis algorithm.
Definition at line 1293 of file BCEngineMCMC.cxx.
int BCEngineMCMC::MCMCMetropolisPreRun | ( | ) |
Runs a pre run for the Metropolis algorithm.
Definition at line 888 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCResetRunStatistics | ( | ) |
void BCEngineMCMC::MCMCSetFlagFillHistograms | ( | bool | flag) |
Sets the flag for all parameters to either fill histograms or not.
Definition at line 417 of file BCEngineMCMC.cxx.
|
inline |
|
inline |
Sets the flag which controls the sequence parameters during the running of the MCMC.
Definition at line 405 of file BCEngineMCMC.h.
|
inline |
Sets the flag if a prerun should be performed or not.
Definition at line 412 of file BCEngineMCMC.h.
void BCEngineMCMC::MCMCSetInitialPositions | ( | const std::vector< double > & | x0s) |
Sets the initial positions for all chains.
x0s | initial positions for all chains. |
Definition at line 387 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCSetInitialPositions | ( | std::vector< std::vector< double > > | x0s) |
Sets the initial positions for all chains.
x0s | initial positions for all chains. |
Definition at line 403 of file BCEngineMCMC.cxx.
void BCEngineMCMC::MCMCSetMarkovChainTrees | ( | const std::vector< TTree * > & | trees) |
|
inline |
|
inline |
void BCEngineMCMC::MCMCSetNChains | ( | unsigned | n) |
Sets the number of Markov chains which are run in parallel.
Definition at line 378 of file BCEngineMCMC.cxx.
|
inline |
Sets the maximum number of iterations in the pre-run.
Definition at line 335 of file BCEngineMCMC.h.
|
inline |
|
inline |
|
inline |
Sets the number of iterations in the pre-run after which an update on the statistics (convergence, efficiency, etc.) is done.
n | The number of iterations. |
Definition at line 352 of file BCEngineMCMC.h.
|
inline |
Sets the maximum number of iterations in the pre-run after which an update on the statistics (convergence, efficiency, etc.) is done. If set to 0 no maximum is set.
n | maximum number of iterations. |
Definition at line 360 of file BCEngineMCMC.h.
|
inline |
void BCEngineMCMC::MCMCSetPrecision | ( | BCEngineMCMC::Precision | precision) |
void BCEngineMCMC::MCMCSetRandomSeed | ( | unsigned | seed) |
|
inline |
Sets the R-value criterion for convergence of all chains.
Definition at line 417 of file BCEngineMCMC.h.
|
inline |
Sets the parameter R-value criterion for convergence of all chains
Definition at line 422 of file BCEngineMCMC.h.
|
inline |
|
inline |
Set the scale factors for the trial functions
scale | a vector of doubles containing the scale factors |
Definition at line 321 of file BCEngineMCMC.h.
void BCEngineMCMC::MCMCSetValuesDefault | ( | ) |
void BCEngineMCMC::MCMCSetValuesDetail | ( | ) |
void BCEngineMCMC::MCMCSetValuesQuick | ( | ) |
|
inline |
|
inline |
|
virtual |
Random walk trial function. The default trial function is a Breit-Wigner. It can be overloaded by the user to set the trial function.
ichain | the chain index |
x | point with the dimension fMCMCNParameters |
Definition at line 483 of file BCEngineMCMC.cxx.
|
virtual |
Random walk trial function. The default trial function is a Breit-Wigner. It can be overloaded by the user to set the trial function.
ichain | the chain index |
ipar | the parameter index |
Definition at line 491 of file BCEngineMCMC.cxx.
|
inlinevirtual |
Method executed for every iteration of the MCMC. User's code should be provided via overloading in the derived class
Reimplemented in BCMTF, BCGoFTest, and BCMVCDataModel.
Definition at line 646 of file BCEngineMCMC.h.
BCEngineMCMC & BCEngineMCMC::operator= | ( | const BCEngineMCMC & | engineMCMC) |
Defaut assignment operator
Definition at line 257 of file BCEngineMCMC.cxx.
|
virtual |
Reset the MCMC variables.
Reimplemented in BCIntegrate.
Definition at line 1522 of file BCEngineMCMC.cxx.
int BCEngineMCMC::SetMarginalized | ( | unsigned | index, |
TH1D * | h | ||
) |
Sets the histogram with 1D marginalized distributions for parameter.
i | index of the parameter |
h | pointer to an existing histogram |
Definition at line 1711 of file BCEngineMCMC.cxx.
int BCEngineMCMC::SetMarginalized | ( | unsigned | index1, |
unsigned | index2, | ||
TH2D * | h | ||
) |
Sets the histogram with 2D marginalized distributions for two parameters.
index1 | index of the first parameter |
index2 | index of the second parameter |
h | pointer to an existing histogram |
Definition at line 1728 of file BCEngineMCMC.cxx.
void BCEngineMCMC::SetNbins | ( | unsigned int | nbins) |
Set the number of bins for the marginalized distribution of all parameters
nbins | Number of bins |
Definition at line 282 of file BCEngineMCMC.cxx.
|
private |
Ensure that there are as many storages as chains
Definition at line 1791 of file BCEngineMCMC.cxx.
|
inline |
Flag for writing Markov chain to ROOT file (true) or not (false)
Definition at line 487 of file BCEngineMCMC.h.
|
private |
Definition at line 711 of file BCEngineMCMC.h.
|
protected |
A vector of best fit parameters estimated from the marginalized probability
Definition at line 926 of file BCEngineMCMC.h.
|
protected |
A vector of best fit parameters found by MCMC
Definition at line 918 of file BCEngineMCMC.h.
|
protected |
The current chain index. If not called within the running of the algorithm, return -1.
Definition at line 739 of file BCEngineMCMC.h.
|
protected |
The current iteration number. If not called within the running of the algorithm, return -1.
Definition at line 734 of file BCEngineMCMC.h.
|
protected |
The maximum allowed efficiency for MCMC
Definition at line 817 of file BCEngineMCMC.h.
|
protected |
The minimum required efficiency for MCMC
Definition at line 813 of file BCEngineMCMC.h.
|
protected |
Flag for convergence
Definition at line 756 of file BCEngineMCMC.h.
|
protected |
Variable which defines the initial position. 0 (default) center of the allowed region, (1) random initial position (2) pre-defined intial position.
Definition at line 823 of file BCEngineMCMC.h.
|
protected |
Flag which controls the sequence parameters during the running of the MCMC.
Definition at line 828 of file BCEngineMCMC.h.
|
protected |
Defines if a prerun should be performed or not
Definition at line 798 of file BCEngineMCMC.h.
|
protected |
Defines if MCMC has been performed or not
Definition at line 802 of file BCEngineMCMC.h.
|
protected |
Flag to write Markov chains to file
Definition at line 781 of file BCEngineMCMC.h.
|
protected |
Flag to write pre run to file
Definition at line 785 of file BCEngineMCMC.h.
|
protected |
An array of marginalized distributions
Definition at line 908 of file BCEngineMCMC.h.
|
protected |
Definition at line 909 of file BCEngineMCMC.h.
|
protected |
The intial position of each Markov chain. The length of the vectors is equal to fMCMCNChains * fMCMCNParameters. First, the values of the first Markov chain are saved, then those of the second and so on
Definition at line 809 of file BCEngineMCMC.h.
|
protected |
The function value at the mode on the log scale
Definition at line 922 of file BCEngineMCMC.h.
|
protected |
Number of Markov chains ran in parallel
Definition at line 720 of file BCEngineMCMC.h.
|
protected |
Number of total iterations of the Markov chains. The length of the vector is equal to fMCMCNChains.
Definition at line 729 of file BCEngineMCMC.h.
|
protected |
Number of iterations needed for all chains to convergence simultaneously
Definition at line 752 of file BCEngineMCMC.h.
|
protected |
Maximum number of iterations for a Markov chain prerun
Definition at line 760 of file BCEngineMCMC.h.
|
protected |
Minimum number of iterations for the pre-run
Definition at line 768 of file BCEngineMCMC.h.
|
protected |
Number of iterations for a Markov chain run
Definition at line 764 of file BCEngineMCMC.h.
|
protected |
Number of iterations for updating scale factors
Definition at line 743 of file BCEngineMCMC.h.
|
protected |
Maximum number of iterations for updating scale factors
Definition at line 747 of file BCEngineMCMC.h.
|
protected |
The lag for the Markov Chain
Definition at line 724 of file BCEngineMCMC.h.
|
protected |
Number of trials
Definition at line 777 of file BCEngineMCMC.h.
|
protected |
Number of accepted trials for each chain. The length of the vector is equal to fMCMCNChains * fMCMCNParameters.
Definition at line 773 of file BCEngineMCMC.h.
|
protected |
The phase of the run. 1: pre-run, 2: main run.
Definition at line 834 of file BCEngineMCMC.h.
|
private |
Pointer to a member function
Definition at line 671 of file BCEngineMCMC.h.
|
protected |
The log of the probability of the current points of each Markov chain. The length of the vectors is fMCMCNChains.
Definition at line 862 of file BCEngineMCMC.h.
|
protected |
The maximum (log) probability of each Markov chain. The length of the vector is fMCMCNChains.
Definition at line 867 of file BCEngineMCMC.h.
|
protected |
The mean of all log prob values of each Markov chain. The length of the vector is equal to fMCMCNChains.
Definition at line 872 of file BCEngineMCMC.h.
|
protected |
The variance of all log prob values of each Markov chain. The length of the vector is equal to fMCMCNChains.
Definition at line 877 of file BCEngineMCMC.h.
|
protected |
The R-value at which the chains did converge
Definition at line 897 of file BCEngineMCMC.h.
|
protected |
The R-value criterion for convergence of log-likelihood
Definition at line 889 of file BCEngineMCMC.h.
|
protected |
The R-values for each parameter
Definition at line 900 of file BCEngineMCMC.h.
|
protected |
The R-value criterion for convergence of parameters
Definition at line 893 of file BCEngineMCMC.h.
|
protected |
flag: use exactly the R-value definition of Gelman/Rubin (R_strict) or a relaxed, simplified version (R_relax) [default]. Note that R_relax <= R_strict, and in some cases even R_relax < 1, but we always have R_strict >= 1.
Definition at line 885 of file BCEngineMCMC.h.
|
private |
Keep thread local variables private.
Definition at line 704 of file BCEngineMCMC.h.
|
protected |
The trees containing the Markov chains. The length of the vector is fMCMCNChains.
Definition at line 914 of file BCEngineMCMC.h.
|
protected |
Scales the width of the trial functions by a scale factor for each parameter and chain
Definition at line 790 of file BCEngineMCMC.h.
|
protected |
Start values of the scale factors for the trial functions.
Definition at line 794 of file BCEngineMCMC.h.
|
protected |
The current points of each Markov chain. The length of the vectors is equal to fMCMCNChains * fMCMCNParameters. First, the values of the first Markov chain are saved, then those of the second and so on.
Definition at line 841 of file BCEngineMCMC.h.
|
protected |
The maximum points of each Markov chain. The length of the vector is fMCMCNChains * fMCMCNParameters. First, the values of the first Markov chain are saved, then those of the second and so on.
Definition at line 847 of file BCEngineMCMC.h.
|
protected |
The mean of all parameters of each Markov chain. The length of the vector is equal to fMCMCNChains * fMCMCNParameters.
Definition at line 852 of file BCEngineMCMC.h.
|
protected |
The variance of all parameters of each Markov chain. The length of the vector is equal to fMCMCNChains * fMCMCNParameters.
Definition at line 857 of file BCEngineMCMC.h.
|
protected |
Parameter settings
Definition at line 716 of file BCEngineMCMC.h.
|
protected |
Random number generator
Definition at line 904 of file BCEngineMCMC.h.