|
OOPS
|
Strong Constraint 4D-Var Cost Function. More...
#include <CostFct4DVar.h>


Public Member Functions | |
| CostFct4DVar (const eckit::Configuration &, const eckit::mpi::Comm &) | |
| ~CostFct4DVar () | |
| void | runTLM (CtrlInc_ &, PostProcessorTLAD< MODEL > &, PostProcessor< Increment_ >, const bool idModel=false) const override |
| void | runADJ (CtrlInc_ &, PostProcessorTLAD< MODEL > &, PostProcessor< Increment_ >, const bool idModel=false) const override |
| void | zeroAD (CtrlInc_ &) const override |
| void | runNL (CtrlVar_ &, PostProcessor< State_ > &) const override |
Public Member Functions inherited from oops::CostFunction< MODEL, OBS > | |
| CostFunction (const eckit::Configuration &) | |
| virtual | ~CostFunction () |
| double | evaluate (const CtrlVar_ &, const eckit::Configuration &config=eckit::LocalConfiguration(), PostProcessor< State_ > post=PostProcessor< State_ >()) |
| double | linearize (const CtrlVar_ &, const eckit::Configuration &, PostProcessor< State_ > post=PostProcessor< State_ >()) |
| void | addIncrement (CtrlVar_ &, const CtrlInc_ &, PostProcessor< Increment_ > post=PostProcessor< Increment_ >()) const |
| void | resetLinearization () |
| void | computeGradientFG (CtrlInc_ &) const |
| Compute cost function gradient at first guess (without Jb). More... | |
| const JbTotal_ & | jb () const |
| Access \( J_b\). More... | |
| const CostBase_ & | jterm (const size_t ii) const |
| Access terms of the cost function other than \( J_b\). More... | |
| size_t | nterms () const |
| double | getCostJb () const |
| double | getCostJoJc () const |
Private Types | |
| typedef Increment< MODEL > | Increment_ |
| typedef ControlIncrement< MODEL, OBS > | CtrlInc_ |
| typedef ControlVariable< MODEL, OBS > | CtrlVar_ |
| typedef CostFunction< MODEL, OBS > | CostFct_ |
| typedef Geometry< MODEL > | Geometry_ |
| typedef State< MODEL > | State_ |
| typedef Model< MODEL > | Model_ |
| typedef LinearModel< MODEL > | LinearModel_ |
| typedef VariableChange< MODEL > | VarCha_ |
| typedef LinearVariableChangeBase< MODEL > | LinVarCha_ |
Private Member Functions | |
| void | addIncr (CtrlVar_ &, const CtrlInc_ &, PostProcessor< Increment_ > &) const override |
| CostJb3D< MODEL > * | newJb (const eckit::Configuration &, const Geometry_ &, const CtrlVar_ &) const override |
| CostJo< MODEL, OBS > * | newJo (const eckit::Configuration &) const override |
| CostTermBase< MODEL, OBS > * | newJc (const eckit::Configuration &, const Geometry_ &) const override |
| void | doLinearize (const Geometry_ &, const eckit::Configuration &, const CtrlVar_ &, const CtrlVar_ &, PostProcessor< State_ > &, PostProcessorTLAD< MODEL > &) override |
| const Geometry_ & | geometry () const override |
Private Attributes | |
| util::Duration | windowLength_ |
| util::DateTime | windowBegin_ |
| util::DateTime | windowEnd_ |
| const eckit::mpi::Comm & | comm_ |
| Geometry_ | resol_ |
| Model_ | model_ |
| const Variables | ctlvars_ |
| std::shared_ptr< LinearModel_ > | tlm_ |
| VarCha_ | an2model_ |
| std::unique_ptr< LinVarCha_ > | inc2model_ |
Additional Inherited Members | |
Protected Member Functions inherited from oops::CostFunction< MODEL, OBS > | |
| void | setupTerms (const eckit::Configuration &) |
| const CtrlVar_ & | background () const |
Strong Constraint 4D-Var Cost Function.
This class is not really necessary since it is only a special case of the more general weak constraint 4D-Var cost function with one sub-window. It is provided for readability.
Definition at line 51 of file CostFct4DVar.h.
|
private |
Definition at line 55 of file CostFct4DVar.h.
|
private |
Definition at line 53 of file CostFct4DVar.h.
|
private |
Definition at line 54 of file CostFct4DVar.h.
|
private |
Definition at line 56 of file CostFct4DVar.h.
|
private |
Definition at line 52 of file CostFct4DVar.h.
|
private |
Definition at line 59 of file CostFct4DVar.h.
|
private |
Definition at line 61 of file CostFct4DVar.h.
|
private |
Definition at line 58 of file CostFct4DVar.h.
|
private |
Definition at line 57 of file CostFct4DVar.h.
|
private |
Definition at line 60 of file CostFct4DVar.h.
| oops::CostFct4DVar< MODEL, OBS >::CostFct4DVar | ( | const eckit::Configuration & | config, |
| const eckit::mpi::Comm & | comm | ||
| ) |
|
inline |
Definition at line 65 of file CostFct4DVar.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 231 of file CostFct4DVar.h.

|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 164 of file CostFct4DVar.h.

|
inlineoverrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 87 of file CostFct4DVar.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 124 of file CostFct4DVar.h.

|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 140 of file CostFct4DVar.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 133 of file CostFct4DVar.h.
|
overridevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 213 of file CostFct4DVar.h.

|
overridevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 150 of file CostFct4DVar.h.

|
overridevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 185 of file CostFct4DVar.h.

|
overridevirtual |
Implements oops::CostFunction< MODEL, OBS >.
Definition at line 204 of file CostFct4DVar.h.

|
private |
Definition at line 97 of file CostFct4DVar.h.
|
private |
Definition at line 92 of file CostFct4DVar.h.
|
private |
Definition at line 95 of file CostFct4DVar.h.
|
private |
Definition at line 98 of file CostFct4DVar.h.
|
private |
Definition at line 94 of file CostFct4DVar.h.
|
private |
Definition at line 93 of file CostFct4DVar.h.
|
private |
Definition at line 96 of file CostFct4DVar.h.
|
private |
Definition at line 90 of file CostFct4DVar.h.
|
private |
Definition at line 91 of file CostFct4DVar.h.
|
private |
Definition at line 89 of file CostFct4DVar.h.