|
OOPS
|
Interface class for the geometry of the model/state space. More...
#include <Geometry.h>


Public Types | |
| typedef TParameters_IfAvailableElseFallbackType_t< Geometry_, GenericParameters > | Parameters_ |
Public Member Functions | |
| Geometry (const Parameters_ &, const eckit::mpi::Comm &) | |
| Constructors from yaml (and mpi communicator), implement one (using Parameters preferred) More... | |
| Geometry (const eckit::Configuration &, const eckit::mpi::Comm &) | |
| Geometry (std::shared_ptr< const Geometry_ >) | |
| Constructor from pointer to the MODEL::Geometry (used in 1DVar filter) More... | |
| virtual | ~Geometry () |
| Destructor (overridden for timer and log purposes) More... | |
| GeometryIterator_ | begin () const |
| Iterator to the first gridpoint of Geometry (only used in LocalEnsembleDA) More... | |
| GeometryIterator_ | end () const |
| Iterator to the past-the-end gridpoint of Geometry (only used in LocalEnsembleDA) More... | |
| std::vector< double > | verticalCoord (std::string &) const |
| Values of vertical coordinate in units specified by string (only used in GETKF) More... | |
| std::vector< size_t > | variableSizes (const Variables &) const |
| const eckit::mpi::Comm & | getComm () const |
| Accessor to the geometry communicator. More... | |
| atlas::FunctionSpace * | atlasFunctionSpace () const |
| atlas::FieldSet * | atlasFieldSet () const |
| const Geometry_ & | geometry () const |
Static Public Member Functions | |
| static const std::string | classname () |
Protected Attributes | |
| std::shared_ptr< const Geometry_ > | geom_ |
Private Types | |
| typedef MODEL::Geometry | Geometry_ |
| typedef GeometryIterator< MODEL > | GeometryIterator_ |
Private Member Functions | |
| void | print (std::ostream &) const |
| pointer to the Geometry implementation More... | |
Interface class for the geometry of the model/state space.
Can contain information about model resolution, gridpoints, MPI distribution
Note: implementations of this interface can opt to extract their settings either from a Configuration object or from a subclass of Parameters.
In the former case, they should provide a constructor with the following signature:
Geometry(const eckit::LocalConfiguration &, const eckit::mpi::Comm &);
In the latter case, the implementer should first define a subclass of Parameters holding the settings of the geometry in question. The implementation of the Geometry interface should then typedef Parameters_ to the name of that subclass and provide a constructor with the following signature:
Geometry(const Parameters_ &, const eckit::mpi::Comm &);
Definition at line 60 of file oops/interface/Geometry.h.
|
private |
Definition at line 62 of file oops/interface/Geometry.h.
|
private |
Definition at line 63 of file oops/interface/Geometry.h.
| typedef TParameters_IfAvailableElseFallbackType_t<Geometry_, GenericParameters> oops::interface::Geometry< MODEL >::Parameters_ |
Set to Geometry_::Parameters_ if Geometry_ provides a type called Parameters_ and to GenericParameters (a thin wrapper of an eckit::LocalConfiguration object) if not.
Definition at line 68 of file oops/interface/Geometry.h.
| oops::interface::Geometry< MODEL >::Geometry | ( | const Parameters_ & | parameters, |
| const eckit::mpi::Comm & | comm | ||
| ) |
Constructors from yaml (and mpi communicator), implement one (using Parameters preferred)
Definition at line 120 of file oops/interface/Geometry.h.

| oops::interface::Geometry< MODEL >::Geometry | ( | const eckit::Configuration & | config, |
| const eckit::mpi::Comm & | comm | ||
| ) |
Definition at line 112 of file oops/interface/Geometry.h.
|
explicit |
Constructor from pointer to the MODEL::Geometry (used in 1DVar filter)
Definition at line 133 of file oops/interface/Geometry.h.
|
virtual |
Destructor (overridden for timer and log purposes)
Definition at line 142 of file oops/interface/Geometry.h.
|
inline |
Definition at line 96 of file oops/interface/Geometry.h.
|
inline |
Definition at line 95 of file oops/interface/Geometry.h.
| GeometryIterator< MODEL > oops::interface::Geometry< MODEL >::begin |
Iterator to the first gridpoint of Geometry (only used in LocalEnsembleDA)
Definition at line 152 of file oops/interface/Geometry.h.

|
inlinestatic |
Definition at line 70 of file oops/interface/Geometry.h.

| GeometryIterator< MODEL > oops::interface::Geometry< MODEL >::end |
Iterator to the past-the-end gridpoint of Geometry (only used in LocalEnsembleDA)
Definition at line 183 of file oops/interface/Geometry.h.

|
inline |
Accessor to MODEL::Geometry, used in the other interface classes in oops. Does not need to be implemented.
Definition at line 100 of file oops/interface/Geometry.h.

|
inline |
Accessor to the geometry communicator.
Definition at line 94 of file oops/interface/Geometry.h.
|
private |
pointer to the Geometry implementation
Definition at line 193 of file oops/interface/Geometry.h.
| std::vector< size_t > oops::interface::Geometry< MODEL >::variableSizes | ( | const Variables & | vars | ) | const |
Returns number of values required to store each of the passed model variables vars at a single location (e.g. number of vertical levels). The returned vector should be the same size as vars and contain number of levels required for i-th variable in the i-th position.
Definition at line 172 of file oops/interface/Geometry.h.

| std::vector< double > oops::interface::Geometry< MODEL >::verticalCoord | ( | std::string & | str | ) | const |
Values of vertical coordinate in units specified by string (only used in GETKF)
Definition at line 162 of file oops/interface/Geometry.h.

|
protected |
Definition at line 103 of file oops/interface/Geometry.h.