Curvature/slope influenced wind interpolation algorithm.
This is an implementation of the method described in G. E. Liston and K. Elder, "A meteorological distribution system for high-resolution terrestrial modeling (MicroMet)", Journal of Hydrometeorology, 7.2, 2006. The wind speed and direction are spatially interpolated using IDWLapseAlgorithm. Then, the wind speed and direction fields are altered by wind weighting factors and wind diverting factors (respectively) calculated from the local curvature and slope (as taken from the DEM, see DEMObject). The wind diverting factor is actually the same as in RyanAlgorithm. It takes the following arguments:
#include <ListonWindAlgorithm.h>
Public Member Functions | |
ListonWindAlgorithm (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &i_algo, const std::string &i_param, TimeSeriesManager &i_tsm) | |
virtual double | getQualityRating (const Date &i_date) |
virtual void | calculate (const DEMObject &dem, Grid2DObject &grid) |
Public Member Functions inherited from mio::InterpolationAlgorithm | |
InterpolationAlgorithm (const std::vector< std::pair< std::string, std::string > > &, const std::string &i_algo, const std::string &i_param, TimeSeriesManager &i_tsm) | |
virtual | ~InterpolationAlgorithm () |
std::string | getInfo () const |
Return an information string about the interpolation process. More... | |
Protected Member Functions | |
void | simpleWindInterpolate (const DEMObject &dem, Grid2DObject &VW, Grid2DObject &DW) |
Protected Member Functions inherited from mio::InterpolationAlgorithm | |
std::vector< double > | getData (const Date &i_date, const std::string &i_param) |
size_t | getData (const Date &i_date, const std::string &i_param, std::vector< double > &o_vecData, std::vector< StationData > &o_vecMeta) |
Protected Attributes | |
Trend | trend |
std::vector< double > | vecDataVW |
std::vector< double > | vecDataDW |
vectors of extracted VW and DW More... | |
double | eta |
double | scale |
double | alpha |
a scale parameter for calculating curvature, a scale parameter to smooth out the 1/dist and an exponent More... | |
size_t | param_idx |
bool | inputIsAllZeroes |
Protected Attributes inherited from mio::InterpolationAlgorithm | |
TimeSeriesManager & | tsmanager |
Date | date |
std::vector< MeteoData > | vecMeteo |
std::vector< double > | vecData |
store the measurement for the given parameter More... | |
std::vector< StationData > | vecMeta |
store the station data for the given parameter More... | |
std::ostringstream | info |
to store some extra information about the interplation process More... | |
const std::string | param |
the parameter that we will interpolate More... | |
size_t | nrOfMeasurments |
Number of stations that have been used, so this can be reported to the user. More... | |
Additional Inherited Members | |
Public Attributes inherited from mio::InterpolationAlgorithm | |
const std::string | algo |
mio::ListonWindAlgorithm::ListonWindAlgorithm | ( | const std::vector< std::pair< std::string, std::string > > & | vecArgs, |
const std::string & | i_algo, | ||
const std::string & | i_param, | ||
TimeSeriesManager & | i_tsm | ||
) |
|
virtual |
Implements mio::InterpolationAlgorithm.
Reimplemented in mio::RyanAlgorithm.
|
virtual |
Implements mio::InterpolationAlgorithm.
Reimplemented in mio::RyanAlgorithm.
|
protected |
|
protected |
a scale parameter for calculating curvature, a scale parameter to smooth out the 1/dist and an exponent
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
vectors of extracted VW and DW
|
protected |