MI - Fimex
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
MetNoFimex::HybridSigmaPressure1 Class Reference

Hybrid sigma pressure vertical coordinate, expressed with ap and b. More...

#include <fimex/coordSys/verticalTransform/HybridSigmaPressure1.h>

Inheritance diagram for MetNoFimex::HybridSigmaPressure1:
MetNoFimex::VerticalTransformation

Public Member Functions

 HybridSigmaPressure1 (const std::string &ap, const std::string &b, const std::string &ps, const std::string &p0="")
 
virtual ~HybridSigmaPressure1 ()
 
virtual std::string getName () const
 
virtual int getPreferredVerticalType () const
 the most natural vertical type, one of the MIFI_VINT_* in fimex/mifi_constants.h More...
 
virtual std::string getParameterString () const
 list the parameters More...
 
virtual bool isComplete () const
 
- Public Member Functions inherited from MetNoFimex::VerticalTransformation
virtual ~VerticalTransformation ()
 
virtual boost::shared_ptr< ToVLevelConvertergetConverter (const boost::shared_ptr< CDMReader > &reader, int verticalType, size_t unLimDimPos, boost::shared_ptr< const CoordinateSystem > cs, size_t nx, size_t ny, size_t nz, size_t nt) const
 
boost::shared_ptr< ToVLevelConvertergetConverter (const boost::shared_ptr< CDMReader > &reader, int verticalType, size_t unLimDimPos, boost::shared_ptr< const CoordinateSystem > cs) const
 same as getConverter, but determines nx, nz, nt using MetNoFimex::getSimpleAxes from CDMUtils More...
 

Static Public Member Functions

static const std::string NAME ()
 

Public Attributes

const std::string ap
 
const std::string b
 
const std::string ps
 
const std::string p0
 

Protected Member Functions

virtual boost::shared_ptr< ToVLevelConvertergetPressureConverter (const boost::shared_ptr< CDMReader > &reader, size_t unLimDimPos, boost::shared_ptr< const CoordinateSystem > cs, size_t nx, size_t ny, size_t nt) const
 
- Protected Member Functions inherited from MetNoFimex::VerticalTransformation
virtual boost::shared_ptr< ToVLevelConvertergetAltitudeConverter (const boost::shared_ptr< CDMReader > &reader, size_t unLimDimPos, boost::shared_ptr< const CoordinateSystem > cs, size_t nx, size_t ny, size_t nz, size_t nt) const
 
virtual boost::shared_ptr< ToVLevelConvertergetHeightConverter (const boost::shared_ptr< CDMReader > &reader, size_t unLimDimPos, boost::shared_ptr< const CoordinateSystem > cs, size_t nx, size_t ny, size_t nz, size_t nt) const
 

Detailed Description

Hybrid sigma pressure vertical coordinate, expressed with ap and b.

Constructor & Destructor Documentation

MetNoFimex::HybridSigmaPressure1::HybridSigmaPressure1 ( const std::string ap,
const std::string b,
const std::string ps,
const std::string p0 = "" 
)
inline

Initialize HybridSigmaPressure with formula p(k, x,y,t) = ap(k) + b(k)*ps(x,y,t)

Parameters
apparameter in pressure unit
bdimensionless parameter
pssurface pressure variable name
p0optional p0 base-pressure, not needed for transformations
virtual MetNoFimex::HybridSigmaPressure1::~HybridSigmaPressure1 ( )
inlinevirtual

Member Function Documentation

virtual std::string MetNoFimex::HybridSigmaPressure1::getName ( ) const
inlinevirtual
Returns
same as static NAME()

Implements MetNoFimex::VerticalTransformation.

References NAME().

virtual std::string MetNoFimex::HybridSigmaPressure1::getParameterString ( ) const
inlinevirtual

list the parameters

Implements MetNoFimex::VerticalTransformation.

References p0.

virtual int MetNoFimex::HybridSigmaPressure1::getPreferredVerticalType ( ) const
inlinevirtual

the most natural vertical type, one of the MIFI_VINT_* in fimex/mifi_constants.h

Implements MetNoFimex::VerticalTransformation.

References MIFI_VINT_PRESSURE.

virtual boost::shared_ptr<ToVLevelConverter> MetNoFimex::HybridSigmaPressure1::getPressureConverter ( const boost::shared_ptr< CDMReader > &  reader,
size_t  unLimDimPos,
boost::shared_ptr< const CoordinateSystem cs,
size_t  nx,
size_t  ny,
size_t  nt 
) const
protectedvirtual
virtual bool MetNoFimex::HybridSigmaPressure1::isComplete ( ) const
inlinevirtual

Indicate if all parameters are given to fully describe the transformation.

Even a fully described transformation does not guarantee that a converter exists (e.g. height -> altitude requires in addition topography).

And converters might exist, even if a transformation is not complete.

Implements MetNoFimex::VerticalTransformation.

References getPressureConverter().

static const std::string MetNoFimex::HybridSigmaPressure1::NAME ( )
inlinestatic

static NAME constant

Returns
atmosphere_hybrid_sigma_pressure_coordinate_1

Referenced by getName().

Member Data Documentation

const std::string MetNoFimex::HybridSigmaPressure1::ap
const std::string MetNoFimex::HybridSigmaPressure1::b
const std::string MetNoFimex::HybridSigmaPressure1::p0

Referenced by getParameterString().

const std::string MetNoFimex::HybridSigmaPressure1::ps

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