OOPS
oops::interface::LocalizationBase< MODEL > Class Template Referenceabstract

#include <LocalizationBase.h>

Inheritance diagram for oops::interface::LocalizationBase< MODEL >:
Collaboration diagram for oops::interface::LocalizationBase< MODEL >:

Public Member Functions

 LocalizationBase ()=default
 
virtual ~LocalizationBase ()=default
 
void randomize (oops::Increment< MODEL > &dx) const final
 
void multiply (oops::Increment< MODEL > &dx) const final
 Apply 3D localization to dx. More...
 
virtual void randomize (Increment_ &dx) const =0
 Randomize dx and apply 3D localization. More...
 
virtual void multiply (Increment_ &dx) const =0
 Apply 3D localization to dx. More...
 
- Public Member Functions inherited from oops::LocalizationBase< MODEL >
 LocalizationBase ()=default
 

Static Public Member Functions

static const std::string classname ()
 

Private Types

typedef MODEL::Increment Increment_
 

Detailed Description

template<typename MODEL>
class oops::interface::LocalizationBase< MODEL >

Base class for MODEL-specific implementations of the Loclaization interface. interface::LocalizationBase overrides oops::LocalizationBase methods to pass MODEL-specific implementation of Increment to the MODEL-specific implementation of Localization.

Note: subclasses need to provide a constructor with the following signature:

LocalizationBase(const MODEL::Geometry &, const eckit::Configuration &);

Definition at line 43 of file interface/LocalizationBase.h.

Member Typedef Documentation

◆ Increment_

template<typename MODEL >
typedef MODEL::Increment oops::interface::LocalizationBase< MODEL >::Increment_
private

Definition at line 44 of file interface/LocalizationBase.h.

Constructor & Destructor Documentation

◆ LocalizationBase()

template<typename MODEL >
oops::interface::LocalizationBase< MODEL >::LocalizationBase ( )
default

◆ ~LocalizationBase()

template<typename MODEL >
virtual oops::interface::LocalizationBase< MODEL >::~LocalizationBase ( )
virtualdefault

Reimplemented from oops::LocalizationBase< MODEL >.

Member Function Documentation

◆ classname()

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

Definition at line 46 of file interface/LocalizationBase.h.

◆ multiply() [1/2]

template<typename MODEL >
virtual void oops::interface::LocalizationBase< MODEL >::multiply ( Increment_ dx) const
pure virtual

Apply 3D localization to dx.

Implements oops::LocalizationBase< MODEL >.

◆ multiply() [2/2]

template<typename MODEL >
void oops::interface::LocalizationBase< MODEL >::multiply ( oops::Increment< MODEL > &  dx) const
inlinefinalvirtual

Apply 3D localization to dx.

Implements oops::LocalizationBase< MODEL >.

Definition at line 55 of file interface/LocalizationBase.h.

◆ randomize() [1/2]

template<typename MODEL >
virtual void oops::interface::LocalizationBase< MODEL >::randomize ( Increment_ dx) const
pure virtual

Randomize dx and apply 3D localization.

Implements oops::LocalizationBase< MODEL >.

◆ randomize() [2/2]

template<typename MODEL >
void oops::interface::LocalizationBase< MODEL >::randomize ( oops::Increment< MODEL > &  dx) const
inlinefinalvirtual

Overrides for oops::LocalizationBase classes, passing MODEL-specific classes to the MODEL-specific implementations of Localization

Implements oops::LocalizationBase< MODEL >.

Definition at line 53 of file interface/LocalizationBase.h.


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