FV3 Bundle
oops Namespace Reference

The namespace for the main oops code. More...

Namespaces

 bump
 
 mpi
 

Classes

class  Accumulator
 
class  Application
 
class  BMatrix
 The \( B \) matrix. More...
 
class  ControlIncrement
 
class  ControlVariable
 Control variable. More...
 
class  CostFactory
 Cost Function Factory. More...
 
class  CostFct3DVar
 3D-Var Cost Function More...
 
class  CostFct4DEnsVar
 4D-Ens-Var Cost Function More...
 
class  CostFct4DVar
 Strong Constraint 4D-Var Cost Function. More...
 
class  CostFctWeak
 Weak Constraint 4D-Var Cost Function. More...
 
class  CostFunction
 Cost Function. More...
 
class  CostJb3D
 Jb Cost Function. More...
 
class  CostJb4D
 4D Jb Cost Function More...
 
class  CostJbJq
 Jb + Jq Cost Function. More...
 
class  CostJbState
 Jb Cost Function Base Class. More...
 
class  CostJbTotal
 Control variable increment. More...
 
class  CostJcDFI
 Jc DFI Cost Function. More...
 
class  CostJo
 Jo Cost Function. More...
 
class  CostMaker
 
class  CostTermBase
 Base Class for Cost Function Terms. More...
 
class  CovarianceFactory
 Covariance Factory. More...
 
class  CovarMaker
 
class  Departures
 Difference between two observation vectors. More...
 
class  DiagonalMatrix
 Diagonal matrix. More...
 
class  Dirac
 
class  DolphChebyshev
 
class  DRGMRESRMinimizer
 Derber-Rosati GMRESR Minimizer. More...
 
class  DRIPCGMinimizer
 Derber-Rosati IPCG Minimizer. More...
 
class  DRMinimizer
 DR (Derber and Rosati) Minimizers. More...
 
class  DRPCGMinimizer
 DRPCG Minimizer. More...
 
class  DRPFOMMinimizer
 DRPFOM Minimizer. More...
 
class  DRPLanczosMinimizer
 DRPLanczos Minimizer. More...
 
class  DualMinimizer
 Dual Minimizer. More...
 
class  DualVector
 Container of dual space vectors for all terms of the cost function. More...
 
class  EnsembleCovariance
 Generic ensemble based model space error covariance. More...
 
class  EnsemblesCollection
 
class  EnsForecast
 
class  EnsHofX
 
class  ErrorCovariance
 Wrapper for model space error covariances. More...
 
class  ErrorCovarianceBUMP
 Model space error covariance on generic unstructured grid. More...
 
class  EstimateParams
 
class  Example
 Doxygen brief comment. One line only. The comment must start with ///. More...
 
class  ExternalDFI
 
class  FGMRESMinimizer
 FGMRES Minimizer. More...
 
class  FilterBase
 Base class for QC filters applied to observations. More...
 
class  FilterFactory
 ObsFilter Factory. More...
 
class  FilterMaker
 
class  Forecast
 
class  GenEnsPertB
 
class  GeneralizedDepartures
 Abstract base class for quantities. More...
 
class  GeoLocation
 
class  Geometry
 
class  GeometryIterator
 
class  GeoVaLs
 
class  GeoVaLsWriter
 
class  GMRESRMinimizer
 GMRESR Minimizer. More...
 
class  GridPoint
 
class  HBHtMatrix
 The \( H B H^T \) matrix. More...
 
class  HessianMatrix
 The Hessian matrix: \( B^{-1} + H^T R^{-1} H \). More...
 
class  HMatrix
 The \( H \) matrix. More...
 
class  HofX
 
class  HtMatrix
 The \( H^T \) matrix. More...
 
class  HtRinvHMatrix
 The \( H^T R^{-1} H \) matrix. More...
 
class  HybridCovariance
 Generic hybrid static-ensemble model space error covariance. More...
 
class  IdentityMatrix
 Identity matrix. More...
 
class  IdVariableChange
 Lorenz 95: no change of variable. More...
 
class  Increment
 Increment Class: Difference between two states. More...
 
class  Increment4D
 State increment. More...
 
class  InterpolatorTraj
 
class  IPCGMinimizer
 IPCG Minimizer. More...
 
class  JqTerm
 
class  JqTermTLAD
 
