28 #include <queso/StatisticalInverseProblemOptions.h>
29 #include <queso/MetropolisHastingsSG.h>
30 #include <queso/MLSampling.h>
31 #include <queso/InstantiateIntersection.h>
32 #include <queso/VectorRealizer.h>
33 #include <queso/SequentialVectorRealizer.h>
34 #include <queso/VectorRV.h>
35 #include <queso/ScalarFunction.h>
36 #include <queso/GPMSA.h>
83 template <
class P_V = GslVector,
class P_M = GslMatrix>
159 const P_V& initialValues,
160 const P_M* initialProposalCovMatrix);
208 void print(std::ostream& os)
const;
238 #ifdef UQ_ALSO_COMPUTE_MDFS_WITHOUT_KDE
ScalarSequence< double > * m_logLikelihoodValues
MetropolisHastingsSG< P_V, P_M > * m_mhSeqGenerator
VectorSet< P_V, P_M > * m_solutionDomain
bool m_seedWithMAPEstimator
const BaseScalarFunction< P_V, P_M > & m_likelihoodFunction
Class to accommodate arrays of one-dimensional grid.
This class provides options for a Statistical Inverse Problem if no input file is available...
~StatisticalInverseProblem()
Destructor.
const GenericVectorRV< P_V, P_M > & postRv() const
Returns the Posterior RV; access to private attribute m_postrRv.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
double logEvidence() const
Returns the logarithm value of the evidence. Related to ML.
BaseVectorMdf< P_V, P_M > * m_subSolutionMdf
void solveWithBayesMLSampling()
Solves with Bayes Multi-Level (ML) sampling.
bool m_userDidNotProvideOptions
friend std::ostream & operator<<(std::ostream &os, const StatisticalInverseProblem< P_V, P_M > &obj)
BaseVectorRealizer< P_V, P_M > * m_solutionRealizer
MLSampling< P_V, P_M > * m_mlSampler
A templated class that represents a Metropolis-Hastings generator of samples.
double meanLogLikelihood() const
Returns the mean of the logarithm value of the likelihood. Related to ML.
ScalarSequence< double > * m_logTargetValues
const SipOptionsValues * m_optionsObj
void seedWithMAPEstimator()
Seeds the chain with the result of a deterministic optimisation.
GenericVectorRV< P_V, P_M > & m_postRv
BaseVectorSequence< P_V, P_M > * m_chain
This templated class represents a Statistical Inverse Problem.
bool computeSolutionFlag() const
Whether or not compute the solution.
void solveWithBayesMetropolisHastings(const MhOptionsValues *alternativeOptionsValues, const P_V &initialValues, const P_M *initialProposalCovMatrix)
Solves the problem via Bayes formula and a Metropolis-Hastings algorithm.
const BaseVectorRV< P_V, P_M > & priorRv() const
Returns the Prior RV; access to private attribute m_priorRv.
BaseVectorCdf< P_V, P_M > * m_subSolutionCdf
BaseJointPdf< P_V, P_M > * m_solutionPdf
const BaseVectorRV< P_V, P_M > & m_priorRv
StatisticalInverseProblem(const char *prefix, const SipOptionsValues *alternativeOptionsValues, const BaseVectorRV< P_V, P_M > &priorRv, const BaseScalarFunction< P_V, P_M > &likelihoodFunction, GenericVectorRV< P_V, P_M > &postRv)
Constructor.
const BaseVectorSequence< P_V, P_M > & chain() const
Returns the MCMC chain; access to private attribute m_chain.
This class provides options for the Metropolis-Hastings generator of samples if no input file is avai...
const ScalarSequence< double > & logTargetValues() const
Returns log target values; access to private attribute m_logTargetValues.
Class to accommodate arrays of one-dimensional tables.
A templated class that represents a Multilevel generator of samples.
const BaseEnvironment & m_env
void print(std::ostream &os) const
TODO: Prints the sequence.
const MetropolisHastingsSG< P_V, P_M > & sequenceGenerator() const
Return the underlying MetropolisHastingSG object.
const ScalarSequence< double > & logLikelihoodValues() const
Returns log likelihood values; access to private attribute m_logLikelihoodValues. ...