25 #ifndef UQ_TRANSFORMED_SCALEDCOV_TK_GROUP_H
26 #define UQ_TRANSFORMED_SCALEDCOV_TK_GROUP_H
28 #include <queso/TKGroup.h>
29 #include <queso/VectorRV.h>
30 #include <queso/ScalarFunctionSynchronizer.h>
31 #include <queso/InvLogitGaussianVectorRV.h>
47 template <
class V = GslVector,
class M = GslMatrix>
71 const std::vector<unsigned int> & stageIds);
96 void print(std::ostream & os)
const;
103 V & transformedPoint)
const;
123 #endif // UQ_TRANSFORMED_SCALEDCOV_TK_GROUP_H
bool symmetric() const
Whether or not the matrix is symmetric. Always 'false'.
This base class allows the representation of a transition kernel.
~TransformedScaledCovMatrixTKGroup()
Destructor.
bool setPreComputingPosition(const V &position, unsigned int stageId)
Sets the pre-computing positions m_preComputingPositions[stageId] with a new vector of size position...
void print(std::ostream &os) const
TODO: Prints the transition kernel.
void setRVsWithZeroMean()
Sets the mean of the underlying Gaussian RVs to zero.
TransformedScaledCovMatrixTKGroup(const char *prefix, const BoxSubset< V, M > &boxSubset, const std::vector< double > &scales, const M &covMatrix)
Default constructor.
This class represents a transition kernel with a scaled covariance matrix on hybrid bounded/unbounded...
void updateLawCovMatrix(const M &covMatrix)
Scales the covariance matrix of the underlying Gaussian distribution.
Class representing a subset of a vector space shaped like a hypercube.
const InvLogitGaussianVectorRV< V, M > & rv(unsigned int stageId) const
InvLogitGaussian increment property to construct a transition kernel.
void clearPreComputingPositions()
Clears the pre-computing positions m_preComputingPositions[stageId].
void transformToGaussianSpace(const V &physicalPoint, V &transformedPoint) const
const BoxSubset< V, M > & m_boxSubset
A class representing a (transformed) Gaussian vector RV with bounds.