OOPS
oops::ObsErrorCovariance< OBS, OBSERR > Class Template Reference

Observation error covariance matrix. More...

#include <ObsErrorCovariance.h>

Inheritance diagram for oops::ObsErrorCovariance< OBS, OBSERR >:
Collaboration diagram for oops::ObsErrorCovariance< OBS, OBSERR >:

Public Member Functions

 ObsErrorCovariance (const eckit::Configuration &, const ObsSpace_ &, const Variables &)
 
 ~ObsErrorCovariance ()
 
void multiply (ObsVector_ &) const
 Multiply a Departure by \(R\) and \(R^{-1}\). More...
 
void inverseMultiply (ObsVector_ &) const
 Multiply a Departure dy by \(R^{-1}\). More...
 
void randomize (ObsVector_ &) const
 Generate random perturbation. More...
 
double getRMSE () const
 Get mean error for Jo table. More...
 
- Public Member Functions inherited from oops::ObsErrorBase< OBS >
 ObsErrorBase ()=default
 
virtual ~ObsErrorBase ()=default
 
virtual const ObsVector_inverseVariance () const =0
 Return inverseVariance. More...
 

Static Public Member Functions

static const std::string classname ()
 

Private Types

typedef ObsSpace< OBS > ObsSpace_
 
typedef ObsVector< OBS > ObsVector_
 

Private Member Functions

void print (std::ostream &) const
 

Private Attributes

std::unique_ptr< OBSERR > covar_
 

Detailed Description

template<typename OBS, typename OBSERR>
class oops::ObsErrorCovariance< OBS, OBSERR >

Observation error covariance matrix.

This class provides the operations associated with the observation error covariance matrix. It wraps model specific observation error covariances.

Definition at line 36 of file oops/interface/ObsErrorCovariance.h.

Member Typedef Documentation

◆ ObsSpace_

template<typename OBS , typename OBSERR >
typedef ObsSpace<OBS> oops::ObsErrorCovariance< OBS, OBSERR >::ObsSpace_
private

Definition at line 37 of file oops/interface/ObsErrorCovariance.h.

◆ ObsVector_

template<typename OBS , typename OBSERR >
typedef ObsVector<OBS> oops::ObsErrorCovariance< OBS, OBSERR >::ObsVector_
private

Definition at line 38 of file oops/interface/ObsErrorCovariance.h.

Constructor & Destructor Documentation

◆ ObsErrorCovariance()

template<typename OBS , typename OBSERR >
oops::ObsErrorCovariance< OBS, OBSERR >::ObsErrorCovariance ( const eckit::Configuration &  conf,
const ObsSpace_ obsdb,
const Variables obsvar 
)

Definition at line 64 of file oops/interface/ObsErrorCovariance.h.

Here is the call graph for this function:

◆ ~ObsErrorCovariance()

template<typename OBS , typename OBSERR >
oops::ObsErrorCovariance< OBS, OBSERR >::~ObsErrorCovariance

Definition at line 76 of file oops/interface/ObsErrorCovariance.h.

Member Function Documentation

◆ classname()

template<typename OBS , typename OBSERR >
static const std::string oops::ObsErrorCovariance< OBS, OBSERR >::classname ( )
inlinestatic

Definition at line 41 of file oops/interface/ObsErrorCovariance.h.

Here is the caller graph for this function:

◆ getRMSE()

template<typename OBS , typename OBSERR >
double oops::ObsErrorCovariance< OBS, OBSERR >::getRMSE
virtual

Get mean error for Jo table.

Implements oops::ObsErrorBase< OBS >.

Definition at line 116 of file oops/interface/ObsErrorCovariance.h.

◆ inverseMultiply()

template<typename OBS , typename OBSERR >
void oops::ObsErrorCovariance< OBS, OBSERR >::inverseMultiply ( ObsVector_ dy) const
virtual

Multiply a Departure dy by \(R^{-1}\).

Implements oops::ObsErrorBase< OBS >.

Definition at line 96 of file oops/interface/ObsErrorCovariance.h.

Here is the call graph for this function:

◆ multiply()

template<typename OBS , typename OBSERR >
void oops::ObsErrorCovariance< OBS, OBSERR >::multiply ( ObsVector_ dy) const
virtual

Multiply a Departure by \(R\) and \(R^{-1}\).

Implements oops::ObsErrorBase< OBS >.

Definition at line 86 of file oops/interface/ObsErrorCovariance.h.

Here is the call graph for this function:

◆ print()

template<typename OBS , typename OBSERR >
void oops::ObsErrorCovariance< OBS, OBSERR >::print ( std::ostream &  os) const
private

Definition at line 127 of file oops/interface/ObsErrorCovariance.h.

◆ randomize()

template<typename OBS , typename OBSERR >
void oops::ObsErrorCovariance< OBS, OBSERR >::randomize ( ObsVector_ dy) const
virtual

Generate random perturbation.

Implements oops::ObsErrorBase< OBS >.

Definition at line 106 of file oops/interface/ObsErrorCovariance.h.

Here is the call graph for this function:

Member Data Documentation

◆ covar_

template<typename OBS , typename OBSERR >
std::unique_ptr<OBSERR> oops::ObsErrorCovariance< OBS, OBSERR >::covar_
private

Definition at line 58 of file oops/interface/ObsErrorCovariance.h.


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