19#ifndef TAUCLDGENERATOR_H
20#define TAUCLDGENERATOR_H
88 typedef enum CLF_PARAMETRIZATION {
95 TauCLDGenerator(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& i_algo,
const std::string& i_section,
const double& TZ,
const Config &i_cfg);
98 bool generate(
const size_t& param,
MeteoData& md,
const std::vector<MeteoData>& vecMeteo);
99 bool create(
const size_t& param,
const size_t& ii_min,
const size_t& ii_max, std::vector<MeteoData>& vecMeteo);
113 std::map< std::string , std::vector< std::pair<double,double> > >
masks;
132 void addCloudiness(
const double& julian_gmt,
const double& cloudiness);
A class that reads a key/value file. These files (typically named *.ini) follow the INI file format s...
Definition: Config.h:79
A class to represent DEMs and automatically compute some properties. This class stores elevation grid...
Definition: DEMObject.h:40
Interface class for the generator models.
Definition: GeneratorAlgorithms.h:111
A class to represent a singular measurement received from one station at a certain time (represented ...
Definition: MeteoData.h:108
A class to represent meteo stations with attributes like longitude, latitude, etc.
Definition: StationData.h:41
A class to calculate Solar radiation characteristics This is largely based on M. Iqbal,...
Definition: Sun.h:37
Atmospheric transmissivity generator.
Definition: TauCLDGenerator.h:86
bool use_rswr
Definition: TauCLDGenerator.h:119
clf_parametrization cloudiness_model
Definition: TauCLDGenerator.h:118
double getHorizon(const MeteoData &md, const double &sun_azi)
Definition: TauCLDGenerator.cc:116
std::string horizons_outfile
Definition: TauCLDGenerator.h:114
std::map< std::string, cloudCache > last_cloudiness
Definition: TauCLDGenerator.h:112
DEMObject dem
Definition: TauCLDGenerator.h:116
bool use_rad_threshold
Definition: TauCLDGenerator.h:119
clf_parametrization
Definition: TauCLDGenerator.h:88
@ CLF_CRAWFORD
Definition: TauCLDGenerator.h:92
@ KASTEN
Definition: TauCLDGenerator.h:91
@ DEFAULT
Definition: TauCLDGenerator.h:89
@ CLF_LHOMME
Definition: TauCLDGenerator.h:90
bool use_horizons
Definition: TauCLDGenerator.h:120
bool generate(const size_t ¶m, MeteoData &md, const std::vector< MeteoData > &vecMeteo)
Definition: TauCLDGenerator.cc:289
bool write_mask_out
Definition: TauCLDGenerator.h:120
static std::vector< std::pair< double, double > > computeMask(const DEMObject &i_dem, const StationData &sd)
Definition: TauCLDGenerator.cc:104
double computeCloudiness(const MeteoData &md, bool &is_night)
Compute the atmospheric cloudiness from the available measurements.
Definition: TauCLDGenerator.cc:226
double getCloudiness(const MeteoData &md)
Return the atmospheric cloudiness.
Definition: TauCLDGenerator.cc:176
double interpolateCloudiness(const std::string &station_hash, const double &julian_gmt) const
Definition: TauCLDGenerator.cc:141
bool create(const size_t ¶m, const size_t &ii_min, const size_t &ii_max, std::vector< MeteoData > &vecMeteo)
Fill one time series of MeteoData for one station.
Definition: TauCLDGenerator.cc:300
SunObject sun
Definition: TauCLDGenerator.h:117
TauCLDGenerator(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &i_algo, const std::string &i_section, const double &TZ, const Config &i_cfg)
Definition: TauCLDGenerator.cc:29
double getClearness(const double &cloudiness) const
Compute the clearness index from an atmospheric cloudiness value.
Definition: TauCLDGenerator.cc:92
~TauCLDGenerator()
Definition: TauCLDGenerator.cc:74
const Config & cfg
Definition: TauCLDGenerator.h:115
std::map< std::string, std::vector< std::pair< double, double > > > masks
Definition: TauCLDGenerator.h:113
bool from_dem
Definition: TauCLDGenerator.h:120
const double nodata
This is the internal nodata value.
Definition: IOUtils.h:75
This is a small helper structure to store pairs of <timestamp, cloudiness> values for caching.
Definition: TauCLDGenerator.h:128
void addCloudiness(const double &julian_gmt, const double &cloudiness)
Add a cloudiness value to the cache.
Definition: TauCLDGenerator.cc:162
std::pair< double, double > last_valid
Definition: TauCLDGenerator.h:134
CLOUDCACHE(const double &julian_gmt, const double &cloudiness)
Definition: TauCLDGenerator.h:130
CLOUDCACHE()
Definition: TauCLDGenerator.h:129