MeteoIODoc 20240329.18c31bd1
mio::EditingCreate Class Reference

Detailed Description

CREATE input editing command.

By calling a choice of algorithms, it is possible to convert a parameter into another one (for example, a dew point temperature to a relative humidity), to generate a parameter thanks to a parametrization based on other parameters (for example ILWR based on TA, RH and ISWR) or to generate synthetic values (for example, a purely yearly sinusoidal variation for TA). This input editing command takes two fixed options as well as an undefined number of options depending on the generator algorithm that has been chosen:

Then the arguments of the chosen data generator algorithm must also be provided (according to its documentation).

If the destination parameter does not exists, it will be created. Otherwise, any pre-existing data is kept and only missing values in the original data set are filled with the generated values, keeping the original sampling rate. As the available algorithms are the same as for the data generators, they are listed in the data generators section (but the data creators must be declared here in the [InputEditing] section as part of the Input Data Editing stack).

[InputEditing]
DAV::edit1 = CREATE
DAV::arg1::algorithm = CST ;use a constant data generator
DAV::arg1::param = RH ;generate data for the Relative Humidity (RH)
DAV::arg1::value = 0.7 ;generate a constant value of 0.7 whenever there is no other data for RH

#include <DataEditingAlgorithms.h>

Public Member Functions

 EditingCreate (const std::string &i_stationID, const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
 
virtual void editTimeSeries (std::vector< METEO_SET > &vecMeteo)
 Apply this editing block. More...
 
- Public Member Functions inherited from mio::EditingBlock
 EditingBlock (const std::string &i_stationID, const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
 
virtual ~EditingBlock ()
 
virtual void editTimeSeries (std::vector< METEO_SET > &vecMeteo)
 Apply this editing block. More...
 
virtual void editTimeSeries (STATIONS_SET &vecStation)
 Apply this editing block to the StationData. More...
 
virtual std::set< std::string > requiredIDs () const
 Get the station IDs this editing block depends on for this station. More...
 
virtual std::set< std::string > providedIDs () const
 Get the station IDs this editing block provides based on this station. More...
 
virtual std::set< std::string > purgeIDs () const
 Get the station IDs to purge after using them for this station ID. More...
 
const std::string toString () const
 

Additional Inherited Members

- Protected Member Functions inherited from mio::EditingBlock
std::string getName () const
 
bool skipStation (const std::vector< MeteoData > &vecMeteo) const
 Return true if this station ID should be skipped. More...
 
METEO_SET timeFilterFromStation (const METEO_SET &vecMeteo) const
 Prepare a station that will be merged in case of time restrictions. More...
 
- Static Protected Member Functions inherited from mio::EditingBlock
static std::set< std::string > initStationSet (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &keyword)
 
- Protected Attributes inherited from mio::EditingBlock
const std::set< std::string > excluded_stations
 
const std::set< std::string > kept_stations
 
const std::vector< DateRangetime_restrictions
 
const std::string stationID
 
const std::string block_name
 

Constructor & Destructor Documentation

◆ EditingCreate()

mio::EditingCreate::EditingCreate ( const std::string &  i_stationID,
const std::vector< std::pair< std::string, std::string > > &  vecArgs,
const std::string &  name,
const Config cfg 
)

Member Function Documentation

◆ editTimeSeries()

void mio::EditingCreate::editTimeSeries ( std::vector< METEO_SET > &  vecMeteo)
virtual

Apply this editing block.

This applies the editing block for its station that has been declared in the constructor on the provided MeteoData timeseries.

Parameters
vecMeteoMeteoData timeseries for all stations

Reimplemented from mio::EditingBlock.


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