FV3 Bundle
oops::ModelBase< MODEL > Class Template Referenceabstract

Base class for encapsulation of the forecast model. More...

#include <ModelBase.h>

Inheritance diagram for oops::ModelBase< MODEL >:
[legend]
Collaboration diagram for oops::ModelBase< MODEL >:
[legend]

Public Member Functions

 ModelBase ()
 
virtual ~ModelBase ()
 
void initialize (State_ &) const
 
void step (State_ &, const ModelAux_ &) const
 
void finalize (State_ &) const
 
virtual const util::Duration & timeResolution () const =0
 
virtual const oops::Variablesvariables () const =0
 

Static Public Member Functions

static const std::string classname ()
 

Protected Member Functions

virtual void initialize (typename MODEL::State &) const =0
 
virtual void step (typename MODEL::State &, const typename MODEL::ModelAuxControl &) const =0
 
virtual void finalize (typename MODEL::State &) const =0
 

Private Types

typedef Geometry< MODEL > Geometry_
 
typedef ModelAuxControl< MODEL > ModelAux_
 
typedef State< MODEL > State_
 

Private Member Functions

virtual void print (std::ostream &) const =0
 

Detailed Description

template<typename MODEL>
class oops::ModelBase< MODEL >

Base class for encapsulation of the forecast model.

Defines the interfaces for a forecast model.

Definition at line 40 of file ModelBase.h.

Member Typedef Documentation

◆ Geometry_

template<typename MODEL>
typedef Geometry<MODEL> oops::ModelBase< MODEL >::Geometry_
private

Definition at line 42 of file ModelBase.h.

◆ ModelAux_

template<typename MODEL>
typedef ModelAuxControl<MODEL> oops::ModelBase< MODEL >::ModelAux_
private

Definition at line 43 of file ModelBase.h.

◆ State_

template<typename MODEL>
typedef State<MODEL> oops::ModelBase< MODEL >::State_
private

Definition at line 44 of file ModelBase.h.

Constructor & Destructor Documentation

◆ ModelBase()

template<typename MODEL>
oops::ModelBase< MODEL >::ModelBase ( )
inline

Definition at line 49 of file ModelBase.h.

◆ ~ModelBase()

template<typename MODEL>
virtual oops::ModelBase< MODEL >::~ModelBase ( )
inlinevirtual

Definition at line 50 of file ModelBase.h.

Member Function Documentation

◆ classname()

template<typename MODEL>
static const std::string oops::ModelBase< MODEL >::classname ( )
inlinestatic

Definition at line 47 of file ModelBase.h.

◆ finalize() [1/2]

template<typename MODEL >
void oops::ModelBase< MODEL >::finalize ( State_ xx) const

Definition at line 154 of file ModelBase.h.

◆ finalize() [2/2]

template<typename MODEL>
virtual void oops::ModelBase< MODEL >::finalize ( typename MODEL::State &  ) const
protectedpure virtual

◆ initialize() [1/2]

template<typename MODEL >
void oops::ModelBase< MODEL >::initialize ( State_ xx) const

Definition at line 134 of file ModelBase.h.

◆ initialize() [2/2]

template<typename MODEL>
virtual void oops::ModelBase< MODEL >::initialize ( typename MODEL::State &  ) const
protectedpure virtual

◆ print()

template<typename MODEL>
virtual void oops::ModelBase< MODEL >::print ( std::ostream &  ) const
privatepure virtual

◆ step() [1/2]

template<typename MODEL >
void oops::ModelBase< MODEL >::step ( State_ xx,
const ModelAux_ merr 
) const

Definition at line 144 of file ModelBase.h.

◆ step() [2/2]

template<typename MODEL>
virtual void oops::ModelBase< MODEL >::step ( typename MODEL::State &  ,
const typename MODEL::ModelAuxControl &   
) const
protectedpure virtual

◆ timeResolution()

template<typename MODEL>
virtual const util::Duration& oops::ModelBase< MODEL >::timeResolution ( ) const
pure virtual

◆ variables()

template<typename MODEL>
virtual const oops::Variables& oops::ModelBase< MODEL >::variables ( ) const
pure virtual

The documentation for this class was generated from the following file: