28 #include <boost/shared_ptr.hpp>
30 #include <queso/InfiniteDimensionalMeasureBase.h>
31 #include <queso/InfiniteDimensionalGaussian.h>
32 #include <queso/Environment.h>
33 #include <queso/FunctionBase.h>
34 #include <queso/OperatorBase.h>
const OperatorBase & precision
~InfiniteDimensionalGaussian()
Destructor.
const RngBase * rngObject() const
Access to the RNG object.
virtual double get_kl_coefficient(unsigned int i) const
Return coefficient i of the KL expansion of the current draw. Must be called after draw() ...
virtual unsigned int get_num_converged() const =0
Return the number of converged eigenpairs.
virtual boost::shared_ptr< FunctionBase > draw()
Draw from the measure, and then return a shared pointer to the draw.
Abstract base class for function objects.
Abstract base class for operator objects. Operators are assumed to be symmetric and positive-definite...
virtual boost::shared_ptr< FunctionBase > inverse_kl_transform(std::vector< double > &xi, double alpha) const =0
Given coefficients xi, computes the Karhunen-Loeve transform.
const FullEnvironment & env
std::vector< double > coeffs
virtual double get_eigenvalue(unsigned int i) const =0
Return eigenvalue i.
InfiniteDimensionalGaussian(const FullEnvironment &env, const FunctionBase &mean, const OperatorBase &precision, double alpha, double beta)
Construct a Gaussian with mean mean, precision operator precision. alpha controls regularity of draws...
This class sets up the full environment underlying the use of the QUESO library by an executable...
virtual double gaussianSample(double stdDev) const =0
Samples a value from a Gaussian distribution with standard deviation given by stdDev.
Abstract base class for infinite dimensional measures.