OOPS
oops::Localization< MODEL > Class Template Reference

Abstract model-space localization class used by high level algorithms and applications. More...

#include <Localization.h>

Inheritance diagram for oops::Localization< MODEL >:
Collaboration diagram for oops::Localization< MODEL >:

Public Member Functions

 Localization (const Geometry_ &geometry, const eckit::Configuration &conf)
 Set up Localization for geometry, configured with conf. More...
 
 ~Localization ()
 
virtual void randomize (Increment_ &dx) const
 
virtual void multiply (Increment_ &dx) const
 

Static Public Member Functions

static const std::string classname ()
 

Private Types

typedef Geometry< MODEL > Geometry_
 
typedef Increment< MODEL > Increment_
 
typedef LocalizationBase< MODEL > LocBase_
 

Private Member Functions

void print (std::ostream &) const override
 Print, used in logging. More...
 

Private Attributes

std::unique_ptr< LocBase_loc_
 Pointer to the Localization implementation. More...
 

Detailed Description

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

Abstract model-space localization class used by high level algorithms and applications.

Note: to see methods that need to be implemented in a generic Localization implementation, see LocalizationBase class in generic/LocalizationBase.h. To see methods that need to be implemented in a MODEL-specific Localization implementation, see interface::LocalizationBase class in interface/LocalizationBase.h.

Definition at line 44 of file oops/base/Localization.h.

Member Typedef Documentation

◆ Geometry_

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

Definition at line 47 of file oops/base/Localization.h.

◆ Increment_

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

Definition at line 48 of file oops/base/Localization.h.

◆ LocBase_

template<typename MODEL >
typedef LocalizationBase<MODEL> oops::Localization< MODEL >::LocBase_
private

Definition at line 49 of file oops/base/Localization.h.

Constructor & Destructor Documentation

◆ Localization()

template<typename MODEL >
oops::Localization< MODEL >::Localization ( const Geometry_ geometry,
const eckit::Configuration &  conf 
)

Set up Localization for geometry, configured with conf.

Definition at line 77 of file oops/base/Localization.h.

◆ ~Localization()

template<typename MODEL >
oops::Localization< MODEL >::~Localization

Definition at line 87 of file oops/base/Localization.h.

Member Function Documentation

◆ classname()

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

Definition at line 52 of file oops/base/Localization.h.

◆ multiply()

template<typename MODEL >
void oops::Localization< MODEL >::multiply ( Increment_ dx) const
virtual

Apply 4D localization. All 3D blocks of the 4D localization matrix are the same (and defined by 3D localization loc_)

Definition at line 126 of file oops/base/Localization.h.

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

◆ print()

template<typename MODEL >
void oops::Localization< MODEL >::print ( std::ostream &  os) const
overrideprivate

Print, used in logging.

Definition at line 178 of file oops/base/Localization.h.

◆ randomize()

template<typename MODEL >
void oops::Localization< MODEL >::randomize ( Increment_ dx) const
virtual

Randomize dx and apply 4D localization. All 3D blocks of the 4D localization matrix are the same (and defined by 3D localization loc_)

Definition at line 97 of file oops/base/Localization.h.

Here is the call graph for this function:

Member Data Documentation

◆ loc_

template<typename MODEL >
std::unique_ptr<LocBase_> oops::Localization< MODEL >::loc_
private

Pointer to the Localization implementation.

Definition at line 71 of file oops/base/Localization.h.


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