OOPS
oops::Observer< MODEL, OBS > Class Template Reference

Computes observation operator, applying bias correction and QC filters. More...

#include <Observer.h>

Collaboration diagram for oops::Observer< MODEL, OBS >:

Public Member Functions

 Observer (const ObsSpace_ &, const Parameters_ &)
 Initializes ObsOperators, Locations, and QC data. More...
 
std::shared_ptr< GetValPost_initialize (const Geometry_ &, const ObsAuxCtrl_ &, ObsError_ &, const eckit::Configuration &)
 Initializes variables, obs bias, obs filters (could be different for different iterations. More...
 
void finalize (ObsVector_ &)
 Computes H(x) from the filled in GeoVaLs. More...
 

Private Types

typedef Geometry< MODEL > Geometry_
 
typedef GeoVaLs< OBS > GeoVaLs_
 
typedef GetValuePost< MODEL, OBS > GetValPost_
 
typedef Locations< OBS > Locations_
 
typedef ObsAuxControl< OBS > ObsAuxCtrl_
 
typedef ObsDataVector< OBS, int > ObsDataInt_
 
typedef ObsDiagnostics< OBS > ObsDiags_
 
typedef ObsError< OBS > ObsError_
 
typedef ObserverParameters< OBS > Parameters_
 
typedef ObsFilters< OBS > ObsFilters_
 
typedef ObsOperator< OBS > ObsOperator_
 
typedef ObsSpace< OBS > ObsSpace_
 
typedef ObsVector< OBS > ObsVector_
 

Private Attributes

Parameters_ parameters_
 
const ObsSpace_obspace_
 
std::unique_ptr< ObsOperator_obsop_
 
std::unique_ptr< Locations_locations_
 
const ObsAuxCtrl_biascoeff_
 
ObsError_Rmat_
 
std::unique_ptr< ObsFilters_filters_
 
std::unique_ptr< ObsVector_obserr_
 
std::shared_ptr< GetValPost_getvals_
 
std::shared_ptr< ObsDataInt_qcflags_
 
bool initialized_
 
std::unique_ptr< eckit::LocalConfiguration > iterconf_
 

Detailed Description

template<typename MODEL, typename OBS>
class oops::Observer< MODEL, OBS >

Computes observation operator, applying bias correction and QC filters.

Definition at line 56 of file Observer.h.

Member Typedef Documentation

◆ Geometry_

template<typename MODEL , typename OBS >
typedef Geometry<MODEL> oops::Observer< MODEL, OBS >::Geometry_
private

Definition at line 57 of file Observer.h.

◆ GeoVaLs_

template<typename MODEL , typename OBS >
typedef GeoVaLs<OBS> oops::Observer< MODEL, OBS >::GeoVaLs_
private

Definition at line 58 of file Observer.h.

◆ GetValPost_

template<typename MODEL , typename OBS >
typedef GetValuePost<MODEL, OBS> oops::Observer< MODEL, OBS >::GetValPost_
private

Definition at line 59 of file Observer.h.

◆ Locations_

template<typename MODEL , typename OBS >
typedef Locations<OBS> oops::Observer< MODEL, OBS >::Locations_
private

Definition at line 60 of file Observer.h.

◆ ObsAuxCtrl_

template<typename MODEL , typename OBS >
typedef ObsAuxControl<OBS> oops::Observer< MODEL, OBS >::ObsAuxCtrl_
private

Definition at line 61 of file Observer.h.

◆ ObsDataInt_

template<typename MODEL , typename OBS >
typedef ObsDataVector<OBS, int> oops::Observer< MODEL, OBS >::ObsDataInt_
private

Definition at line 62 of file Observer.h.

◆ ObsDiags_

template<typename MODEL , typename OBS >
typedef ObsDiagnostics<OBS> oops::Observer< MODEL, OBS >::ObsDiags_
private

Definition at line 63 of file Observer.h.

◆ ObsError_

template<typename MODEL , typename OBS >
typedef ObsError<OBS> oops::Observer< MODEL, OBS >::ObsError_
private

Definition at line 64 of file Observer.h.

◆ ObsFilters_

template<typename MODEL , typename OBS >
typedef ObsFilters<OBS> oops::Observer< MODEL, OBS >::ObsFilters_
private

Definition at line 66 of file Observer.h.

◆ ObsOperator_

template<typename MODEL , typename OBS >
typedef ObsOperator<OBS> oops::Observer< MODEL, OBS >::ObsOperator_
private

Definition at line 67 of file Observer.h.

◆ ObsSpace_

template<typename MODEL , typename OBS >
typedef ObsSpace<OBS> oops::Observer< MODEL, OBS >::ObsSpace_
private

Definition at line 68 of file Observer.h.

◆ ObsVector_

template<typename MODEL , typename OBS >
typedef ObsVector<OBS> oops::Observer< MODEL, OBS >::ObsVector_
private

Definition at line 69 of file Observer.h.

◆ Parameters_

template<typename MODEL , typename OBS >
typedef ObserverParameters<OBS> oops::Observer< MODEL, OBS >::Parameters_
private

Definition at line 65 of file Observer.h.

Constructor & Destructor Documentation

◆ Observer()

template<typename MODEL , typename OBS >
oops::Observer< MODEL, OBS >::Observer ( const ObsSpace_ obspace,
const Parameters_ params 
)

Initializes ObsOperators, Locations, and QC data.

Set up observation operators

Definition at line 101 of file Observer.h.

Here is the call graph for this function:

Member Function Documentation

◆ finalize()

template<typename MODEL , typename OBS >
void oops::Observer< MODEL, OBS >::finalize ( ObsVector_ yobsim)

Computes H(x) from the filled in GeoVaLs.

Call prior filters

Setup diagnostics

Compute H(x)

Call posterior filters

Definition at line 152 of file Observer.h.

Here is the call graph for this function:

◆ initialize()

template<typename MODEL , typename OBS >
std::shared_ptr< GetValuePost< MODEL, OBS > > oops::Observer< MODEL, OBS >::initialize ( const Geometry_ geom,
const ObsAuxCtrl_ biascoeff,
ObsError_ R,
const eckit::Configuration &  conf 
)

Initializes variables, obs bias, obs filters (could be different for different iterations.

Definition at line 117 of file Observer.h.

Member Data Documentation

◆ biascoeff_

template<typename MODEL , typename OBS >
const ObsAuxCtrl_* oops::Observer< MODEL, OBS >::biascoeff_
private

Definition at line 88 of file Observer.h.

◆ filters_

template<typename MODEL , typename OBS >
std::unique_ptr<ObsFilters_> oops::Observer< MODEL, OBS >::filters_
private

Definition at line 90 of file Observer.h.

◆ getvals_

template<typename MODEL , typename OBS >
std::shared_ptr<GetValPost_> oops::Observer< MODEL, OBS >::getvals_
private

Definition at line 92 of file Observer.h.

◆ initialized_

template<typename MODEL , typename OBS >
bool oops::Observer< MODEL, OBS >::initialized_
private

Definition at line 94 of file Observer.h.

◆ iterconf_

template<typename MODEL , typename OBS >
std::unique_ptr<eckit::LocalConfiguration> oops::Observer< MODEL, OBS >::iterconf_
private

Definition at line 95 of file Observer.h.

◆ locations_

template<typename MODEL , typename OBS >
std::unique_ptr<Locations_> oops::Observer< MODEL, OBS >::locations_
private

Definition at line 87 of file Observer.h.

◆ obserr_

template<typename MODEL , typename OBS >
std::unique_ptr<ObsVector_> oops::Observer< MODEL, OBS >::obserr_
private

Definition at line 91 of file Observer.h.

◆ obsop_

template<typename MODEL , typename OBS >
std::unique_ptr<ObsOperator_> oops::Observer< MODEL, OBS >::obsop_
private

Definition at line 86 of file Observer.h.

◆ obspace_

template<typename MODEL , typename OBS >
const ObsSpace_& oops::Observer< MODEL, OBS >::obspace_
private

Definition at line 85 of file Observer.h.

◆ parameters_

template<typename MODEL , typename OBS >
Parameters_ oops::Observer< MODEL, OBS >::parameters_
private

Definition at line 84 of file Observer.h.

◆ qcflags_

template<typename MODEL , typename OBS >
std::shared_ptr<ObsDataInt_> oops::Observer< MODEL, OBS >::qcflags_
private

Definition at line 93 of file Observer.h.

◆ Rmat_

template<typename MODEL , typename OBS >
ObsError_* oops::Observer< MODEL, OBS >::Rmat_
private

Definition at line 89 of file Observer.h.


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