25 #ifndef UQ_INVLOGIT_GAUSSIAN_JOINT_PROB_DENSITY_H
26 #define UQ_INVLOGIT_GAUSSIAN_JOINT_PROB_DENSITY_H
28 #include <queso/JointPdf.h>
29 #include <queso/ScalarFunction.h>
30 #include <queso/BoxSubset.h>
57 template <
class V = GslVector,
class M = GslMatrix>
93 double actualValue(
const V & domainVector,
const V * domainDirection,
94 V * gradVector, M * hessianMatrix, V * hessianEffect)
const;
109 double lnValue(
const V & domainVector,
const V * domainDirection,
110 V * gradVector, M * hessianMatrix, V * hessianEffect)
const;
123 bool updateFactorInternally)
const;
155 virtual void print(std::ostream & os)
const;
173 #endif // UQ_INVLOGIT_GAUSSIAN_JOINT_PROB_DENSITY_H
A templated (base) class for handling scalar functions.
const M & lawCovMatrix() const
Returns the covariance matrix; access to protected attribute m_lawCovMatrix.
double lnValue(const V &domainVector, const V *domainDirection, V *gradVector, M *hessianMatrix, V *hessianEffect) const
Logarithm of the value of the (transformed) Gaussian PDF (scalar function).
double actualValue(const V &domainVector, const V *domainDirection, V *gradVector, M *hessianMatrix, V *hessianEffect) const
Actual value of the (transformed) Gaussian PDF.
const V & lawExpVector() const
Access to the vector of mean values of the Gaussian (not transformed) and private attribute: m_lawExp...
double computeLogOfNormalizationFactor(unsigned int numSamples, bool updateFactorInternally) const
Computes the logarithm of the normalization factor.
~InvLogitGaussianJointPdf()
Destructor.
virtual void distributionMean(V &meanVector) const
Mean value of the underlying random variable.
const BoxSubset< V, M > & m_domainBoxSubset
Class representing a subset of a vector space shaped like a hypercube.
A templated (base) class for handling joint PDFs.
void updateLawExpVector(const V &newLawExpVector)
Updates the mean of the Gaussian (not transformed) with the new value newLawExpVector.
A class for handling hybrid (transformed) Gaussians with bounds.
virtual void distributionVariance(M &covMatrix) const
Covariance matrix of the underlying random variable.
virtual void print(std::ostream &os) const
Prints the distribution.
void updateLawCovMatrix(const M &newLawCovMatrix)
Updates the lower triangular matrix from Cholesky decomposition of the covariance matrix to the new v...
InvLogitGaussianJointPdf(const char *prefix, const BoxSubset< V, M > &domainBoxSubset, const V &lawExpVector, const V &lawVarVector)
Constructor.
const V & lawVarVector() const
Access to the vector of variance values and private attribute: m_lawVarVector.