|
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 |