FV3 Bundle
|
Jo Cost Function. More...
#include <CostJo.h>
Public Member Functions | |
CostJo (const eckit::Configuration &, const util::DateTime &, const util::DateTime &, const util::Duration &, const bool subwindows=false) | |
Construct \( J_o\) from \( R\) and \( y_{obs}\). More... | |
virtual | ~CostJo () |
Destructor. More... | |
boost::shared_ptr< PostBase< State_ > > | initialize (const CtrlVar_ &) const override |
Initialize \( J_o\) before starting the integration of the model. More... | |
boost::shared_ptr< PostBaseTLAD_ > | initializeTraj (const CtrlVar_ &, const Geometry_ &, const eckit::Configuration &) override |
double | finalize (const eckit::Configuration &) const override |
Finalize \( J_o\) after the integration of the model. More... | |
void | finalizeTraj () override |
boost::shared_ptr< PostBaseTLAD_ > | setupTL (const CtrlInc_ &) const override |
Initialize \( J_o\) before starting the TL run. More... | |
boost::shared_ptr< PostBaseTLAD_ > | setupAD (boost::shared_ptr< const GeneralizedDepartures >, CtrlInc_ &) const override |
Initialize \( J_o\) before starting the AD run. More... | |
Departures_ * | multiplyCovar (const GeneralizedDepartures &) const override |
Multiply by \( R\) and \( R^{-1}\). More... | |
Departures_ * | multiplyCoInv (const GeneralizedDepartures &) const override |
Departures_ * | newDualVector () const override |
Provide new departure. More... | |
Departures_ * | newGradientFG () const override |
Return gradient at first guess ie \( R^{-1} {\cal H}(x^t ) - y\). More... | |
void | resetLinearization () override |
Reset obs operator trajectory. More... | |
double | printJo (const Departures_ &, const Departures_ &) const |
Print Jo. More... | |
Public Member Functions inherited from oops::CostTermBase< MODEL > | |
virtual | ~CostTermBase () |
Destructor. More... | |
Private Types | |
typedef ControlVariable< MODEL > | CtrlVar_ |
typedef ControlIncrement< MODEL > | CtrlInc_ |
typedef Departures< MODEL > | Departures_ |
typedef Observations< MODEL > | Observations_ |
typedef Geometry< MODEL > | Geometry_ |
typedef State< MODEL > | State_ |
typedef Increment< MODEL > | Increment_ |
typedef ObsAuxIncrement< MODEL > | ObsAuxIncr_ |
typedef ObsFilters< MODEL > | ObsFilters_ |
typedef ObsOperators< MODEL > | ObsOperator_ |
typedef ObsSpaces< MODEL > | ObsSpace_ |
typedef ObserverTLAD< MODEL > | ObserverTLAD_ |
typedef PostBaseTLAD< MODEL > | PostBaseTLAD_ |
typedef LinearObsOperators< MODEL > | LinearObsOperator_ |
Private Attributes | |
const ObsSpace_ | obspace_ |
const ObsOperator_ | hop_ |
Observations_ | yobs_ |
ObsErrors< MODEL > | R_ |
boost::scoped_ptr< Departures_ > | gradFG_ |
Gradient at first guess : \( R^{-1} (H(x_{fg})-y_{obs}) \). More... | |
boost::shared_ptr< Observer< MODEL, State_ > > | pobs_ |
Observer passed by \( J_o\) to the model during integration. More... | |
const util::Duration | tslot_ |
Time slot. More... | |
boost::shared_ptr< ObserverTLAD_ > | pobstlad_ |
Linearized observation operators. More... | |
const bool | subwindows_ |
Jo Cost Function.
The CostJo class encapsulates the Jo term of the cost function. The Observer to be called during the model integration is managed inside the CostJo class.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
oops::CostJo< MODEL >::CostJo | ( | const eckit::Configuration & | joConf, |
const util::DateTime & | winbgn, | ||
const util::DateTime & | winend, | ||
const util::Duration & | tslot, | ||
const bool | subwindows = false |
||
) |
|
inlinevirtual |
|
overridevirtual |
Finalize \( J_o\) after the integration of the model.
Implements oops::CostTermBase< MODEL >.
Definition at line 165 of file CostJo.h.
|
overridevirtual |
Implements oops::CostTermBase< MODEL >.
Definition at line 204 of file CostJo.h.
|
overridevirtual |
Initialize \( J_o\) before starting the integration of the model.
Implements oops::CostTermBase< MODEL >.
Definition at line 152 of file CostJo.h.
|
overridevirtual |
Implements oops::CostTermBase< MODEL >.
Definition at line 191 of file CostJo.h.
|
overridevirtual |
Implements oops::CostTermBase< MODEL >.
|
overridevirtual |
Multiply by \( R\) and \( R^{-1}\).
Implements oops::CostTermBase< MODEL >.
|
overridevirtual |
Provide new departure.
Implements oops::CostTermBase< MODEL >.
Definition at line 263 of file CostJo.h.
|
inlineoverridevirtual |
Return gradient at first guess ie \( R^{-1} {\cal H}(x^t ) - y\).
Implements oops::CostTermBase< MODEL >.
double oops::CostJo< MODEL >::printJo | ( | const Departures_ & | dy, |
const Departures_ & | grad | ||
) | const |
|
overridevirtual |
Reset obs operator trajectory.
Implements oops::CostTermBase< MODEL >.
|
overridevirtual |
Initialize \( J_o\) before starting the AD run.
Implements oops::CostTermBase< MODEL >.
Definition at line 231 of file CostJo.h.
|
overridevirtual |
Initialize \( J_o\) before starting the TL run.
Implements oops::CostTermBase< MODEL >.
Definition at line 220 of file CostJo.h.
|
private |
|
private |
|
private |
|
mutableprivate |
|
private |
|
private |
|
private |
|
private |
|
private |