queso-0.57.1
|
This class allows the representation of a transition kernel with a scaled covariance matrix. More...
#include <ScaledCovMatrixTKGroup.h>
Public Member Functions | |
Constructor/Destructor methods | |
ScaledCovMatrixTKGroup (const char *prefix, const VectorSpace< V, M > &vectorSpace, const std::vector< double > &scales, const M &covMatrix) | |
Default constructor. More... | |
~ScaledCovMatrixTKGroup () | |
Destructor. More... | |
Statistical/Mathematical methods | |
bool | symmetric () const |
Whether or not the matrix is symmetric. Always 'true'. More... | |
const GaussianVectorRV< V, M > & | rv (unsigned int stageId) const |
Gaussian increment property to construct a transition kernel. More... | |
const GaussianVectorRV< V, M > & | rv (const std::vector< unsigned int > &stageIds) |
Gaussian increment property to construct a transition kernel. More... | |
virtual const GaussianVectorRV < V, M > & | rv (const V &position) const |
Constructs transition kernel pdf based on internal m_stageId variable. More... | |
void | updateLawCovMatrix (const M &covMatrix) |
Scales the covariance matrix. More... | |
Misc methods | |
bool | setPreComputingPosition (const V &position, unsigned int stageId) |
Sets the pre-computing positions m_preComputingPositions [stageId] with a new vector of size position . More... | |
void | clearPreComputingPositions () |
Clears the pre-computing positions m_preComputingPositions [stageId]. More... | |
virtual unsigned int | set_dr_stage (unsigned int stageId) |
Sets the internal m_stageId varialbe to stageId . More... | |
virtual bool | covMatrixIsDirty () |
virtual void | cleanCovMatrix () |
I/O methods | |
void | print (std::ostream &os) const |
TODO: Prints the transition kernel. More... | |
Public Member Functions inherited from QUESO::BaseTKGroup< V, M > | |
BaseTKGroup () | |
Default constructor. More... | |
BaseTKGroup (const char *prefix, const VectorSpace< V, M > &vectorSpace, const std::vector< double > &scales) | |
Constructor. More... | |
virtual | ~BaseTKGroup () |
Destructor. More... | |
const BaseEnvironment & | env () const |
QUESO's environment. More... | |
const V & | preComputingPosition (unsigned int stageId) const |
Pre-computing position; access to protected attribute *m_preComputingPositions[stageId]. More... | |
virtual void | updateTK () |
Private Member Functions | |
void | setRVsWithZeroMean () |
Sets the mean of the RVs to zero. More... | |
Private Attributes | |
M | m_originalCovMatrix |
Additional Inherited Members | |
Protected Attributes inherited from QUESO::BaseTKGroup< V, M > | |
const EmptyEnvironment * | m_emptyEnv |
const BaseEnvironment & | m_env |
std::string | m_prefix |
const VectorSpace< V, M > * | m_vectorSpace |
std::vector< double > | m_scales |
std::vector< const V * > | m_preComputingPositions |
std::vector< BaseVectorRV< V, M > * > | m_rvs |
unsigned int | m_stageId |
This class allows the representation of a transition kernel with a scaled covariance matrix.
Definition at line 44 of file ScaledCovMatrixTKGroup.h.
QUESO::ScaledCovMatrixTKGroup< V, M >::ScaledCovMatrixTKGroup | ( | const char * | prefix, |
const VectorSpace< V, M > & | vectorSpace, | ||
const std::vector< double > & | scales, | ||
const M & | covMatrix | ||
) |
Default constructor.
Definition at line 34 of file ScaledCovMatrixTKGroup.C.
References QUESO::BaseEnvironment::displayVerbosity(), QUESO::BaseTKGroup< V, M >::m_env, QUESO::ScaledCovMatrixTKGroup< V, M >::m_originalCovMatrix, QUESO::BaseTKGroup< V, M >::m_preComputingPositions, QUESO::BaseTKGroup< V, M >::m_rvs, QUESO::BaseTKGroup< V, M >::m_scales, QUESO::ScaledCovMatrixTKGroup< V, M >::setRVsWithZeroMean(), and QUESO::BaseEnvironment::subDisplayFile().
QUESO::ScaledCovMatrixTKGroup< V, M >::~ScaledCovMatrixTKGroup | ( | ) |
|
inlinevirtual |
Performs whatever cleanup is needed (usually just resetting an internal bool flag) after the covariance matrix was modified.
After this method is called, covMatrixIsDirty should return true
.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 88 of file ScaledCovMatrixTKGroup.h.
|
virtual |
Clears the pre-computing positions m_preComputingPositions
[stageId].
Reimplemented from QUESO::BaseTKGroup< V, M >.
Definition at line 214 of file ScaledCovMatrixTKGroup.C.
References QUESO::BaseTKGroup< V, M >::clearPreComputingPositions().
|
inlinevirtual |
This method determines whether or not the user has 'dirtied' the covariance matrix, thereby necessitating an AM reset.
Should return true if the cov matrix was modified in such a way to affect the Adaptive Metropolis sample covariance calculation.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 87 of file ScaledCovMatrixTKGroup.h.
|
virtual |
TODO: Prints the transition kernel.
Reimplemented from QUESO::BaseTKGroup< V, M >.
Definition at line 249 of file ScaledCovMatrixTKGroup.C.
References QUESO::BaseTKGroup< V, M >::print().
|
virtual |
Gaussian increment property to construct a transition kernel.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 79 of file ScaledCovMatrixTKGroup.C.
References QUESO::queso_require_not_equal_to_msg, and QUESO::GaussianVectorRV< V, M >::updateLawExpVector().
|
virtual |
Gaussian increment property to construct a transition kernel.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 107 of file ScaledCovMatrixTKGroup.C.
References QUESO::GaussianVectorRV< V, M >::updateLawExpVector().
|
virtual |
Constructs transition kernel pdf based on internal m_stageId
variable.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 136 of file ScaledCovMatrixTKGroup.C.
References QUESO::queso_require_not_equal_to_msg, and QUESO::GaussianVectorRV< V, M >::updateLawExpVector().
|
virtual |
Sets the internal m_stageId
varialbe to stageId
.
Reimplemented from QUESO::BaseTKGroup< V, M >.
Definition at line 221 of file ScaledCovMatrixTKGroup.C.
|
virtual |
Sets the pre-computing positions m_preComputingPositions
[stageId] with a new vector of size position
.
Reimplemented from QUESO::BaseTKGroup< V, M >.
Definition at line 175 of file ScaledCovMatrixTKGroup.C.
References QUESO::GaussianJointPdf< V, M >::lawCovMatrix(), and QUESO::BaseTKGroup< V, M >::setPreComputingPosition().
|
private |
Sets the mean of the RVs to zero.
Definition at line 231 of file ScaledCovMatrixTKGroup.C.
References QUESO::queso_require_equal_to_msg, and QUESO::queso_require_not_equal_to_msg.
Referenced by QUESO::ScaledCovMatrixTKGroup< V, M >::ScaledCovMatrixTKGroup().
|
virtual |
Whether or not the matrix is symmetric. Always 'true'.
Implements QUESO::BaseTKGroup< V, M >.
Definition at line 72 of file ScaledCovMatrixTKGroup.C.
void QUESO::ScaledCovMatrixTKGroup< V, M >::updateLawCovMatrix | ( | const M & | covMatrix | ) |
Scales the covariance matrix.
The covariance matrix is scaled by a factor of \( 1/scales^2 \).
Definition at line 153 of file ScaledCovMatrixTKGroup.C.
|
private |
Definition at line 107 of file ScaledCovMatrixTKGroup.h.
Referenced by QUESO::ScaledCovMatrixTKGroup< V, M >::ScaledCovMatrixTKGroup().