|
OOPS
|
MODEL-agnostic part of tangent-linear and adjoint of the nonlinear observation (forward) operator ObsOperator. More...
#include <LinearObsOperator.h>


Public Types | |
| typedef LinearObsOper_::Parameters_ | Parameters_ |
| A subclass of oops::Parameters holding the configuration settings of the operator. More... | |
Public Member Functions | |
| LinearObsOperator (const ObsSpace_ &obsspace, const Parameters_ ¶meters) | |
| ~LinearObsOperator () | |
| void | setTrajectory (const GeoVaLs_ &x0, const ObsAuxControl_ &obsaux) |
| void | simulateObsTL (const GeoVaLs_ &dx, ObsVector_ &dy, const ObsAuxIncrement_ &dobsaux) const |
| void | simulateObsAD (GeoVaLs_ &dx, const ObsVector_ &dy, ObsAuxIncrement_ &dobsaux) const |
| const Variables & | requiredVars () const |
Static Public Member Functions | |
| static const std::string | classname () |
Private Types | |
| typedef OBS::LinearObsOperator | LinearObsOper_ |
| typedef GeoVaLs< OBS > | GeoVaLs_ |
| typedef ObsAuxControl< OBS > | ObsAuxControl_ |
| typedef ObsAuxIncrement< OBS > | ObsAuxIncrement_ |
| typedef ObsSpace< OBS > | ObsSpace_ |
| typedef ObsVector< OBS > | ObsVector_ |
Private Member Functions | |
| void | print (std::ostream &) const |
| Print, used for logging. More... | |
Private Attributes | |
| std::unique_ptr< LinearObsOper_ > | oper_ |
| Pointer to the implementation of LinearObsOperator. More... | |
MODEL-agnostic part of tangent-linear and adjoint of the nonlinear observation (forward) operator ObsOperator.
Note: each implementation should typedef Parameters_ to the name of a subclass of oops::Parameters holding its configuration settings and provide a constructor with the following signature:
LinearObsOperator(const OBS::ObsSpace &, const Parameters_ &);
Definition at line 42 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 46 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 45 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 47 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 48 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 49 of file oops/interface/LinearObsOperator.h.
|
private |
Definition at line 50 of file oops/interface/LinearObsOperator.h.
| typedef LinearObsOper_::Parameters_ oops::LinearObsOperator< OBS >::Parameters_ |
A subclass of oops::Parameters holding the configuration settings of the operator.
Definition at line 54 of file oops/interface/LinearObsOperator.h.
| oops::LinearObsOperator< OBS >::LinearObsOperator | ( | const ObsSpace_ & | obsspace, |
| const Parameters_ & | parameters | ||
| ) |
Set up TL and AD of observation operator for the obsspace observations, with parameters defined in parameters.
Definition at line 108 of file oops/interface/LinearObsOperator.h.

| oops::LinearObsOperator< OBS >::~LinearObsOperator |
Definition at line 119 of file oops/interface/LinearObsOperator.h.
|
inlinestatic |
Definition at line 56 of file oops/interface/LinearObsOperator.h.

|
private |
Print, used for logging.
Definition at line 170 of file oops/interface/LinearObsOperator.h.
| const Variables & oops::LinearObsOperator< OBS >::requiredVars |
Variables required from the model Increment to compute TL or AD of the obs operator. These variables will be provided in GeoVaLs passed to simulateObsTL and simulateObsAD. Note: these Variables may be different from variables returned by ObsOperator::requiredVars(), which will be provided in GeoVaLs passed to setTrajectory.
Definition at line 161 of file oops/interface/LinearObsOperator.h.
| void oops::LinearObsOperator< OBS >::setTrajectory | ( | const GeoVaLs_ & | x0, |
| const ObsAuxControl_ & | obsaux | ||
| ) |
Sets up the trajectory for future calls of simulateObsTL or simulateObsAD. The implementations could e.g. save the trajectory x0, or compute and save the Jacobian of observation operator around x0. Always called before simulateObsTL or simulateObsAD.
| [in] | x0 | trajectory for linearization of obs operator, State interpolated to observations locations (defined by ObsOperator::locations()) |
| [in] | obsaux | additional obs operator input, used in the minimization in Variational DA, e.g. bias correction coefficients or obs operator parameters. |
Definition at line 129 of file oops/interface/LinearObsOperator.h.

| void oops::LinearObsOperator< OBS >::simulateObsAD | ( | GeoVaLs_ & | dx, |
| const ObsVector_ & | dy, | ||
| ObsAuxIncrement_ & | dobsaux | ||
| ) | const |
Apply adjoint of the observation operator linearized around the trajectory that was passed to setTrajectory method (which is always called before simulateObsAD).
| [out] | dx | output of the AD obs operator, Increment interpolated to observations locations. |
| [in] | dy | input of the AD obs operator, perturbation to the ObsVector. |
| [out] | dobsaux | additional output of the AD obs operator, e.g. perturbation to bias coefficients or obs operator parameters. |
Definition at line 150 of file oops/interface/LinearObsOperator.h.

| void oops::LinearObsOperator< OBS >::simulateObsTL | ( | const GeoVaLs_ & | dx, |
| ObsVector_ & | dy, | ||
| const ObsAuxIncrement_ & | dobsaux | ||
| ) | const |
Apply tangent-linear of the observation operator linearized around the trajectory that was passed to setTrajectory method (which is always called before simulateObsTL).
| [in] | dx | input to the TL obs operator, Increment interpolated to observations locations. |
| [out] | dy | output of the TL obs operator. |
| [in] | dobsaux | additional input to the TL obs operator, e.g. perturbation to bias coefficients or obs operator parameters. |
Definition at line 139 of file oops/interface/LinearObsOperator.h.

|
private |
Pointer to the implementation of LinearObsOperator.
Definition at line 102 of file oops/interface/LinearObsOperator.h.