IODA Bundle
|
Base class for OBS-specific implementations of the ObsError interface. More...
#include <ObsErrorBase.h>
Public Member Functions | |
ObsErrorBase (const eckit::mpi::Comm &timeComm) | |
void | multiply (ObsVector< OBS > &dy) const final |
Multiply a Departure dy by \(R\). More... | |
void | inverseMultiply (ObsVector< OBS > &dy) const final |
Multiply a Departure dy by \(R^{-1}\). More... | |
void | randomize (ObsVector< OBS > &dy) const final |
Generate random perturbation in dy . More... | |
ObsVector< OBS > | obserrors () const final |
void | update (const ObsVector< OBS > &dy) final |
Set the diagonal of the covariance matrix to stddev squared. More... | |
ObsVector< OBS > | inverseVariance () const final |
Return the vector of inverse obs error variances. More... | |
virtual void | multiply (ObsVector_ &dy) const =0 |
Multiply a Departure dy by \(R\). More... | |
virtual void | inverseMultiply (ObsVector_ &dy) const =0 |
Multiply a Departure dy by \(R^{-1}\). More... | |
virtual void | randomize (ObsVector_ &dy) const =0 |
Generate a random perturbation in dy . More... | |
virtual std::unique_ptr< ObsVector_ > | getObsErrors () const =0 |
virtual void | update (const ObsVector_ &stddev)=0 |
Set the diagonal of the covariance matrix to stddev squared. More... | |
virtual std::unique_ptr< ObsVector_ > | getInverseVariance () const =0 |
Return the vector of inverse obs error variances. More... | |
![]() | |
ObsErrorBase ()=default | |
virtual | ~ObsErrorBase ()=default |
virtual void | save (const std::string &name) const =0 |
Save obs errors to the group name . More... | |
virtual double | getRMSE () const =0 |
Get mean error for Jo table. More... | |
Private Types | |
typedef OBS::ObsSpace | ObsSpace_ |
typedef OBS::ObsVector | ObsVector_ |
Private Attributes | |
const eckit::mpi::Comm & | timeComm_ |
Base class for OBS-specific implementations of the ObsError interface.
interface::ObsErrorBase overrides oops::ObsErrorBase methods to pass OBS-specific implementations of ObsVector to OBS-specific implementations of ObsError.
Note: subclasses need to provide a constructor with the following signature:
ObsErrorBase(const eckit::Configuration &config, OBS::ObsSpace &obsspace, const eckit::mpi::Comm &timeComm);
and pass timeComm
to the constructor of this class.
Definition at line 43 of file interface/ObsErrorBase.h.
|
private |
Definition at line 44 of file interface/ObsErrorBase.h.
|
private |
Definition at line 45 of file interface/ObsErrorBase.h.
|
inlineexplicit |
Definition at line 48 of file interface/ObsErrorBase.h.
|
pure virtual |
Return the vector of inverse obs error variances.
|
pure virtual |
Return a copy of obs error std. dev. If this ObsVector_ is modified (e.g. by obs filters), it should be passed back to update() to ensure the covariance matrix stays consistent.
|
inlinefinalvirtual |
Multiply a Departure dy
by \(R^{-1}\).
Implements oops::ObsErrorBase< OBS >.
Definition at line 58 of file interface/ObsErrorBase.h.
|
pure virtual |
Multiply a Departure dy
by \(R^{-1}\).
Implements oops::ObsErrorBase< OBS >.
|
inlinefinalvirtual |
Return the vector of inverse obs error variances.
Implements oops::ObsErrorBase< OBS >.
Definition at line 74 of file interface/ObsErrorBase.h.
|
inlinefinalvirtual |
Multiply a Departure dy
by \(R\).
Implements oops::ObsErrorBase< OBS >.
Definition at line 54 of file interface/ObsErrorBase.h.
|
pure virtual |
Multiply a Departure dy
by \(R\).
Implements oops::ObsErrorBase< OBS >.
|
inlinefinalvirtual |
Return a copy of obs error std. dev. If this ObsVector_ is modified (e.g. by obs filters), it should be passed back to update() to ensure the covariance matrix stays consistent.
Implements oops::ObsErrorBase< OBS >.
Definition at line 66 of file interface/ObsErrorBase.h.
|
inlinefinalvirtual |
Generate random perturbation in dy
.
Implements oops::ObsErrorBase< OBS >.
Definition at line 62 of file interface/ObsErrorBase.h.
|
pure virtual |
Generate a random perturbation in dy
.
Implements oops::ObsErrorBase< OBS >.
|
inlinefinalvirtual |
Set the diagonal of the covariance matrix to stddev
squared.
Implements oops::ObsErrorBase< OBS >.
Definition at line 70 of file interface/ObsErrorBase.h.
|
pure virtual |
Set the diagonal of the covariance matrix to stddev
squared.
Implements oops::ObsErrorBase< OBS >.
|
private |
Definition at line 102 of file interface/ObsErrorBase.h.