|
MeteoIODoc 20251207.a703fe45
Environmental timeseries pre-processing
|
Correct precipitation for undercatch in winter conditions.
This implements the method for precipitation correction as described in "Computing actual precipitation", W. R. Hamon, in Distribution of precipitation in mountaineous areas, Geilo symposium 1, pp 159-174, World Meteorological Organization, Geneva, 1972. This correction depends on the usage of a shield around the gauge, therefore the type of rain gauge must be specified with the TYPE argument as one of:
#include <ProcUndercatch_Hamon.h>
Public Member Functions | |
| ProcUndercatch_Hamon (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg) | |
| virtual void | process (const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) override |
Public Member Functions inherited from mio::ProcessingBlock | |
| 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 |
| Should the provided station be skipped in the processing? | |
| bool | noStationsRestrictions () const |
| const std::vector< DateRange > | getTimeRestrictions () const |
| bool | skipHeight (const double &height) const |
| Should the provided height be skipped in the processing? | |
Additional Inherited Members | |
Static Public Member Functions inherited from mio::ProcessingBlock | |
| static void | readCorrections (const std::string &filter, const std::string &filename, std::vector< double > &X, std::vector< double > &Y) |
| Read a data file structured as X Y value on each lines. | |
| static void | readCorrections (const std::string &filter, const std::string &filename, std::vector< double > &X, std::vector< double > &Y1, std::vector< double > &Y2) |
| Read a data file structured as X Y1 Y2 value on each lines. | |
| 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) |
| Read a correction file applicable to repeating time period. | |
| static std::vector< offset_spec > | readCorrections (const std::string &filter, const std::string &filename, const double &TZ, const size_t &col_idx=2) |
| Read a correction file, ie a file structured as timestamps followed by values on each lines. | |
| static std::map< std::string, std::vector< DateRange > > | readDates (const std::string &filter, const std::string &filename, const double &TZ) |
| Read a list of date ranges by stationIDs from a file. | |
Static Public Attributes inherited from mio::ProcessingBlock | |
| static const double | default_height |
Protected Member Functions inherited from mio::ProcessingBlock | |
| ProcessingBlock (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg) | |
| protected constructor only to be called by children | |
Static Protected Member Functions inherited from mio::ProcessingBlock | |
| 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) |
Protected Attributes inherited from mio::ProcessingBlock | |
| const std::set< std::string > | excluded_stations |
| const std::set< std::string > | kept_stations |
| const std::vector< DateRange > | time_restrictions |
| std::set< double > | included_heights |
| std::set< double > | excluded_heights |
| bool | all_heights |
| ProcessingProperties | properties |
| const std::string | block_name |
| mio::ProcUndercatch_Hamon::ProcUndercatch_Hamon | ( | const std::vector< std::pair< std::string, std::string > > & | vecArgs, |
| const std::string & | name, | ||
| const Config & | cfg | ||
| ) |
|
overridevirtual |
Implements mio::ProcessingBlock.