MeteoIODoc  MeteoIODoc-2.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mio::IDWLapseAlgorithm Class Reference

Detailed Description

Inverse Distance Weighting interpolation algorithm with elevation detrending/reprojection. The input data is detrended and the residuals are spatially interpolated using an Inverse Distance Weighting interpolation algorithm (see IDWAlgorithm). Then, each value is reprojected to the real elevation of the relative cell (re-trending). The lapse rate is either calculated from the data (if no extra argument is provided), or given by the user-provided the optional argument "idw_lapse". If followed by "soft", then an attempt to calculate the lapse rate from the data is made, any only if unsuccessful or too bad (r^2<0.6), then the user provided lapse rate is used as a fallback. If the optional user given lapse rate is followed by "frac", then the lapse rate is understood as a fractional lapse rate, that is a relative change of the value as a function of the elevation (for example, +0.05% per meters given as 0.0005). In this case, no attempt to calculate the fractional lapse from the data is made.

#include <IDWLapseAlgorithm.h>

Public Member Functions

 IDWLapseAlgorithm (Meteo2DInterpolator &i_mi, const std::vector< std::string > &i_vecArgs, const std::string &i_algo, TimeSeriesManager &i_tsmanager, GridsManager &i_gridsmanager)
 
virtual double getQualityRating (const Date &i_date, const MeteoData::Parameters &in_param)
 
virtual void calculate (const DEMObject &dem, Grid2DObject &grid)
 
- Public Member Functions inherited from mio::InterpolationAlgorithm
 InterpolationAlgorithm (Meteo2DInterpolator &i_mi, const std::vector< std::string > &i_vecArgs, const std::string &i_algo, TimeSeriesManager &i_tsmanager, GridsManager &i_gridsmanager)
 
virtual ~InterpolationAlgorithm ()
 
std::string getInfo () const
 Return an information string about the interpolation process. More...
 

Additional Inherited Members

- Public Attributes inherited from mio::InterpolationAlgorithm
const std::string algo
 
- Protected Member Functions inherited from mio::InterpolationAlgorithm
size_t getData (const Date &i_date, const MeteoData::Parameters &i_param, std::vector< double > &o_vecData)
 
size_t getData (const Date &i_date, const MeteoData::Parameters &i_param, std::vector< double > &o_vecData, std::vector< StationData > &o_vecMeta)
 
void getTrend (const std::vector< double > &vecAltitudes, const std::vector< double > &vecDat, Fit1D &trend) const
 Read the interpolation arguments and compute the trend accordingly. More...
 
void simpleWindInterpolate (const DEMObject &dem, const std::vector< double > &vecDataVW, const std::vector< double > &vecDataDW, Grid2DObject &VW, Grid2DObject &DW)
 
- Static Protected Member Functions inherited from mio::InterpolationAlgorithm
static size_t getStationAltitudes (const std::vector< StationData > &i_vecMeta, std::vector< double > &o_vecData)
 
static void detrend (const Fit1D &trend, const std::vector< double > &vecAltitudes, std::vector< double > &vecDat, const double &min_alt=-1e4, const double &max_alt=1e4)
 
static void retrend (const DEMObject &dem, const Fit1D &trend, Grid2DObject &grid, const double &min_alt=-1e4, const double &max_alt=1e4)
 
- Protected Attributes inherited from mio::InterpolationAlgorithm
Meteo2DInterpolatormi
 
TimeSeriesManagertsmanager
 
GridsManagergridsmanager
 
Date date
 
const std::vector< std::string > vecArgs
 
std::vector< MeteoDatavecMeteo
 
std::vector< double > vecData
 store the measurement for the given parameter More...
 
std::vector< StationDatavecMeta
 store the station data for the given parameter More...
 
std::ostringstream info
 to store some extra information about the interplation process More...
 
MeteoData::Parameters param
 the parameter that we will interpolate More...
 
size_t nrOfMeasurments
 the available number of measurements More...
 

Constructor & Destructor Documentation

mio::IDWLapseAlgorithm::IDWLapseAlgorithm ( Meteo2DInterpolator i_mi,
const std::vector< std::string > &  i_vecArgs,
const std::string &  i_algo,
TimeSeriesManager i_tsmanager,
GridsManager i_gridsmanager 
)

Member Function Documentation

void mio::IDWLapseAlgorithm::calculate ( const DEMObject dem,
Grid2DObject grid 
)
virtual
double mio::IDWLapseAlgorithm::getQualityRating ( const Date i_date,
const MeteoData::Parameters in_param 
)
virtual

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