OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
openswmm::climate Namespace Reference

Classes

struct  ClimateState
 

Enumerations

enum class  EvapMethod : int {
  CONSTANT = 0 ,
  MONTHLY = 1 ,
  TIMESERIES = 2 ,
  TEMPERATURE = 3 ,
  PAN = 4
}
 

Functions

double hargreaves (double latitude, int day_of_year, double t_avg, double t_range)
 Compute Hargreaves evapotranspiration.
 
void updateDailyClimate (ClimateState &state, int day_of_year, int month)
 Update daily climate state.
 
void batchDistributeEvap (double evap_rate, const double *ponded_depth, double *evap_out, int n, double dt)
 Batch distribute evaporation to all subcatchments.
 

Variables

constexpr double MM_PER_INCH = 25.40
 

Enumeration Type Documentation

◆ EvapMethod

enum class openswmm::climate::EvapMethod : int
strong
Enumerator
CONSTANT 
MONTHLY 
TIMESERIES 
TEMPERATURE 

Hargreaves method.

PAN 

Function Documentation

◆ batchDistributeEvap()

void openswmm::climate::batchDistributeEvap ( double  evap_rate,
const double *  ponded_depth,
double *  evap_out,
int  n,
double  dt 
)

Batch distribute evaporation to all subcatchments.

evap_out[i] = min(evap_rate, ponded_depth[i] / dt) This is a vectorisable clamp operation.

Parameters
evap_rateScalar evap rate (ft/sec).
ponded_depth[in] Per-subcatchment ponded depth (ft).
evap_out[out] Per-subcatchment actual evap rate (ft/sec).
nNumber of subcatchments.
dtTimestep (seconds).

◆ hargreaves()

double openswmm::climate::hargreaves ( double  latitude,
int  day_of_year,
double  t_avg,
double  t_range 
)

Compute Hargreaves evapotranspiration.

Parameters
latitudeLatitude (degrees).
day_of_yearDay of year (1-365).
t_avgAverage temperature (deg F).
t_rangeTemperature range (deg F).
Returns
Evaporation rate (in/day for US, mm/day for SI).
Here is the caller graph for this function:

◆ updateDailyClimate()

void openswmm::climate::updateDailyClimate ( ClimateState state,
int  day_of_year,
int  month 
)

Update daily climate state.

Parameters
state[in/out] Climate state.
day_of_yearDay of year.
monthMonth (0-11).
Here is the call graph for this function:

Variable Documentation

◆ MM_PER_INCH

constexpr double openswmm::climate::MM_PER_INCH = 25.40
constexpr