class  LBGMRESRMinimizer
 LBGMRESR Minimizer. More...
 
class  LBHessianMatrix
 The Hessian matrix: \( I + B H^T R^{-1} H \). More...
 
class  LBMinimizer
 LB (Left B-preconditioned) Minimizers. More...
 
class  LinearModel
 Encapsulates the linear forecast model. More...
 
class  LinearModelBase
 Base class for encapsulation of the linear forecast model. More...
 
class  LinearModelFactory
 LinearModelFactory Factory. More...
 
class  LinearModelId
 Encapsulates the linear forecast model. More...
 
class  LinearModelMaker
 
class  LinearObsOperator
 
class  LinearObsOperators
 
class  LinearVariableChange
 Wrapper for change of variable. More...
 
class  LinearVariableChangeBase
 Base class for generic variable transform. More...
 
class  LinearVariableChangeFactory
 LinearVariableChangeFactory Factory. More...
 
class  LinearVariableChangeMaker
 
class  Localization
 
class  LocalizationBase
 Base class for localizations. More...
 
class  LocalizationBUMP
 BUMP localization matrix. More...
 
class  LocalizationFactory
 LocalizationFactory Factory. More...
 
class  LocalizationMaker
 
class  Locations
 
class  MakeObs
 
class  MinFactory
 Minimizer Factory. More...
 
class  Minimizer
 A Minimizer knows how to minimize a cost function. More...
 
class  MinMaker
 
class  MINRESMinimizer
 MINRES Minimizer. More...
 
class  Model
 Encapsulates the nonlinear forecast model. More...
 
class  ModelAuxControl
 
class  ModelAuxCovariance
 
class  ModelAuxIncrement
 
class  ModelBase
 Base class for encapsulation of the forecast model. More...
 
class  ModelFactory
 ModelFactory Factory. More...
 
class  ModelMaker
 
class  ModelSpaceCovarianceBase
 Abstract base class for model space error covariances. More...
 
class  ObsAuxControl
 
class  ObsAuxCovariance
 
class  ObsAuxIncrement
 
class  ObsCheck
 
class  ObsEnsemble
 Ensemble. More...
 
class  ObsErrorBase
 Base class for observation error covariance matrices. More...
 
class  ObsErrorCovariance
 Observation error covariance matrix. More...
 
class  ObsErrorDiag
 Diagonal observation error covariance matrix. More...
 
class  ObsErrorFactory
 ObsErrorFactory Factory. More...
 
class  ObsErrorMaker
 
class  ObsErrors
 
class  Observations
 Observations Class. More...
 
class  ObservationSpace
 
class  Observer
 Computes observation equivalent during model run. More...
 
class  ObserverTLAD
 Computes observation equivalent TL and AD to/from increments. More...
 
class  ObsFilter
 Controls application of QC filters to observations. More...
 
class  ObsFilters
 
class  ObsOperator
 
class  ObsOperators
 
class  ObsSpaceBase
 Base class for observation spaces. More...
 
class  ObsSpaces
 
class  ObsVector
 
class  ParametersBUMP
 BUMP diagnostics. More...
 
class  PCGMinimizer
 PCG Minimizer. More...
 
class  PLanczosMinimizer
 PLanczos Minimizer. More...
 
class  PostBase
 Handles post-processing of model fields. More...
 
class  PostBaseTLAD
 Handles post-processing of model fields related to cost function. More...
 
class  PostProcessor
 Control model post processing. More...
 
class  PostProcessorTLAD
 Control model post processing. More...
 
class  PostTimer
 Handles timing of post-processing and similar actions. More...
 
class  PrimalMinimizer
 Primal Minimizer. More...
 
class  PseudoModel
 Encapsulates a pseudo forecast model. More...
 
class  QNewtonLMP
 
class  RinvMatrix
 The \( R^{-1} \) matrix. More...
 
class  RPCGMinimizer
 RPCG Minimizer. More...
 
class  RPLanczosMinimizer
 RLanczos Minimizer. More...
 
class  Run
 Run encapsulates one OOPS run. More...
 
class  SaddlePointLMPMatrix
 The preconditioner for the saddle-point minimizer. More...
 
class  SaddlePointMatrix
 The Saddle-point matrix. More...
 
class  SaddlePointMinimizer
 SaddlePoint Minimizer. More...
 
