25 #ifndef UQ_TRANSITION_KERNEL_GROUP_H
26 #define UQ_TRANSITION_KERNEL_GROUP_H
28 #include <queso/VectorRV.h>
29 #include <queso/GaussianVectorRV.h>
30 #include <queso/ScalarFunctionSynchronizer.h>
49 template <
class V = GslVector,
class M = GslMatrix>
59 const VectorSpace<V,M>& vectorSpace,
60 const std::vector<double>& scales);
71 virtual const BaseVectorRV<V,M>&
rv (
unsigned int stageId )
const = 0;
74 virtual const BaseVectorRV<V,M>&
rv (
const std::vector<unsigned int>& stageIds) = 0;
77 virtual const BaseVectorRV<V, M> &
rv(
const V & position)
const = 0;
82 const BaseEnvironment&
env()
const;
124 virtual void print (std::ostream& os)
const;
133 std::vector<BaseVectorRV<V,M>* >
m_rvs;
139 #endif // UQ_TRANSITION_KERNEL_GROUP_H
const BaseEnvironment & env() const
QUESO's environment.
std::vector< const V * > m_preComputingPositions
A class representing a vector space.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
virtual void cleanCovMatrix()=0
std::vector< BaseVectorRV< V, M > * > m_rvs
const BaseEnvironment & m_env
virtual const BaseVectorRV< V, M > & rv(unsigned int stageId) const =0
Gaussian increment property to construct a transition kernel. See template specialization.
virtual void print(std::ostream &os) const
TODO: Prints the transition kernel.
virtual void clearPreComputingPositions()
Clears the pre-computing positions m_preComputingPositions[stageId].
This class sets up the environment underlying the use of the QUESO library by an executable.
virtual ~BaseTKGroup()
Destructor.
const EmptyEnvironment * m_emptyEnv
const V & preComputingPosition(unsigned int stageId) const
Pre-computing position; access to protected attribute *m_preComputingPositions[stageId].
virtual bool covMatrixIsDirty()=0
const VectorSpace< V, M > * m_vectorSpace
BaseTKGroup()
Default constructor.
std::vector< double > m_scales
virtual unsigned int set_dr_stage(unsigned int stageId)
Does nothing. Subclasses may re-implement. Returns the current stage id.
virtual bool symmetric() const =0
Whether or not the matrix is symmetric. See template specialization.
virtual bool setPreComputingPosition(const V &position, unsigned int stageId)
Sets the pre-computing positions m_preComputingPositions[stageId] with a new vector of size position...