|
OOPS
|
Jo Cost Function. More...
#include <CostJo.h>


Public Member Functions | |
| CostJo (const eckit::Configuration &, const eckit::mpi::Comm &, const util::DateTime &, const util::DateTime &, const eckit::mpi::Comm &ctime=oops::mpi::myself()) | |
| Construct \( J_o\) from \( R\) and \( y_{obs}\). More... | |
| virtual | ~CostJo () |
| Destructor. More... | |
| void | setPostProc (const CtrlVar_ &, const eckit::Configuration &, PostProc_ &) override |
| Initialize \( J_o\) before starting the integration of the model. More... | |
| double | computeCost () override |
| Finalize \( J_o\) after the integration of the model. More... | |
| void | setPostProcTraj (const CtrlVar_ &, const eckit::Configuration &, const Geometry_ &, PostProcTLAD_ &) override |
| Initialize \( J_o\) for the trajectory run. More... | |
| void | computeCostTraj () override |
| Finish cost computation and trajectory handling after nonlinear model integration. More... | |
| void | setPostProcTL (const CtrlInc_ &, PostProcTLAD_ &) const override |
| Initialize \( J_o\) before starting the TL run. More... | |
| void | computeCostTL (const CtrlInc_ &, GeneralizedDepartures &) const override |
| Finish cost computation after TL model integration. More... | |
| void | computeCostAD (std::shared_ptr< const GeneralizedDepartures >, CtrlInc_ &, PostProcTLAD_ &) const override |
| Initialize \( J_o\) before starting the AD run. More... | |
| void | setPostProcAD () const override |
| Adjoint ot setPostProcTL (clean-up) More... | |
| std::unique_ptr< GeneralizedDepartures > | multiplyCovar (const GeneralizedDepartures &) const override |
| Multiply by \( R\) and \( R^{-1}\). More... | |
| std::unique_ptr< GeneralizedDepartures > | multiplyCoInv (const GeneralizedDepartures &) const override |
| std::unique_ptr< GeneralizedDepartures > | newDualVector () const override |
| Provide new departure. More... | |
| std::unique_ptr< GeneralizedDepartures > | 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... | |
| const ObsSpaces_ & | obspaces () const |
| Accessor... More... | |
Public Member Functions inherited from oops::CostTermBase< MODEL, OBS > | |
| virtual | ~CostTermBase () |
| Destructor. More... | |
Private Types | |
| typedef ControlVariable< MODEL, OBS > | CtrlVar_ |
| typedef ControlIncrement< MODEL, OBS > | CtrlInc_ |
| typedef Departures< OBS > | Departures_ |
| typedef Observations< OBS > | Observations_ |
| typedef Geometry< MODEL > | Geometry_ |
| typedef GetValuePosts< MODEL, OBS > | GetValuePosts_ |
| typedef State< MODEL > | State_ |
| typedef ObsErrors< OBS > | ObsErrors_ |
| typedef ObsSpaces< OBS > | ObsSpaces_ |
| typedef Observers< MODEL, OBS > | Observers_ |
| typedef ObserversTLAD< MODEL, OBS > | ObserversTLAD_ |
| typedef PostProcessor< State_ > | PostProc_ |
| typedef PostProcessorTLAD< MODEL > | PostProcTLAD_ |
Private Attributes | |
| const eckit::LocalConfiguration | obsconf_ |
| ObsSpaces_ | obspaces_ |
| std::unique_ptr< Observations_ > | yobs_ |
| ObsErrors_ | Rmat_ |
| Observers_ | observers_ |
| std::unique_ptr< Departures_ > | gradFG_ |
| Jo Gradient at first guess : \( R^{-1} (H(x_{fg})-y_{obs}) \). More... | |
| std::shared_ptr< ObserversTLAD_ > | obstlad_ |
| Linearized observation operators. More... | |
| std::unique_ptr< eckit::LocalConfiguration > | currentConf_ |
| Configuration for current initialize/finalize pair. More... | |
Jo Cost Function.
The CostJo class encapsulates the Jo term of the cost function. The Observers 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 |
| oops::CostJo< MODEL, OBS >::CostJo | ( | const eckit::Configuration & | joConf, |
| const eckit::mpi::Comm & | comm, | ||
| const util::DateTime & | winbgn, | ||
| const util::DateTime & | winend, | ||
| const eckit::mpi::Comm & | ctime = oops::mpi::myself() |
||
| ) |
|
virtual |
|
overridevirtual |
Finalize \( J_o\) after the integration of the model.
Implements oops::CostTermBase< MODEL, OBS >.
Definition at line 169 of file CostJo.h.

|
overridevirtual |
Initialize \( J_o\) before starting the AD run.
Implements oops::CostTermBase< MODEL, OBS >.
Definition at line 280 of file CostJo.h.

|
overridevirtual |
Finish cost computation after TL model integration.
Implements oops::CostTermBase< MODEL, OBS >.
Definition at line 269 of file CostJo.h.

|
overridevirtual |
Finish cost computation and trajectory handling after nonlinear model integration.
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Multiply by \( R\) and \( R^{-1}\).
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Provide new departure.
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Return gradient at first guess ie \( R^{-1} {\cal H}(x^t ) - y\).
Implements oops::CostTermBase< MODEL, OBS >.
|
inline |
|
overridevirtual |
Reset obs operator trajectory.
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Initialize \( J_o\) before starting the integration of the model.
Implements oops::CostTermBase< MODEL, OBS >.
Definition at line 154 of file CostJo.h.

|
overridevirtual |
Adjoint ot setPostProcTL (clean-up)
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Initialize \( J_o\) before starting the TL run.
Implements oops::CostTermBase< MODEL, OBS >.
|
overridevirtual |
Initialize \( J_o\) for the trajectory run.
Implements oops::CostTermBase< MODEL, OBS >.
Definition at line 240 of file CostJo.h.

|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |