FV3 Bundle
|
Weak Constraint 4D-Var Cost Function. More...
#include <CostFctWeak.h>
Public Member Functions | |
CostFctWeak (const eckit::Configuration &, const Geometry_ &, const Model_ &) | |
~CostFctWeak () | |
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 | runTLM (CtrlInc_ &, const bool idModel=false) const |
void | runADJ (CtrlInc_ &, const bool idModel=false) const |
void | runNL (CtrlVar_ &, PostProcessor< State_ > &) const override |
Public Member Functions inherited from oops::CostFunction< MODEL > | |
CostFunction (const eckit::Configuration &, const Geometry_ &, const Model_ &) | |
virtual | ~CostFunction () |
double | evaluate (const CtrlVar_ &, const eckit::Configuration &config=eckit::LocalConfiguration(), PostProcessor< State_ > post=PostProcessor< State_ >()) const |
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 unsigned ii) const |
Access terms of the cost function other than \( J_b\). More... | |
unsigned | nterms () const |
const double | getCostJb () const |
const double | getCostJoJc () const |
Private Types | |
typedef Increment< MODEL > | Increment_ |
typedef ControlIncrement< MODEL > | CtrlInc_ |
typedef ControlVariable< MODEL > | CtrlVar_ |
typedef CostFunction< MODEL > | CostFct_ |
typedef Geometry< MODEL > | Geometry_ |
typedef State< MODEL > | State_ |
typedef Model< MODEL > | Model_ |
typedef LinearVariableChangeBase< MODEL > | ChangeVar_ |
Private Member Functions | |
void | addIncr (CtrlVar_ &, const CtrlInc_ &, PostProcessor< Increment_ > &) const override |
CostJbJq< MODEL > * | newJb (const eckit::Configuration &, const Geometry_ &, const CtrlVar_ &) const override |
CostJo< MODEL > * | newJo (const eckit::Configuration &) const override |
CostTermBase< MODEL > * | newJc (const eckit::Configuration &, const Geometry_ &) const override |
void | doLinearize (const Geometry_ &, const eckit::Configuration &, const CtrlVar_ &, const CtrlVar_ &) override |
Private Attributes | |
util::Duration | windowLength_ |
util::DateTime | windowBegin_ |
util::DateTime | windowEnd_ |
util::Duration | windowSub_ |
unsigned int | nsubwin_ |
bool | tlforcing_ |
const Variables | ctlvars_ |
boost::scoped_ptr< ChangeVar_ > | an2model_ |
Additional Inherited Members | |
Protected Member Functions inherited from oops::CostFunction< MODEL > | |
void | setupTerms (const eckit::Configuration &) |
const Model_ & | getModel () const |
const LinearModel_ & | getTLM (const unsigned isub=0) const |
Weak Constraint 4D-Var Cost Function.
General weak constraint constraint 4D-Var cost function.
Definition at line 44 of file CostFctWeak.h.
|
private |
Definition at line 52 of file CostFctWeak.h.
|
private |
Definition at line 48 of file CostFctWeak.h.
|
private |
Definition at line 46 of file CostFctWeak.h.
|
private |
Definition at line 47 of file CostFctWeak.h.
|
private |
Definition at line 49 of file CostFctWeak.h.
|
private |
Definition at line 45 of file CostFctWeak.h.
|
private |
Definition at line 51 of file CostFctWeak.h.
|
private |
Definition at line 50 of file CostFctWeak.h.
oops::CostFctWeak< MODEL >::CostFctWeak | ( | const eckit::Configuration & | config, |
const Geometry_ & | resol, | ||
const Model_ & | model | ||
) |
|
inline |
Definition at line 56 of file CostFctWeak.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 287 of file CostFctWeak.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 161 of file CostFctWeak.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 117 of file CostFctWeak.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 133 of file CostFctWeak.h.
|
overrideprivatevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 126 of file CostFctWeak.h.
|
overridevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 238 of file CostFctWeak.h.
void oops::CostFctWeak< MODEL >::runADJ | ( | CtrlInc_ & | dx, |
const bool | idModel = false |
||
) | const |
|
overridevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 143 of file CostFctWeak.h.
|
overridevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 176 of file CostFctWeak.h.
void oops::CostFctWeak< MODEL >::runTLM | ( | CtrlInc_ & | dx, |
const bool | idModel = false |
||
) | const |
|
overridevirtual |
Implements oops::CostFunction< MODEL >.
Definition at line 226 of file CostFctWeak.h.
|
private |
Definition at line 87 of file CostFctWeak.h.
|
private |
Definition at line 86 of file CostFctWeak.h.
|
private |
Definition at line 84 of file CostFctWeak.h.
|
private |
Definition at line 85 of file CostFctWeak.h.
|
private |
Definition at line 81 of file CostFctWeak.h.
|
private |
Definition at line 82 of file CostFctWeak.h.
|
private |
Definition at line 80 of file CostFctWeak.h.
|
private |
Definition at line 83 of file CostFctWeak.h.