25 #ifndef UQ_SCALEDCOV_TRANSITION_KERNEL_GROUP_H
26 #define UQ_SCALEDCOV_TRANSITION_KERNEL_GROUP_H
28 #include <queso/TKGroup.h>
29 #include <queso/VectorRV.h>
30 #include <queso/ScalarFunctionSynchronizer.h>
43 template <
class V = GslVector,
class M = GslMatrix>
51 const std::vector<double>& scales,
95 void print (std::ostream& os)
const;
112 #endif // UQ_SCALEDCOV_TRANSITION_KERNEL_GROUP_H
virtual void cleanCovMatrix()
A class representing a vector space.
A class representing a Gaussian vector RV.
virtual unsigned int set_dr_stage(unsigned int stageId)
Sets the internal m_stageId varialbe to stageId.
virtual bool covMatrixIsDirty()
void clearPreComputingPositions()
Clears the pre-computing positions m_preComputingPositions[stageId].
const GaussianVectorRV< V, M > & rv(unsigned int stageId) const
Gaussian increment property to construct a transition kernel.
bool symmetric() const
Whether or not the matrix is symmetric. Always 'true'.
This base class allows the representation of a transition kernel.
bool setPreComputingPosition(const V &position, unsigned int stageId)
Sets the pre-computing positions m_preComputingPositions[stageId] with a new vector of size position...
ScaledCovMatrixTKGroup(const char *prefix, const VectorSpace< V, M > &vectorSpace, const std::vector< double > &scales, const M &covMatrix)
Default constructor.
void setRVsWithZeroMean()
Sets the mean of the RVs to zero.
void print(std::ostream &os) const
TODO: Prints the transition kernel.
This class allows the representation of a transition kernel with a scaled covariance matrix...
~ScaledCovMatrixTKGroup()
Destructor.
void updateLawCovMatrix(const M &covMatrix)
Scales the covariance matrix.