OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
HydrologyHandler.cpp File Reference

Section handlers for [EVAPORATION], [TEMPERATURE], [SNOWPACKS], [AQUIFERS], [GROUNDWATER], [GWF], [LID_CONTROLS], and [LID_USAGE]. More...

#include "HydrologyHandler.hpp"
#include "../Tokenizer.hpp"
#include "../../core/SimulationContext.hpp"
#include "../../data/SubcatchData.hpp"
#include "../../data/HydrologyData.hpp"
#include "../../core/charconv_compat.hpp"
#include <charconv>
#include <string>
#include <algorithm>
#include <array>
Include dependency graph for HydrologyHandler.cpp:

Namespaces

namespace  openswmm
 
namespace  openswmm::input
 

Functions

void openswmm::input::handle_evaporation (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [EVAPORATION] into SimulationOptions evap fields.
 
void openswmm::input::handle_temperature (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [TEMPERATURE] into SimulationOptions temperature/wind/snow fields.
 
void openswmm::input::handle_snowpacks (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [SNOWPACKS] into SnowpackStore + snowpack_names.
 
void openswmm::input::handle_aquifers (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [AQUIFERS] into AquiferStore + aquifer_names.
 
void openswmm::input::handle_groundwater (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [GROUNDWATER] — link subcatchments to aquifers and nodes.
 
void openswmm::input::handle_gwf (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [GWF] — custom groundwater flow expressions (stored as raw text).
 
void openswmm::input::handle_lid_controls (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [LID_CONTROLS] into LidControlStore + lid_names.
 
void openswmm::input::handle_lid_usage (SimulationContext &ctx, const std::vector< std::string > &lines)
 Parse [LID_USAGE] into LidUsageStore.
 

Detailed Description

Section handlers for [EVAPORATION], [TEMPERATURE], [SNOWPACKS], [AQUIFERS], [GROUNDWATER], [GWF], [LID_CONTROLS], and [LID_USAGE].

[EVAPORATION] format

CONSTANT 0.0
MONTHLY 0.1 0.1 0.2 0.3 0.4 0.5 0.5 0.4 0.3 0.2 0.1 0.1
TIMESERIES EvapTS
FILE
RECOVERY patternName
DRY_ONLY NO
@ RECOVERY
Soil moisture recovery pattern.
Definition enums.h:582
@ TEMPERATURE
Temperature.
Definition enums.h:313
@ NO
No option.
Definition enums.h:1208

[TEMPERATURE] format

TIMESERIES TempTS
FILE "filename" StartDate
WINDSPEED MONTHLY 1.0 1.0 ... (12 values)
SNOWMELT divT ATIwt nrgRatio lat minMelt maxMelt
ADC IMPERVIOUS frac1 frac2 ... frac10
ADC PERVIOUS frac1 frac2 ... frac10
EXTERN DateTime StartDate
Definition globals.h:124
@ SNOWMELT
Snowmelt parameter set.
Definition enums.h:81
@ WINDSPEED
Wind speed.
Definition enums.h:311

[SNOWPACKS] format

SP1 PLOWABLE cmin cmax tbase fwfrac sd0 fw0 snn0
SP1 IMPERVIOUS cmin cmax tbase fwfrac sd0 fw0 snn0
SP1 PERVIOUS cmin cmax tbase fwfrac sd0 fw0 snn0
SP1 REMOVAL dSnow fOut fImp fPerv fImelt fToSubcatch SubcatchName
@ REMOVAL
Treatment stated as a removal.
Definition enums.h:868

[AQUIFERS] format

Name Por WP FC Ksat Kslope Tslope ETu ETs Seep Ebot Egw Umc [ETupat]

[GROUNDWATER] format

Subcatch Aquifer Node SurfEl A1 B1 A2 B2 A3 Twgr Hstar
EXTERN TSubcatch * Subcatch
Definition globals.h:151
EXTERN TNode * Node
Definition globals.h:154
EXTERN TAquifer * Aquifer
Definition globals.h:152

[LID_CONTROLS] format (multi-line per LID)

LID1 BC
LID1 SURFACE ...
LID1 SOIL ...
LID1 STORAGE ...
LID1 DRAIN ...
@ STORAGE
Storage node.
Definition enums.h:111
@ DRAIN
Definition lid.c:103
@ SOIL
Definition lid.c:99

[LID_USAGE] format

Subcatch LID Number Area Width InitSat FromImp ToPerv [RptFile] [DrainTo] [FromPerv]
@ LID
LID treatment units.
Definition enums.h:85
See also
Legacy reference: src/solver/input.c
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License