FV3 Bundle
|
Control variable increment. More...
#include <ControlIncrement.h>
Public Member Functions | |
CostJbTotal (const CtrlVar_ &, JbState_ *, const eckit::Configuration &, const Geometry_ &) | |
Construct \( J_b\). More... | |
~CostJbTotal () | |
Destructor. More... | |
JqTerm_ * | initialize (const CtrlVar_ &) const |
Initialize before nonlinear model integration. More... | |
JqTermTLAD_ * | initializeTraj (const CtrlVar_ &, const Geometry_ &) |
double | finalize (JqTerm_ *) const |
Finalize computation after nonlinear model integration. More... | |
void | finalizeTraj (JqTermTLAD_ *) |
JqTermTLAD_ * | initializeTL () const |
Initialize before starting the TL run. More... | |
void | finalizeTL (JqTermTLAD_ *, const CtrlInc_ &, CtrlInc_ &) const |
JqTermTLAD_ * | initializeAD (CtrlInc_ &, const CtrlInc_ &) const |
Initialize before starting the AD run. More... | |
void | finalizeAD (JqTermTLAD_ *) const |
void | multiplyB (const CtrlInc_ &, CtrlInc_ &) const |
Multiply by covariance matrix and its inverse. More... | |
void | multiplyBinv (const CtrlInc_ &, CtrlInc_ &) const |
void | randomize (CtrlInc_ &) const |
Randomize. More... | |
void | addGradientFG (CtrlInc_ &) const |
Add Jb gradient at first guess. More... | |
void | addGradientFG (CtrlInc_ &, CtrlInc_ &) const |
const CtrlVar_ & | getBackground () const |
Return background. More... | |
const CtrlInc_ & | getFirstGuess () const |
Return first guess \( x_0-x_b\). More... | |
const Geometry_ & | resolution () const |
Jb terms for ControlIncrement constructor. More... | |
const JbState_ & | jbState () const |
const ModelAuxCovar_ & | jbModBias () const |
const ObsAuxCovar_ & | jbObsBias () const |
Private Types | |
typedef ControlIncrement< MODEL > | CtrlInc_ |
typedef ControlVariable< MODEL > | CtrlVar_ |
typedef CostJbState< MODEL > | JbState_ |
typedef JqTerm< MODEL > | JqTerm_ |
typedef JqTermTLAD< MODEL > | JqTermTLAD_ |
typedef Geometry< MODEL > | Geometry_ |
typedef ModelAuxCovariance< MODEL > | ModelAuxCovar_ |
typedef ObsAuxCovariance< MODEL > | ObsAuxCovar_ |
Private Member Functions | |
double | evaluate (const CtrlInc_ &) const |
Private Attributes | |
const CtrlVar_ & | xb_ |
boost::scoped_ptr< JbState_ > | jb_ |
ModelAuxCovar_ | jbModBias_ |
ObsAuxCovar_ | jbObsBias_ |
const CtrlVar_ * | fg_ |
boost::scoped_ptr< CtrlInc_ > | dxFG_ |
First guess increment \(x_0-x_b\) or more generally \( x_i-M(x_{i-1})\). More... | |
boost::scoped_ptr< Geometry_ > | resol_ |
Inner loop resolution. More... | |
Control variable increment.
Total Jb cost function for all components of the control variable.
The control variable acts as a container for the inputs of the variational data assimilation cost functions in physical space. That includes the states at the start the assimilation window or of each sub-window but also additional variables such as model bias, VarBC coefficients, or other control variables for algorithms that use them. The control variable increment contains variations of the control variable.
Definition at line 41 of file ControlIncrement.h.
|
private |
Definition at line 36 of file CostJbTotal.h.
|
private |
Definition at line 37 of file CostJbTotal.h.
|
private |
Definition at line 41 of file CostJbTotal.h.
|
private |
Definition at line 38 of file CostJbTotal.h.
|
private |
Definition at line 39 of file CostJbTotal.h.
|
private |
Definition at line 40 of file CostJbTotal.h.
|
private |
Definition at line 42 of file CostJbTotal.h.
|
private |
Definition at line 43 of file CostJbTotal.h.
oops::CostJbTotal< MODEL >::CostJbTotal | ( | const CtrlVar_ & | xb, |
JbState_ * | jb, | ||
const eckit::Configuration & | conf, | ||
const Geometry_ & | resol | ||
) |
Construct \( J_b\).
Definition at line 111 of file CostJbTotal.h.
|
inline |
Destructor.
Definition at line 50 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::addGradientFG | ( | CtrlInc_ & | grad | ) | const |
Add Jb gradient at first guess.
Definition at line 219 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::addGradientFG | ( | CtrlInc_ & | grad, |
CtrlInc_ & | gradJb | ||
) | const |
|
private |
double oops::CostJbTotal< MODEL >::finalize | ( | JqTerm_ * | jqnl | ) | const |
Finalize computation after nonlinear model integration.
Definition at line 133 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::finalizeAD | ( | JqTermTLAD_ * | jqad | ) | const |
Definition at line 264 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::finalizeTL | ( | JqTermTLAD_ * | jqtl, |
const CtrlInc_ & | bgns, | ||
CtrlInc_ & | dx | ||
) | const |
Definition at line 245 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::finalizeTraj | ( | JqTermTLAD_ * | jqlin | ) |
|
inline |
Return background.
Definition at line 80 of file CostJbTotal.h.
|
inline |
Return first guess \( x_0-x_b\).
Definition at line 83 of file CostJbTotal.h.
JqTerm< MODEL > * oops::CostJbTotal< MODEL >::initialize | ( | const CtrlVar_ & | fg | ) | const |
Initialize before nonlinear model integration.
Definition at line 124 of file CostJbTotal.h.
JqTermTLAD< MODEL > * oops::CostJbTotal< MODEL >::initializeAD | ( | CtrlInc_ & | bgns, |
const CtrlInc_ & | dx | ||
) | const |
Initialize before starting the AD run.
Definition at line 254 of file CostJbTotal.h.
JqTermTLAD< MODEL > * oops::CostJbTotal< MODEL >::initializeTL | ( | ) | const |
Initialize before starting the TL run.
Definition at line 237 of file CostJbTotal.h.
JqTermTLAD< MODEL > * oops::CostJbTotal< MODEL >::initializeTraj | ( | const CtrlVar_ & | fg, |
const Geometry_ & | resol | ||
) |
|
inline |
Definition at line 88 of file CostJbTotal.h.
|
inline |
Definition at line 89 of file CostJbTotal.h.
|
inline |
Definition at line 87 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::multiplyB | ( | const CtrlInc_ & | dxin, |
CtrlInc_ & | dxout | ||
) | const |
Multiply by covariance matrix and its inverse.
Definition at line 271 of file CostJbTotal.h.
void oops::CostJbTotal< MODEL >::multiplyBinv | ( | const CtrlInc_ & | dxin, |
CtrlInc_ & | dxout | ||
) | const |
void oops::CostJbTotal< MODEL >::randomize | ( | CtrlInc_ & | dx | ) | const |
|
inline |
Jb terms for ControlIncrement constructor.
Definition at line 86 of file CostJbTotal.h.
|
private |
First guess increment \(x_0-x_b\) or more generally \( x_i-M(x_{i-1})\).
Definition at line 102 of file CostJbTotal.h.
|
mutableprivate |
Definition at line 99 of file CostJbTotal.h.
|
private |
Definition at line 95 of file CostJbTotal.h.
|
private |
Definition at line 96 of file CostJbTotal.h.
|
private |
Definition at line 97 of file CostJbTotal.h.
|
private |
Inner loop resolution.
Definition at line 105 of file CostJbTotal.h.
|
private |
Definition at line 94 of file CostJbTotal.h.