class  SaddlePointPrecondMatrix
 The preconditioner for the saddle-point minimizer. More...
 
class  SaddlePointVector
 Control vector for the saddle point formulation. More...
 
class  SpectralLMP
 The solvers represent matrices as objects that implement a "multiply" method. More...
 
class  State
 Encapsulates the model state. More...
 
class  State4D
 Four dimensional state. More...
 
class  StateEnsemble
 Ensemble. More...
 
class  StateInfo
 Handles writing-out of forecast fields. More...
 
class  StateWriter
 Handles writing-out of forecast fields. More...
 
class  StaticBInit
 
class  StatsVariableChange
 Derived class of generic variable transform for statistical. More...
 
class  Test
 
class  TrajectorySaver
 Save trajectory during forecast run. More...
 
class  UnstructuredGrid
 
class  Variables
 
class  Variational
 
class  WeightedDiff
 Compute time average of states or increments during model run. More...
 
class  WeightedDiffTLAD
 Compute time average of states or increments during linear model run. More...
 
class  WeightedMean
 Compute time average of states or increments during model run. More...
 
class  WeightFactory
 Factory. More...
 
class  WeightingFct
 Weighting Function. More...
 
class  WeightMaker
 

Functions

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double FGMRES (VECTOR &x, const VECTOR &b, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double FullGMRES (VECTOR &xx, const VECTOR &bb, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance, std::vector< VECTOR > &pqVEC, std::vector< VECTOR > &xyVEC)
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double GMRESR (VECTOR &xx, const VECTOR &bb, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
template<typename MODEL >
void IncrementalAssimilation (ControlVariable< MODEL > &xx, CostFunction< MODEL > &J, const eckit::Configuration &config)
 
template<typename MODEL >
void instantiateCostFactory ()
 
template<typename MODEL >
void instantiateMinFactory ()
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double IPCG (VECTOR &x, const VECTOR &b, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double MINRES (VECTOR &x, const VECTOR &b, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double PCG (VECTOR &x, const VECTOR &b, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double PLanczos (VECTOR &xx, const VECTOR &bb, const AMATRIX &A, const PMATRIX &precond, const int maxiter, const double tolerance)
 
void rotmat (const double &a, const double &b, double &c, double &s)
 
void TriDiagSolve (const std::vector< double > &diag, const std::vector< double > &sub, const std::vector< double > &rhs, std::vector< double > &sol)
 
void TriDiagSpectrum (const std::vector< double > &diag, const std::vector< double > &sub, std::vector< double > &evals, std::vector< std::vector< double > > &evecs)
 
void UpHessSolve (std::vector< std::vector< double > > &UpHess, const std::vector< double > &rhs, std::vector< double > &sol)
 
void UpTriSolve (const std::vector< std::vector< double > > &H, const std::vector< double > &rhs, std::vector< double > &sol, const int &dim)
 
template<typename MODEL >
void instantiateCovarFactory ()
 
template<typename MODEL >
void instantiateFilterFactory ()
 
template<typename MODEL >
void instantiateLinearVariableChangeFactory ()
 
template<typename MODEL >
void instantiateLocalizationFactory ()
 
template<typename MODEL >
void instantiateModelFactory ()
 
template<typename MODEL >
void instantiateObsErrorFactory ()
 
template<typename MODEL >
void instantiateTlmFactory ()
 
void create_oobump_f90 (int &, const int &, const eckit::Configuration *const *, const int &, const int &, const int &, const int &)
 
void delete_oobump_f90 (const int &)
 
void add_oobump_member_f90 (const int &, const int &, const int &, const int &)
 
void run_oobump_drivers_f90 (const int &)
 
void multiply_oobump_vbal_f90 (const int &, const int &)
 
void multiply_oobump_vbal_inv_f90 (const int &, const int &)
 
void multiply_oobump_vbal_ad_f90 (const int &, const int &)
 
void multiply_oobump_vbal_inv_ad_f90 (const int &, const int &)
 
void multiply_oobump_nicas_f90 (const int &, const int &)
 
void get_oobump_cv_size_f90 (const int &, int &)
 
void multiply_oobump_nicas_sqrt_f90 (const int &, const double *, const int &)
 
void multiply_oobump_nicas_sqrt_ad_f90 (const int &, const int &, const double *)
 
void get_oobump_param_f90 (const int &, const int &, const char *, const int &)
 
void set_oobump_param_f90 (const int &, const int &, const char *, const int &)
 
void create_ug_f90 (int &)
 
void delete_ug_f90 (int &)
 
template<typename MODEL >
State< MODEL > & operator+= (State< MODEL > &xx, const Increment< MODEL > &dx)
 
template<typename MODEL >
ModelAuxControl< MODEL > & operator+= (ModelAuxControl< MODEL > &xx, const ModelAuxIncrement< MODEL > &dx)
 
template<typename MODEL >
ObsAuxControl< MODEL > & operator+= (ObsAuxControl< MODEL > &xx, const ObsAuxIncrement< MODEL > &dx)
 

Variables

static WeightMaker< DolphChebyshevmakerDolph_ ("DolphChebyshev")
 

Detailed Description

The namespace for the main oops code.

Function Documentation

◆ add_oobump_member_f90()

void oops::add_oobump_member_f90 ( const int &  ,
const int &  ,
const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ create_oobump_f90()

void oops::create_oobump_f90 ( int &  ,
const int &  ,
const eckit::Configuration *const *  ,
const int &  ,
const int &  ,
const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ create_ug_f90()

void oops::create_ug_f90 ( int &  )
Here is the caller graph for this function:

◆ delete_oobump_f90()

void oops::delete_oobump_f90 ( const int &  )
Here is the caller graph for this function:

◆ delete_ug_f90()

void oops::delete_ug_f90 ( int &  )
Here is the caller graph for this function:

◆ FGMRES()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::FGMRES ( VECTOR &  x,
const VECTOR &  b,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 68 of file FGMRES.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FullGMRES()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::FullGMRES ( VECTOR &  xx,
const VECTOR &  bb,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance,
std::vector< VECTOR > &  pqVEC,
std::vector< VECTOR > &  xyVEC 
)

Definition at line 67 of file FullGMRES.h.

Here is the call graph for this function:

◆ get_oobump_cv_size_f90()

void oops::get_oobump_cv_size_f90 ( const int &  ,
int &   
)

◆ get_oobump_param_f90()

void oops::get_oobump_param_f90 ( const int &  ,
const int &  ,
const char *  ,
const int &   
)
Here is the caller graph for this function:

◆ GMRESR()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::GMRESR ( VECTOR &  xx,
const VECTOR &  bb,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 63 of file GMRESR.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IncrementalAssimilation()

template<typename MODEL >
void oops::IncrementalAssimilation ( ControlVariable< MODEL > &  xx,
CostFunction< MODEL > &  J,
const eckit::Configuration &  config 
)

Definition at line 30 of file IncrementalAssimilation.h.

Here is the call graph for this function:

◆ instantiateCostFactory()

template<typename MODEL >
void oops::instantiateCostFactory ( )

Definition at line 22 of file instantiateCostFactory.h.

◆ instantiateCovarFactory()

template<typename MODEL >
void oops::instantiateCovarFactory ( )

Definition at line 23 of file instantiateCovarFactory.h.

◆ instantiateFilterFactory()

template<typename MODEL >
void oops::instantiateFilterFactory ( )

Definition at line 16 of file instantiateFilterFactory.h.

◆ instantiateLinearVariableChangeFactory()

template<typename MODEL >
void oops::instantiateLinearVariableChangeFactory ( )

Definition at line 20 of file instantiateLinearVariableChangeFactory.h.

◆ instantiateLocalizationFactory()

template<typename MODEL >
void oops::instantiateLocalizationFactory ( )

◆ instantiateMinFactory()

template<typename MODEL >
void oops::instantiateMinFactory ( )

Definition at line 34 of file instantiateMinFactory.h.

◆ instantiateModelFactory()

template<typename MODEL >
void oops::instantiateModelFactory ( )

Definition at line 16 of file instantiateModelFactory.h.

◆ instantiateObsErrorFactory()

template<typename MODEL >
void oops::instantiateObsErrorFactory ( )

Definition at line 19 of file instantiateObsErrorFactory.h.

◆ instantiateTlmFactory()

template<typename MODEL >
void oops::instantiateTlmFactory ( )

Definition at line 19 of file instantiateTlmFactory.h.

◆ IPCG()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::IPCG ( VECTOR &  x,
const VECTOR &  b,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 62 of file IPCG.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MINRES()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::MINRES ( VECTOR &  x,
const VECTOR &  b,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 66 of file MINRES.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ multiply_oobump_nicas_f90()

void oops::multiply_oobump_nicas_f90 ( const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ multiply_oobump_nicas_sqrt_ad_f90()

void oops::multiply_oobump_nicas_sqrt_ad_f90 ( const int &  ,
const int &  ,
const double *   
)

◆ multiply_oobump_nicas_sqrt_f90()

void oops::multiply_oobump_nicas_sqrt_f90 ( const int &  ,
const double *  ,
const int &   
)

◆ multiply_oobump_vbal_ad_f90()

void oops::multiply_oobump_vbal_ad_f90 ( const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ multiply_oobump_vbal_f90()

void oops::multiply_oobump_vbal_f90 ( const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ multiply_oobump_vbal_inv_ad_f90()

void oops::multiply_oobump_vbal_inv_ad_f90 ( const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ multiply_oobump_vbal_inv_f90()

void oops::multiply_oobump_vbal_inv_f90 ( const int &  ,
const int &   
)
Here is the caller graph for this function:

◆ operator+=() [1/3]

template<typename MODEL >
ObsAuxControl<MODEL>& oops::operator+= ( ObsAuxControl< MODEL > &  xx,
const ObsAuxIncrement< MODEL > &  dx 
)

Definition at line 75 of file oops/interface/ObsAuxIncrement.h.

Here is the call graph for this function:

◆ operator+=() [2/3]

template<typename MODEL >
ModelAuxControl<MODEL>& oops::operator+= ( ModelAuxControl< MODEL > &  xx,
const ModelAuxIncrement< MODEL > &  dx 
)

Definition at line 77 of file oops/interface/ModelAuxIncrement.h.

Here is the call graph for this function:

◆ operator+=() [3/3]

template<typename MODEL >
State<MODEL>& oops::operator+= ( State< MODEL > &  xx,
const Increment< MODEL > &  dx 
)

Definition at line 111 of file oops/interface/Increment.h.

Here is the call graph for this function:

◆ PCG()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::PCG ( VECTOR &  x,
const VECTOR &  b,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 63 of file PCG.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PLanczos()

template<typename VECTOR , typename AMATRIX , typename PMATRIX >
double oops::PLanczos ( VECTOR &  xx,
const VECTOR &  bb,
const AMATRIX &  A,
const PMATRIX &  precond,
const int  maxiter,
const double  tolerance 
)

Definition at line 62 of file PLanczos.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rotmat()

void oops::rotmat ( const double &  a,
const double &  b,
double &  c,
double &  s 
)

Definition at line 22 of file rotmat.h.

Here is the caller graph for this function:

◆ run_oobump_drivers_f90()

void oops::run_oobump_drivers_f90 ( const int &  )
Here is the caller graph for this function:

◆ set_oobump_param_f90()

void oops::set_oobump_param_f90 ( const int &  ,
const int &  ,
const char *  ,
const int &   
)
Here is the caller graph for this function:

◆ TriDiagSolve()

void oops::TriDiagSolve ( const std::vector< double > &  diag,
const std::vector< double > &  sub,
const std::vector< double > &  rhs,
std::vector< double > &  sol 
)

Definition at line 18 of file TriDiagSolve.h.

Here is the caller graph for this function:

◆ TriDiagSpectrum()

void oops::TriDiagSpectrum ( const std::vector< double > &  diag,
const std::vector< double > &  sub,
std::vector< double > &  evals,
std::vector< std::vector< double > > &  evecs 
)

Definition at line 25 of file TriDiagSpectrum.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpHessSolve()

void oops::UpHessSolve ( std::vector< std::vector< double > > &  UpHess,
const std::vector< double > &  rhs,
std::vector< double > &  sol 
)

Definition at line 28 of file UpHessSolve.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpTriSolve()

void oops::UpTriSolve ( const std::vector< std::vector< double > > &  H,
const std::vector< double > &  rhs,
std::vector< double > &  sol,
const int &  dim 
)

Definition at line 22 of file UpTriSolve.h.

Here is the caller graph for this function:

Variable Documentation

◆ makerDolph_

WeightMaker<DolphChebyshev> oops::makerDolph_("DolphChebyshev")
static