Data aggregation.
This aggregates the input data over the defined window with the defined aggregation algorithm. It takes as arguments all the window parameters as defined in WindowedFilter::setWindowFParams() as well as the following:
Remarks: nodata values are excluded from the aggregation
#include <ProcAggregate.h>
Public Member Functions | |
ProcAggregate (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name) | |
virtual void | process (const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) |
![]() | |
virtual | ~ProcessingBlock () |
virtual void | process (Date &dateStart, Date &dateEnd) |
std::string | getName () const |
const ProcessingProperties & | getProperties () const |
const std::string | toString () const |
bool | skipStation (const std::string &station_id) const |
bool | noStationsRestrictions () const |
Additional Inherited Members | |
![]() | |
enum | Centering { left, center, right } |
![]() | |
static void | readCorrections (const std::string &filter, const std::string &filename, std::vector< double > &X, std::vector< double > &Y) |
static void | readCorrections (const std::string &filter, const std::string &filename, std::vector< double > &X, std::vector< double > &Y1, std::vector< double > &Y2) |
static std::vector< double > | readCorrections (const std::string &filter, const std::string &filename, const size_t &col_idx, const char &c_type, const double &init) |
static std::vector< offset_spec > | readCorrections (const std::string &filter, const std::string &filename, const double &TZ, const size_t &col_idx=2) |
static std::map< std::string, std::vector< dates_range > > | readDates (const std::string &filter, const std::string &filename, const double &TZ) |
static std::set< std::string > | initStationSet (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &keyword) |
![]() | |
WindowedFilter (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const bool &skipWindowParams=false) | |
Construct a WindowedFilter Object. This is for filters that require a certain window of data. More... | |
void | setWindowFParams (const std::vector< std::pair< std::string, std::string > > &vecArgs) |
Parse the arguments in order to retrieve the user parameters for the data window. The following parameters are recognized: More... | |
const std::vector< const MeteoData * > & | get_window (const size_t &index, const std::vector< MeteoData > &ivec) |
A function that cuts out the desired window for the 'index' element within ivec, the window elements are stored into vec_window Calls to this function have to start with index 0, then 1, 2, 3, ... vec_window is not allowed to be changed between two calls. More... | |
bool | get_window_specs (const size_t &index, const std::vector< MeteoData > &ivec, size_t &start, size_t &end) const |
A function that computes the start and end for a window for the 'index' element from ivec The principle is to compute the first index that matches the minimum number of points criteria, and the one that matches the minimum time window, then combine them (with the equivalent of OR: we take the MIN index). Afterward, we compute the last index [...] for number of points and the last index [...] for the time window and combine them (with the equivalent of OR: we take the MIN index) or vice versa for right centering. More... | |
![]() | |
ProcessingBlock (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name) | |
protected constructor only to be called by children More... | |
![]() | |
static void | extract_dbl_vector (const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< double > &ovec) |
static void | extract_dbl_vector (const unsigned int ¶m, const std::vector< const MeteoData *> &ivec, std::vector< double > &ovec) |
![]() | |
Duration | min_time_span |
This is filled in the constructor by calling setWindowFParams. More... | |
Centering | centering |
This is filled in the constructor by calling setWindowFParams. More... | |
size_t | min_data_points |
This is filled in the constructor by calling setWindowFParams. More... | |
size_t | last_start |
size_t | last_end |
bool | is_soft |
![]() | |
const std::set< std::string > | excluded_stations |
const std::set< std::string > | kept_stations |
ProcessingProperties | properties |
const std::string | block_name |
![]() | |
static const double | soil_albedo = .23 |
static const double | snow_albedo = .85 |
static const double | snow_thresh = .1 |
parametrize the albedo from HS More... | |
mio::ProcAggregate::ProcAggregate | ( | const std::vector< std::pair< std::string, std::string > > & | vecArgs, |
const std::string & | name | ||
) |
|
virtual |
Implements mio::WindowedFilter.