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

Detailed Description

Reads user provided gridded data on the disk. The grids are all in the GRID2DPATH directory given in the [Input] section or in one of its sub-directories that is given as the algorithm's argument (optional). By default, the file extension is assumed to be ".asc" but it is possible to provide as second argument another file extension (then it is mandatory to also provide a sub-directory argument in first position). The files must be named according to the following schema: {numeric date with second resolution}_{capitalized meteo parameter}.{ext}, for example 20081201150000_TA.asc The meteo parameters can be found in MeteoData. Example of use:

TA::algorithms = USER # read grids from GRID2DPATH using the GRID2D plugin
VW::algorithms = USER # read grids from GRID2DPATH/wind
VW::user = wind
HNW::algorithms = USER # read grids from GRID2DPATH/precip with the ".dat" extension
HNW::user = precip .dat

If no grid exists for a given timestamp and parameter, the algorithm returns a zero rating so any other interpolation algorithm can pickup and provide a fallback. Therefore, it is not necessary to provide grids for all time steps but one can focuss on only the relevant and interesting time steps.

#include <UserAlgorithm.h>

Public Member Functions

 USERInterpolation (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::USERInterpolation::USERInterpolation ( Meteo2DInterpolator i_mi,
const std::vector< std::string > &  i_vecArgs,
const std::string &  i_algo,
TimeSeriesManager i_tsmanager,
GridsManager i_gridsmanager 
)
inline

Member Function Documentation

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

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