18#ifndef TERRAINRADIATIONALGORITHM_H
19#define TERRAINRADIATIONALGORITHM_H
21#include <meteoio/MeteoIO.h>
43 virtual void getRadiation(mio::Array2D<double>& direct, mio::Array2D<double>& diffuse,
44 mio::Array2D<double>& terrain,
const mio::Array2D<double>& direct_unshaded_horizontal,
45 const mio::Array2D<double>& total_ilwr, mio::Array2D<double>& sky_ilwr,
46 mio::Array2D<double>& terrain_ilwr,
double solarAzimuth,
double solarElevation) = 0;
47 virtual void setMeteo(
const mio::Array2D<double>& albedo,
const mio::Array2D<double>& ta) = 0;
50 virtual void setSP(
const mio::Date ,
const double ,
const double ){}
51 virtual void writeSP(
const unsigned int ){}
bool operator_greater(const CellsList &a, const CellsList &b)
Definition: TerrainRadiationAlgorithm.h:33
Definition: TerrainRadiationAlgorithm.h:26
int y
Definition: TerrainRadiationAlgorithm.h:30
double radiation
Definition: TerrainRadiationAlgorithm.h:28
int x
Definition: TerrainRadiationAlgorithm.h:29
Definition: TerrainRadiationAlgorithm.h:37
virtual ~TerrainRadiationAlgorithm()
Definition: TerrainRadiationAlgorithm.cc:26
virtual void writeSP(const unsigned int)
Definition: TerrainRadiationAlgorithm.h:51
TerrainRadiationAlgorithm(const std::string &i_algo)
Definition: TerrainRadiationAlgorithm.h:39
bool hasSP()
Definition: TerrainRadiationAlgorithm.h:42
virtual void setSP(const mio::Date, const double, const double)
Definition: TerrainRadiationAlgorithm.h:50
const std::string algo
Definition: TerrainRadiationAlgorithm.h:49
bool _hasSP
Definition: TerrainRadiationAlgorithm.h:55
virtual void setMeteo(const mio::Array2D< double > &albedo, const mio::Array2D< double > &ta)=0
virtual void getSkyViewFactor(mio::Array2D< double > &o_sky_vf)=0
virtual void getRadiation(mio::Array2D< double > &direct, mio::Array2D< double > &diffuse, mio::Array2D< double > &terrain, const mio::Array2D< double > &direct_unshaded_horizontal, const mio::Array2D< double > &total_ilwr, mio::Array2D< double > &sky_ilwr, mio::Array2D< double > &terrain_ilwr, double solarAzimuth, double solarElevation)=0
Definition: TerrainRadiationAlgorithm.h:58
static TerrainRadiationAlgorithm * getAlgorithm(const mio::Config &cfg, const mio::DEMObject &dem, const int &nbworkers)
Definition: TerrainRadiationAlgorithm.cc:29