MUQ  0.4.3
muq::Modeling::PyGaussianBase Class Reference

#include <PyDistribution.h>

Inheritance diagram for muq::Modeling::PyGaussianBase:

Detailed Description

Definition at line 29 of file PyDistribution.h.

Public Member Functions

virtual ~PyGaussianBase ()=default
 
 GaussianBase (unsigned int dim)
 
 GaussianBase (unsigned int dim, Eigen::VectorXi const &hyperSizesIn)
 
 GaussianBase (Eigen::VectorXd const &meanIn)
 
 GaussianBase (Eigen::VectorXd const &meanIn, Eigen::VectorXi const &hyperSizesIn)
 
virtual Eigen::VectorXd SampleImpl (ref_vector< Eigen::VectorXd > const &inputs) override
 Sample the distribution. More...
 
- Public Member Functions inherited from muq::Modeling::GaussianBase
 GaussianBase (unsigned int dim)
 
 GaussianBase (unsigned int dim, Eigen::VectorXi const &hyperSizesIn)
 
 GaussianBase (Eigen::VectorXd const &meanIn)
 
 GaussianBase (Eigen::VectorXd const &meanIn, Eigen::VectorXi const &hyperSizesIn)
 
virtual ~GaussianBase ()=default
 
virtual unsigned int Dimension () const
 
virtual Eigen::MatrixXd ApplyCovariance (Eigen::Ref< const Eigen::MatrixXd > const &x) const =0
 
virtual Eigen::MatrixXd ApplyPrecision (Eigen::Ref< const Eigen::MatrixXd > const &x) const =0
 
virtual Eigen::MatrixXd ApplyCovSqrt (Eigen::Ref< const Eigen::MatrixXd > const &x) const =0
 
virtual Eigen::MatrixXd ApplyPrecSqrt (Eigen::Ref< const Eigen::MatrixXd > const &x) const =0
 
virtual Eigen::VectorXd const & GetMean () const
 
virtual void SetMean (Eigen::VectorXd const &newMu)
 
virtual double LogDeterminant () const
 
virtual void ResetHyperparameters (ref_vector< Eigen::VectorXd > const &params)
 
virtual Eigen::VectorXd GradLogDensityImpl (unsigned int wrt, ref_vector< Eigen::VectorXd > const &inputs) override
 
virtual Eigen::VectorXd ApplyLogDensityHessianImpl (unsigned int wrt1, unsigned int wrt2, ref_vector< Eigen::VectorXd > const &inputs, Eigen::VectorXd const &vec) override
 
- Public Member Functions inherited from muq::Modeling::Distribution
 Distribution (unsigned int varSizeIn, Eigen::VectorXi const &hyperSizesIn=Eigen::VectorXi())
 
virtual ~Distribution ()=default
 
virtual double LogDensity (ref_vector< Eigen::VectorXd > const &inputs)
 Evaluate the log-density. More...
 
virtual double LogDensity (std::vector< Eigen::VectorXd > const &inputs)
 
 VARIADIC_TO_REFVECTOR (LogDensity, Eigen::VectorXd, double)
 
virtual Eigen::VectorXd GradLogDensity (unsigned int wrt, std::vector< Eigen::VectorXd > const &inputs)
 
virtual Eigen::VectorXd GradLogDensity (unsigned int wrt, ref_vector< Eigen::VectorXd > const &inputs)
 
template<typename... Args>
Eigen::VectorXd GradLogDensity (unsigned int wrt, Args... args)
 
virtual Eigen::VectorXd ApplyLogDensityHessian (unsigned int const inWrt1, unsigned int const inWrt2, ref_vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &vec)
 
virtual Eigen::VectorXd ApplyLogDensityHessian (unsigned int const inWrt1, unsigned int const inWrt2, std::vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &vec)
 
Eigen::VectorXd Sample (ref_vector< Eigen::VectorXd > const &inputs)
 Sample the distribution. More...
 
Eigen::VectorXd Sample (std::vector< Eigen::VectorXd > const &inputs)
 
Eigen::VectorXd Sample ()
 Sample the distribution with no inputs. More...
 
 VARIADIC_TO_REFVECTOR (Sample, Eigen::VectorXd, Eigen::VectorXd)
 
std::shared_ptr< DensityAsDensity ()
 Returns a density built from this distribution. More...
 
std::shared_ptr< RandomVariableAsVariable ()
 Returns a random variable built from this distribution. More...
 

Additional Inherited Members

- Public Attributes inherited from muq::Modeling::Distribution
const unsigned int varSize
 
const Eigen::VectorXi hyperSizes
 

Constructor & Destructor Documentation

◆ ~PyGaussianBase()

virtual muq::Modeling::PyGaussianBase::~PyGaussianBase ( )
virtualdefault

Member Function Documentation

◆ GaussianBase() [1/4]

GaussianBase::GaussianBase

Construct a Gaussian with no hyperparameter inputs and a specified mean vector.

Parameters
[in]meanInA vector containing the mean of the Gaussian distribution.

Definition at line 36 of file GaussianBase.cpp.

◆ GaussianBase() [2/4]

GaussianBase::GaussianBase

Construct a Gaussian with hyperparameters and a specified mean vector.

Parameters
[in]meanInA vector containing the mean of the Gaussian distribution.
[in]hyperSizesInA vector of integers specify the size of any additional inputs (e.g., mean, standard deviation).

Definition at line 44 of file GaussianBase.cpp.

◆ GaussianBase() [3/4]

GaussianBase::GaussianBase

Basic constructor for Gaussians with not additional hyperparameters.

Parameters
[in]dimThe dimension of the Gaussian distribution.

Definition at line 21 of file GaussianBase.cpp.

◆ GaussianBase() [4/4]

GaussianBase::GaussianBase

Basic constructor for Gaussians with hyperparameter inputs.

Parameters
[in]dimThe dimension of the Gaussian distribution
[in]hyperSizesInA vector of integers specify the size of any additional inputs (e.g., mean, standard deviation).

Definition at line 28 of file GaussianBase.cpp.

◆ SampleImpl()

Eigen::VectorXd GaussianBase::SampleImpl
override

Sample the distribution.

Definition at line 137 of file GaussianBase.cpp.


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