MUQ  0.4.3
muq::Approximation::StateSpaceGP Class Reference

#include <StateSpaceGP.h>

Inheritance diagram for muq::Approximation::StateSpaceGP:

Detailed Description

Definition at line 21 of file StateSpaceGP.h.

Public Member Functions

 StateSpaceGP (MeanFunctionBase &meanIn, KernelBase &kernelIn, boost::property_tree::ptree options=boost::property_tree::ptree())
 
 StateSpaceGP (std::shared_ptr< MeanFunctionBase > meanIn, std::shared_ptr< KernelBase > covKernelIn, boost::property_tree::ptree options=boost::property_tree::ptree())
 
virtual ~StateSpaceGP ()=default
 
virtual Eigen::MatrixXd Sample (Eigen::MatrixXd const &times) override
 
virtual std::pair< Eigen::MatrixXd, Eigen::MatrixXd > Predict (Eigen::MatrixXd const &newLocs, CovarianceType covType) override
 
virtual Eigen::MatrixXd PredictMean (Eigen::MatrixXd const &newPts) override
 
virtual double LogLikelihood (Eigen::MatrixXd const &xs, Eigen::MatrixXd const &vals) override
 
virtual double MarginalLogLikelihood (Eigen::Ref< Eigen::VectorXd > grad, bool computeGrad=true) override
 
std::shared_ptr< muq::Modeling::LinearSDEGetSDE ()
 
std::shared_ptr< muq::Modeling::LinearOperatorGetObs ()
 
void SetObs (std::shared_ptr< muq::Modeling::LinearOperator > newObs)
 
Eigen::MatrixXd GetCov ()
 
- Public Member Functions inherited from muq::Approximation::GaussianProcess
 GaussianProcess (MeanFunctionBase &meanIn, KernelBase &kernelIn)
 
 GaussianProcess (std::shared_ptr< MeanFunctionBase > meanIn, std::shared_ptr< KernelBase > covKernelIn)
 
virtual ~GaussianProcess ()=default
 
virtual GaussianProcessCondition (Eigen::Ref< const Eigen::MatrixXd > const &loc, Eigen::Ref< const Eigen::MatrixXd > const &vals)
 
virtual GaussianProcessCondition (Eigen::Ref< const Eigen::MatrixXd > const &loc, Eigen::Ref< const Eigen::MatrixXd > const &vals, double obsVar)
 
virtual GaussianProcessCondition (std::shared_ptr< ObservationInformation > obs)
 
std::shared_ptr< muq::Modeling::GaussianDiscretize (Eigen::MatrixXd const &pts)
 
virtual void Optimize ()
 
virtual double MarginalLogLikelihood ()
 
virtual double MarginalLogLikelihood (Eigen::Ref< Eigen::VectorXd > grad)
 
std::shared_ptr< MeanFunctionBaseMean ()
 
std::shared_ptr< KernelBaseKernel ()
 

Public Attributes

const int stateDim
 

Additional Inherited Members

- Public Types inherited from muq::Approximation::GaussianProcess
enum  CovarianceType { DiagonalCov , BlockCov , FullCov , NoCov }
 

Constructor & Destructor Documentation

◆ StateSpaceGP() [1/3]

muq::Approximation::StateSpaceGP::StateSpaceGP ( MeanFunctionBase meanIn,
KernelBase kernelIn,
boost::property_tree::ptree  options = boost::property_tree::ptree() 
)
inline

Definition at line 25 of file StateSpaceGP.h.

◆ StateSpaceGP() [2/3]

StateSpaceGP::StateSpaceGP ( std::shared_ptr< MeanFunctionBase meanIn,
std::shared_ptr< KernelBase covKernelIn,
boost::property_tree::ptree  options = boost::property_tree::ptree() 
)

Definition at line 18 of file StateSpaceGP.cpp.

◆ ~StateSpaceGP()

virtual muq::Approximation::StateSpaceGP::~StateSpaceGP ( )
virtualdefault

◆ StateSpaceGP() [3/3]

StateSpaceGP::StateSpaceGP ( std::tuple< std::shared_ptr< muq::Modeling::LinearSDE >, std::shared_ptr< muq::Modeling::LinearOperator >, Eigen::MatrixXd >  ssInfo,
std::shared_ptr< MeanFunctionBase meanIn,
std::shared_ptr< KernelBase covKernelIn 
)
private

Definition at line 27 of file StateSpaceGP.cpp.

Member Function Documentation

◆ ComputeAQ()

bool StateSpaceGP::ComputeAQ ( double  dt)
private

Definition at line 82 of file StateSpaceGP.cpp.

References dtAQ, sde, sdeA, and sdeQ.

Referenced by Predict().

◆ GetCov()

Eigen::MatrixXd muq::Approximation::StateSpaceGP::GetCov ( )
inline

Definition at line 57 of file StateSpaceGP.h.

References L.

◆ GetObs()

std::shared_ptr<muq::Modeling::LinearOperator> muq::Approximation::StateSpaceGP::GetObs ( )
inline

Definition at line 53 of file StateSpaceGP.h.

References obsOp.

◆ GetSDE()

std::shared_ptr<muq::Modeling::LinearSDE> muq::Approximation::StateSpaceGP::GetSDE ( )
inline

Definition at line 51 of file StateSpaceGP.h.

References sde.

◆ LogLikelihood()

double StateSpaceGP::LogLikelihood ( Eigen::MatrixXd const &  xs,
Eigen::MatrixXd const &  vals 
)
overridevirtual

Reimplemented from muq::Approximation::GaussianProcess.

Definition at line 286 of file StateSpaceGP.cpp.

◆ MarginalLogLikelihood()

double StateSpaceGP::MarginalLogLikelihood ( Eigen::Ref< Eigen::VectorXd >  grad,
bool  computeGrad = true 
)
overridevirtual

Reimplemented from muq::Approximation::GaussianProcess.

Definition at line 292 of file StateSpaceGP.cpp.

◆ Predict()

std::pair< Eigen::MatrixXd, Eigen::MatrixXd > StateSpaceGP::Predict ( Eigen::MatrixXd const &  newLocs,
CovarianceType  covType 
)
overridevirtual

◆ PredictMean()

Eigen::MatrixXd StateSpaceGP::PredictMean ( Eigen::MatrixXd const &  newPts)
overridevirtual

Evaluate the GP mean at the locations in newPts

Reimplemented from muq::Approximation::GaussianProcess.

Definition at line 77 of file StateSpaceGP.cpp.

References muq::Approximation::GaussianProcess::NoCov, and Predict().

◆ Sample()

Eigen::MatrixXd StateSpaceGP::Sample ( Eigen::MatrixXd const &  newPts)
overridevirtual

Draw a random sample from the GP at the specified points.

Reimplemented from muq::Approximation::GaussianProcess.

Definition at line 48 of file StateSpaceGP.cpp.

References L, muq::Approximation::GaussianProcess::observations, obsOp, and sde.

◆ SetObs()

void StateSpaceGP::SetObs ( std::shared_ptr< muq::Modeling::LinearOperator newObs)

Definition at line 302 of file StateSpaceGP.cpp.

References obsOp, and nlohmann::to_string().

◆ SortObservations()

void StateSpaceGP::SortObservations ( )
private

Member Data Documentation

◆ covKernel

std::shared_ptr<KernelBase> muq::Approximation::StateSpaceGP::covKernel
private

Definition at line 88 of file StateSpaceGP.h.

◆ dtAQ

double muq::Approximation::StateSpaceGP::dtAQ
private

Definition at line 76 of file StateSpaceGP.h.

Referenced by ComputeAQ().

◆ L

Eigen::MatrixXd muq::Approximation::StateSpaceGP::L
private

Definition at line 85 of file StateSpaceGP.h.

Referenced by GetCov(), Predict(), and Sample().

◆ mean

std::shared_ptr<MeanFunctionBase> muq::Approximation::StateSpaceGP::mean
private

Definition at line 87 of file StateSpaceGP.h.

Referenced by Predict().

◆ obsOp

std::shared_ptr<muq::Modeling::LinearOperator> muq::Approximation::StateSpaceGP::obsOp
private

Definition at line 82 of file StateSpaceGP.h.

Referenced by GetObs(), Predict(), Sample(), and SetObs().

◆ sde

std::shared_ptr<muq::Modeling::LinearSDE> muq::Approximation::StateSpaceGP::sde
private

Definition at line 79 of file StateSpaceGP.h.

Referenced by ComputeAQ(), GetSDE(), and Sample().

◆ sdeA

Eigen::MatrixXd muq::Approximation::StateSpaceGP::sdeA
private

Definition at line 75 of file StateSpaceGP.h.

Referenced by ComputeAQ(), and Predict().

◆ sdeQ

Eigen::MatrixXd muq::Approximation::StateSpaceGP::sdeQ
private

Definition at line 75 of file StateSpaceGP.h.

Referenced by ComputeAQ(), and Predict().

◆ stateDim

const int muq::Approximation::StateSpaceGP::stateDim

Definition at line 61 of file StateSpaceGP.h.

Referenced by Predict().


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