| OOPS
    | 
Base Class for Cost Function Terms. More...
#include <CostTermBase.h>

| Public Member Functions | |
| virtual | ~CostTermBase () | 
| Destructor.  More... | |
| virtual void | setPostProc (const ControlVariable< MODEL, OBS > &, const eckit::Configuration &, PostProc_ &)=0 | 
| Initialize and set post-processors to collect data during nonlinear model integration.  More... | |
| virtual double | computeCost ()=0 | 
| Finish computation of cost function term after nonlinear model integration.  More... | |
| virtual void | setPostProcTraj (const ControlVariable< MODEL, OBS > &, const eckit::Configuration &, const Geometry_ &, PostProcTLAD_ &)=0 | 
| Set post-processors for nonlinear model integration and save linearisation trajectory.  More... | |
| virtual void | computeCostTraj ()=0 | 
| Finish cost computation and trajectory handling after nonlinear model integration.  More... | |
| virtual void | setPostProcTL (const ControlIncrement< MODEL, OBS > &, PostProcTLAD_ &) const =0 | 
| Initialize and set TL post-processors to collect data during TL model integration.  More... | |
| virtual void | computeCostTL (const ControlIncrement< MODEL, OBS > &, GeneralizedDepartures &) const =0 | 
| Finish cost computation after TL model integration.  More... | |
| virtual void | computeCostAD (std::shared_ptr< const GeneralizedDepartures >, ControlIncrement< MODEL, OBS > &, PostProcTLAD_ &) const =0 | 
| Adjoint of computeCostTL (initialize and set post-processors adjoint to force AD model)  More... | |
| virtual void | setPostProcAD () const =0 | 
| Adjoint ot setPostProcTL (clean-up)  More... | |
| virtual std::unique_ptr< GeneralizedDepartures > | multiplyCovar (const GeneralizedDepartures &) const =0 | 
| Multiply by covariance (or weight) matrix and its inverse.  More... | |
| virtual std::unique_ptr< GeneralizedDepartures > | multiplyCoInv (const GeneralizedDepartures &) const =0 | 
| virtual std::unique_ptr< GeneralizedDepartures > | newDualVector () const =0 | 
| Provide new dual space vector (for example a Departure for Jo).  More... | |
| virtual std::unique_ptr< GeneralizedDepartures > | newGradientFG () const =0 | 
| Gradient at first guess.  More... | |
| virtual void | resetLinearization ()=0 | 
| Reset trajectory.  More... | |
| Private Types | |
| typedef Geometry< MODEL > | Geometry_ | 
| typedef State< MODEL > | State_ | 
| typedef PostProcessor< State_ > | PostProc_ | 
| typedef PostProcessorTLAD< MODEL > | PostProcTLAD_ | 
Base Class for Cost Function Terms.
Abstract base class for the terms of the cost function (other than Jb).
Definition at line 36 of file CostTermBase.h.
| 
 | private | 
Definition at line 37 of file CostTermBase.h.
| 
 | private | 
Definition at line 39 of file CostTermBase.h.
| 
 | private | 
Definition at line 40 of file CostTermBase.h.
| 
 | private | 
Definition at line 38 of file CostTermBase.h.
| 
 | inlinevirtual | 
Destructor.
Definition at line 44 of file CostTermBase.h.
| 
 | pure virtual | 
Finish computation of cost function term after nonlinear model integration.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Adjoint of computeCostTL (initialize and set post-processors adjoint to force AD model)
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Finish cost computation after TL model integration.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Finish cost computation and trajectory handling after nonlinear model integration.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Multiply by covariance (or weight) matrix and its inverse.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Provide new dual space vector (for example a Departure for Jo).
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Gradient at first guess.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Reset trajectory.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Initialize and set post-processors to collect data during nonlinear model integration.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.
| 
 | pure virtual | 
Adjoint ot setPostProcTL (clean-up)
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Initialize and set TL post-processors to collect data during TL model integration.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.

| 
 | pure virtual | 
Set post-processors for nonlinear model integration and save linearisation trajectory.
Implemented in oops::CostJo< MODEL, OBS >, and oops::CostJcDFI< MODEL, OBS >.