MUQ  0.4.3
muq::SamplingAlgorithms::SamplingProblem Class Reference

Class for sampling problems based purely on a density function. More...

#include <SamplingProblem.h>

Inheritance diagram for muq::SamplingAlgorithms::SamplingProblem:

Detailed Description

Class for sampling problems based purely on a density function.

Definition at line 15 of file SamplingProblem.h.

Public Member Functions

 SamplingProblem (std::shared_ptr< muq::Modeling::ModPiece > const &targetIn)
 
 SamplingProblem (std::shared_ptr< muq::Modeling::ModPiece > const &targetIn, std::shared_ptr< muq::Modeling::ModPiece > const &qoiIn)
 
virtual ~SamplingProblem ()=default
 
virtual std::shared_ptr< AbstractSamplingProblemClone () const override
 
virtual double LogDensity (std::shared_ptr< SamplingState > const &state) override
 
virtual Eigen::VectorXd GradLogDensity (std::shared_ptr< SamplingState > const &state, unsigned const blockWrt) override
 
std::shared_ptr< muq::Modeling::ModPieceGetDistribution ()
 
virtual std::shared_ptr< SamplingStateQOI () override
 
- Public Member Functions inherited from muq::SamplingAlgorithms::AbstractSamplingProblem
 AbstractSamplingProblem (Eigen::VectorXi const &blockSizesIn, Eigen::VectorXi const &blockSizesQOIIn)
 
 AbstractSamplingProblem (Eigen::VectorXi const &blockSizesIn)
 
virtual ~AbstractSamplingProblem ()=default
 
virtual void AddOptions (boost::property_tree::ptree &pt) const
 

Additional Inherited Members

- Public Attributes inherited from muq::SamplingAlgorithms::AbstractSamplingProblem
const int numBlocks
 
const Eigen::VectorXi blockSizes
 
const int numBlocksQOI
 
const Eigen::VectorXi blockSizesQOI
 

Constructor & Destructor Documentation

◆ SamplingProblem() [1/2]

SamplingProblem::SamplingProblem ( std::shared_ptr< muq::Modeling::ModPiece > const &  targetIn)
Parameters
[in]targetThe target distribution

Definition at line 7 of file SamplingProblem.cpp.

◆ SamplingProblem() [2/2]

SamplingProblem::SamplingProblem ( std::shared_ptr< muq::Modeling::ModPiece > const &  targetIn,
std::shared_ptr< muq::Modeling::ModPiece > const &  qoiIn 
)
Parameters
[in]targetThe target distribution
[in]qoiQuantity of interest associated with model

Definition at line 11 of file SamplingProblem.cpp.

◆ ~SamplingProblem()

virtual muq::SamplingAlgorithms::SamplingProblem::~SamplingProblem ( )
virtualdefault

Member Function Documentation

◆ Clone()

virtual std::shared_ptr<AbstractSamplingProblem> muq::SamplingAlgorithms::SamplingProblem::Clone ( ) const
inlineoverridevirtual

Reimplemented from muq::SamplingAlgorithms::AbstractSamplingProblem.

Definition at line 32 of file SamplingProblem.h.

References qoi, and target.

◆ GetBlockSizes()

std::vector< int > SamplingProblem::GetBlockSizes ( std::shared_ptr< muq::Modeling::ModPiece > const &  target)
staticprivate

◆ GetDistribution()

std::shared_ptr<muq::Modeling::ModPiece> muq::SamplingAlgorithms::SamplingProblem::GetDistribution ( )
inline

Definition at line 39 of file SamplingProblem.h.

References target.

◆ GetNumBlocks()

static unsigned muq::SamplingAlgorithms::SamplingProblem::GetNumBlocks ( std::shared_ptr< muq::Modeling::ModPiece > const &  target)
staticprivate

◆ GradLogDensity()

Eigen::VectorXd SamplingProblem::GradLogDensity ( std::shared_ptr< SamplingState > const &  state,
unsigned const  blockWrt 
)
overridevirtual

Default finite difference gradient implementation.

Reimplemented from muq::SamplingAlgorithms::AbstractSamplingProblem.

Definition at line 34 of file SamplingProblem.cpp.

References target.

◆ LogDensity()

double SamplingProblem::LogDensity ( std::shared_ptr< SamplingState > const &  state)
overridevirtual

◆ QOI()

std::shared_ptr< SamplingState > SamplingProblem::QOI ( )
overridevirtual

Reimplemented from muq::SamplingAlgorithms::AbstractSamplingProblem.

Reimplemented in muq::SamplingAlgorithms::ExpensiveSamplingProblem.

Definition at line 25 of file SamplingProblem.cpp.

References lastState, qoi, and target.

Member Data Documentation

◆ lastState

std::shared_ptr<SamplingState> muq::SamplingAlgorithms::SamplingProblem::lastState
protected

◆ qoi

std::shared_ptr<muq::Modeling::ModPiece> muq::SamplingAlgorithms::SamplingProblem::qoi
protected

◆ target

std::shared_ptr<muq::Modeling::ModPiece> muq::SamplingAlgorithms::SamplingProblem::target
protected

The documentation for this class was generated from the following files: