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
Class to accommodate arrays of one-dimensional grid.
bool m_seedWithMAPEstimator
const BaseEnvironment & m_env
VectorSet< P_V, P_M > * m_solutionDomain
const BaseScalarFunction< P_V, P_M > & m_likelihoodFunction
This class provides options for a Statistical Inverse Problem if no input file is available...
bool m_userDidNotProvideOptions
bool computeSolutionFlag() const
Whether or not compute the solution.
A templated class that represents a Metropolis-Hastings generator of samples.
const SipOptionsValues * m_optionsObj
void seedWithMAPEstimator()
Seeds the chain with the result of a deterministic optimisation.
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 GenericVectorRV< P_V, P_M > & postRv() const
Returns the Posterior RV; access to private attribute m_postrRv.
const BaseVectorRV< P_V, P_M > & m_priorRv
const MetropolisHastingsSG< P_V, P_M > & sequenceGenerator() const
Return the underlying MetropolisHastingSG object.
double logEvidence() const
Returns the logarithm value of the evidence. Related to ML.
ScalarSequence< double > * m_logTargetValues
BaseJointPdf< P_V, P_M > * m_solutionPdf
BaseVectorSequence< P_V, P_M > * m_chain
void solveWithBayesMetropolisHastings(const MhOptionsValues *alternativeOptionsValues, const P_V &initialValues, const P_M *initialProposalCovMatrix)
Solves the problem via Bayes formula and a Metropolis-Hastings algorithm.
BaseVectorMdf< P_V, P_M > * m_subSolutionMdf
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
void solveWithBayesMLSampling()
Solves with Bayes Multi-Level (ML) sampling.
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...
Class to accommodate arrays of one-dimensional tables.
MetropolisHastingsSG< P_V, P_M > * m_mhSeqGenerator
const ScalarSequence< double > & logTargetValues() const
Returns log target values; access to private attribute m_logTargetValues.
A templated class that represents a Multilevel generator of samples.
~StatisticalInverseProblem()
Destructor.
friend std::ostream & operator<<(std::ostream &os, const StatisticalInverseProblem< P_V, P_M > &obj)
void print(std::ostream &os) const
TODO: Prints the sequence.
BaseVectorCdf< P_V, P_M > * m_subSolutionCdf
ScalarSequence< double > * m_logLikelihoodValues
double meanLogLikelihood() const
Returns the mean of the logarithm value of the likelihood. Related to ML.
GenericVectorRV< P_V, P_M > & m_postRv
MLSampling< P_V, P_M > * m_mlSampler
const ScalarSequence< double > & logLikelihoodValues() const
Returns log likelihood values; access to private attribute m_logLikelihoodValues. ...
BaseVectorRealizer< P_V, P_M > * m_solutionRealizer
const BaseVectorRV< P_V, P_M > & priorRv() const
Returns the Prior RV; access to private attribute m_priorRv.
This templated class represents a Statistical Inverse Problem.