MUQ  0.4.3
muq::Approximation::KarhunenLoeveBase Class Referenceabstract

#include <KarhunenLoeveBase.h>

Inheritance diagram for muq::Approximation::KarhunenLoeveBase:

Detailed Description

Definition at line 10 of file KarhunenLoeveBase.h.

Public Member Functions

virtual ~KarhunenLoeveBase ()=default
 
virtual Eigen::MatrixXd GetModes (Eigen::Ref< const Eigen::MatrixXd > const &pts) const =0
 
virtual Eigen::VectorXd Evaluate (Eigen::Ref< const Eigen::MatrixXd > const &pts, Eigen::Ref< const Eigen::VectorXd > const &coeffs) const
 Evaluate the KL expansion at a new pt given known coefficients. More...
 
virtual unsigned int NumModes () const =0
 

Constructor & Destructor Documentation

◆ ~KarhunenLoeveBase()

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

Member Function Documentation

◆ Evaluate()

virtual Eigen::VectorXd muq::Approximation::KarhunenLoeveBase::Evaluate ( Eigen::Ref< const Eigen::MatrixXd > const &  pts,
Eigen::Ref< const Eigen::VectorXd > const &  coeffs 
) const
inlinevirtual

Evaluate the KL expansion at a new pt given known coefficients.

Recall that a truncated KL expansion of a random process \(u(x,\omega)\) takes the form

\[ u(x,\omega) = \sum_{k=1}^N \phi_k(x) z_k(\omega), \]

where \(\phi_k(x)\) is the \(k^{th}\) KL mode and each \(z_k(\omega)\) is an independent standard normal random variable. This function evaluates the expansion given a point \(x\) and a vector containing each \(z_k\). Thus, by fixing the coefficient vector \(z_k\), it is possible to evaluate the sample of the Gaussian process at many different points.

Parameters
[in]ptThe point \(x\) that where you want to evaluate the KL expansion.
[in]coeffsThe coefficients in the expansion. The coefficients should be drawn as iid standard normal random variables to generate a sample of the Gaussian process.

Definition at line 27 of file KarhunenLoeveBase.h.

References GetModes().

◆ GetModes()

virtual Eigen::MatrixXd muq::Approximation::KarhunenLoeveBase::GetModes ( Eigen::Ref< const Eigen::MatrixXd > const &  pts) const
pure virtual

◆ NumModes()

virtual unsigned int muq::Approximation::KarhunenLoeveBase::NumModes ( ) const
pure virtual

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