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

Base class for generic variable transform. More...

#include <LinearVariableChangeBase.h>

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

Public Member Functions

 LinearVariableChangeBase (const eckit::Configuration &)
 
virtual ~LinearVariableChangeBase ()
 
void setInputVariables (const Variables &vars)
 
void setOutputVariables (const Variables &vars)
 
virtual void multiply (const Increment_ &, Increment_ &) const =0
 
virtual void multiplyInverse (const Increment_ &, Increment_ &) const =0
 
virtual void multiplyAD (const Increment_ &, Increment_ &) const =0
 
virtual void multiplyInverseAD (const Increment_ &, Increment_ &) const =0
 
Increment_ multiply (const Increment_ &) const
 
Increment_ multiplyInverse (const Increment_ &) const
 
Increment_ multiplyAD (const Increment_ &) const
 
Increment_ multiplyInverseAD (const Increment_ &) const
 

Private Types

typedef Geometry< MODEL > Geometry_
 
typedef Increment< MODEL > Increment_
 
typedef State< MODEL > State_
 

Private Member Functions

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

Private Attributes

boost::scoped_ptr< Variablesvarin_
 
boost::scoped_ptr< Variablesvarout_
 

Detailed Description

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

Base class for generic variable transform.

Definition at line 33 of file LinearVariableChangeBase.h.

Member Typedef Documentation

◆ Geometry_

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

Definition at line 35 of file LinearVariableChangeBase.h.

◆ Increment_

template<typename MODEL>
typedef Increment<MODEL> oops::LinearVariableChangeBase< MODEL >::Increment_
private

Definition at line 36 of file LinearVariableChangeBase.h.

◆ State_

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

Definition at line 37 of file LinearVariableChangeBase.h.

Constructor & Destructor Documentation

◆ LinearVariableChangeBase()

template<typename MODEL >
oops::LinearVariableChangeBase< MODEL >::LinearVariableChangeBase ( const eckit::Configuration &  conf)
explicit

Definition at line 141 of file LinearVariableChangeBase.h.

◆ ~LinearVariableChangeBase()

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

Definition at line 41 of file LinearVariableChangeBase.h.

Member Function Documentation

◆ multiply() [1/2]

template<typename MODEL>
virtual void oops::LinearVariableChangeBase< MODEL >::multiply ( const Increment_ ,
Increment_  
) const
pure virtual

◆ multiply() [2/2]

template<typename MODEL >
Increment< MODEL > oops::LinearVariableChangeBase< MODEL >::multiply ( const Increment_ dxin) const

Definition at line 159 of file LinearVariableChangeBase.h.

Here is the call graph for this function:

◆ multiplyAD() [1/2]

template<typename MODEL>
virtual void oops::LinearVariableChangeBase< MODEL >::multiplyAD ( const Increment_ ,
Increment_  
) const
pure virtual

◆ multiplyAD() [2/2]

template<typename MODEL >
Increment< MODEL > oops::LinearVariableChangeBase< MODEL >::multiplyAD ( const Increment_ dxin) const

Definition at line 169 of file LinearVariableChangeBase.h.

Here is the call graph for this function:

◆ multiplyInverse() [1/2]

template<typename MODEL>
virtual void oops::LinearVariableChangeBase< MODEL >::multiplyInverse ( const Increment_ ,
Increment_  
) const
pure virtual

◆ multiplyInverse() [2/2]

template<typename MODEL >
Increment< MODEL > oops::LinearVariableChangeBase< MODEL >::multiplyInverse ( const Increment_ dxin) const

Definition at line 179 of file LinearVariableChangeBase.h.

Here is the call graph for this function:

◆ multiplyInverseAD() [1/2]

template<typename MODEL>
virtual void oops::LinearVariableChangeBase< MODEL >::multiplyInverseAD ( const Increment_ ,
Increment_  
) const
pure virtual

◆ multiplyInverseAD() [2/2]

template<typename MODEL >
Increment< MODEL > oops::LinearVariableChangeBase< MODEL >::multiplyInverseAD ( const Increment_ dxin) const

Definition at line 189 of file LinearVariableChangeBase.h.

Here is the call graph for this function:

◆ print()

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

◆ setInputVariables()

template<typename MODEL>
void oops::LinearVariableChangeBase< MODEL >::setInputVariables ( const Variables vars)
inline

Definition at line 43 of file LinearVariableChangeBase.h.

◆ setOutputVariables()

template<typename MODEL>
void oops::LinearVariableChangeBase< MODEL >::setOutputVariables ( const Variables vars)
inline

Definition at line 44 of file LinearVariableChangeBase.h.

Member Data Documentation

◆ varin_

template<typename MODEL>
boost::scoped_ptr<Variables> oops::LinearVariableChangeBase< MODEL >::varin_
private

Definition at line 58 of file LinearVariableChangeBase.h.

◆ varout_

template<typename MODEL>
boost::scoped_ptr<Variables> oops::LinearVariableChangeBase< MODEL >::varout_
private

Definition at line 59 of file LinearVariableChangeBase.h.


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