FV3 Bundle
oops::ModelSpaceCovarianceBase< MODEL > Class Template Referenceabstract

Abstract base class for model space error covariances. More...

#include <ModelSpaceCovarianceBase.h>

Inheritance diagram for oops::ModelSpaceCovarianceBase< MODEL >:
[legend]

Public Member Functions

 ModelSpaceCovarianceBase (const State_ &, const State_ &, const Geometry_ &, const eckit::Configuration &)
 
virtual ~ModelSpaceCovarianceBase ()
 
void multiply (const Increment_ &, Increment_ &) const
 
void inverseMultiply (const Increment_ &, Increment_ &) const
 
virtual void randomize (Increment_ &) const =0
 

Private Types

typedef Geometry< MODEL > Geometry_
 
typedef State< MODEL > State_
 
typedef Increment< MODEL > Increment_
 
typedef LinearVariableChangeBase< MODEL > LinearVariableChangeBase_
 
typedef boost::ptr_vector< LinearVariableChangeBase_ChvarVec_
 
typedef ChvarVec_::iterator iter_
 
typedef ChvarVec_::const_iterator icst_
 
typedef ChvarVec_::const_reverse_iterator ircst_
 

Private Member Functions

virtual void doMultiply (const Increment_ &, Increment_ &) const =0
 
virtual void doInverseMultiply (const Increment_ &, Increment_ &) const =0
 

Private Attributes

ChvarVec_ chvars_
 

Detailed Description

template<typename MODEL>
class oops::ModelSpaceCovarianceBase< MODEL >

Abstract base class for model space error covariances.

Definition at line 41 of file ModelSpaceCovarianceBase.h.

Member Typedef Documentation

◆ ChvarVec_

template<typename MODEL>
typedef boost::ptr_vector<LinearVariableChangeBase_> oops::ModelSpaceCovarianceBase< MODEL >::ChvarVec_
private

Definition at line 46 of file ModelSpaceCovarianceBase.h.

◆ Geometry_

template<typename MODEL>
typedef Geometry<MODEL> oops::ModelSpaceCovarianceBase< MODEL >::Geometry_
private

Definition at line 42 of file ModelSpaceCovarianceBase.h.

◆ icst_

template<typename MODEL>
typedef ChvarVec_::const_iterator oops::ModelSpaceCovarianceBase< MODEL >::icst_
private

Definition at line 48 of file ModelSpaceCovarianceBase.h.

◆ Increment_

template<typename MODEL>
typedef Increment<MODEL> oops::ModelSpaceCovarianceBase< MODEL >::Increment_
private

Definition at line 44 of file ModelSpaceCovarianceBase.h.

◆ ircst_

template<typename MODEL>
typedef ChvarVec_::const_reverse_iterator oops::ModelSpaceCovarianceBase< MODEL >::ircst_
private

Definition at line 49 of file ModelSpaceCovarianceBase.h.

◆ iter_

template<typename MODEL>
typedef ChvarVec_::iterator oops::ModelSpaceCovarianceBase< MODEL >::iter_
private

Definition at line 47 of file ModelSpaceCovarianceBase.h.

◆ LinearVariableChangeBase_

template<typename MODEL>
typedef LinearVariableChangeBase<MODEL> oops::ModelSpaceCovarianceBase< MODEL >::LinearVariableChangeBase_
private

Definition at line 45 of file ModelSpaceCovarianceBase.h.

◆ State_

template<typename MODEL>
typedef State<MODEL> oops::ModelSpaceCovarianceBase< MODEL >::State_
private

Definition at line 43 of file ModelSpaceCovarianceBase.h.

Constructor & Destructor Documentation

◆ ModelSpaceCovarianceBase()

template<typename MODEL >
oops::ModelSpaceCovarianceBase< MODEL >::ModelSpaceCovarianceBase ( const State_ bg,
const State_ fg,
const Geometry_ resol,
const eckit::Configuration &  conf 
)

Definition at line 149 of file ModelSpaceCovarianceBase.h.

◆ ~ModelSpaceCovarianceBase()

template<typename MODEL>
virtual oops::ModelSpaceCovarianceBase< MODEL >::~ModelSpaceCovarianceBase ( )
inlinevirtual

Definition at line 54 of file ModelSpaceCovarianceBase.h.

Member Function Documentation

◆ doInverseMultiply()

template<typename MODEL>
virtual void oops::ModelSpaceCovarianceBase< MODEL >::doInverseMultiply ( const Increment_ ,
Increment_  
) const
privatepure virtual

◆ doMultiply()

template<typename MODEL>
virtual void oops::ModelSpaceCovarianceBase< MODEL >::doMultiply ( const Increment_ ,
Increment_  
) const
privatepure virtual

◆ inverseMultiply()

template<typename MODEL >
void oops::ModelSpaceCovarianceBase< MODEL >::inverseMultiply ( const Increment_ dxi,
Increment_ dxo 
) const

Definition at line 192 of file ModelSpaceCovarianceBase.h.

◆ multiply()

template<typename MODEL >
void oops::ModelSpaceCovarianceBase< MODEL >::multiply ( const Increment_ dxi,
Increment_ dxo 
) const

Definition at line 164 of file ModelSpaceCovarianceBase.h.

◆ randomize()

template<typename MODEL>
virtual void oops::ModelSpaceCovarianceBase< MODEL >::randomize ( Increment_ ) const
pure virtual

Member Data Documentation

◆ chvars_

template<typename MODEL>
ChvarVec_ oops::ModelSpaceCovarianceBase< MODEL >::chvars_
private

Definition at line 68 of file ModelSpaceCovarianceBase.h.


The documentation for this class was generated from the following file: