OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
Runtime Forcing API
Collaboration diagram for Runtime Forcing API:

Functions

SWMM_ENGINE_API int swmm_forcing_node_lat_inflow (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force a lateral inflow at a node.
 
SWMM_ENGINE_API int swmm_forcing_node_head_boundary (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force a head boundary at an outfall node.
 
SWMM_ENGINE_API int swmm_forcing_node_quality (SWMM_Engine engine, int node_idx, int pollutant_idx, double mass_rate, int mode, int persist)
 Force a quality mass flux at a node.
 
SWMM_ENGINE_API int swmm_forcing_link_flow (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force a flow in a link.
 
SWMM_ENGINE_API int swmm_forcing_link_setting (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force a control setting on a link (pump, orifice, weir, outlet).
 
SWMM_ENGINE_API int swmm_forcing_subcatch_rainfall (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force rainfall on a subcatchment (bypasses gage lookup).
 
SWMM_ENGINE_API int swmm_forcing_subcatch_evap (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force an evaporation rate on a subcatchment.
 
SWMM_ENGINE_API int swmm_forcing_gage_rainfall (SWMM_Engine engine, int idx, double value, int mode, int persist)
 Force rainfall on a rain gage (affects all linked subcatchments).
 
SWMM_ENGINE_API int swmm_forcing_clear (SWMM_Engine engine, int type, int idx)
 Clear forcing on a specific element and channel.
 
SWMM_ENGINE_API int swmm_forcing_clear_all (SWMM_Engine engine)
 Clear ALL forcings on ALL elements.
 

Detailed Description

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License

Function Documentation

◆ swmm_forcing_clear()

SWMM_ENGINE_API int swmm_forcing_clear ( SWMM_Engine  engine,
int  type,
int  idx 
)

Clear forcing on a specific element and channel.

Parameters
engineEngine handle.
typeForcing channel (SWMM_ForcingType enum).
idxElement index within that channel.
Returns
SWMM_OK or error code.

◆ swmm_forcing_clear_all()

SWMM_ENGINE_API int swmm_forcing_clear_all ( SWMM_Engine  engine)

Clear ALL forcings on ALL elements.

Parameters
engineEngine handle.
Returns
SWMM_OK or error code.

◆ swmm_forcing_gage_rainfall()

SWMM_ENGINE_API int swmm_forcing_gage_rainfall ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force rainfall on a rain gage (affects all linked subcatchments).

Parameters
engineEngine handle.
idxGage index.
valueRainfall rate (in/hr for US, mm/hr for SI).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_link_flow()

SWMM_ENGINE_API int swmm_forcing_link_flow ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force a flow in a link.

Parameters
engineEngine handle.
idxLink index.
valueFlow rate (CFS for US, CMS for SI).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_link_setting()

SWMM_ENGINE_API int swmm_forcing_link_setting ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force a control setting on a link (pump, orifice, weir, outlet).

Parameters
engineEngine handle.
idxLink index.
valueSetting value (0.0–1.0 for fraction open; pump speed).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_node_head_boundary()

SWMM_ENGINE_API int swmm_forcing_node_head_boundary ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force a head boundary at an outfall node.

Parameters
engineEngine handle.
idxNode index (must be OUTFALL type).
valueBoundary head (ft for US, m for SI).
modeSWMM_FORCING_OVERRIDE (only valid mode for head boundary).
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_node_lat_inflow()

SWMM_ENGINE_API int swmm_forcing_node_lat_inflow ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force a lateral inflow at a node.

Parameters
engineEngine handle.
idxNode index.
valueLateral inflow rate (CFS for US, CMS for SI).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_node_quality()

SWMM_ENGINE_API int swmm_forcing_node_quality ( SWMM_Engine  engine,
int  node_idx,
int  pollutant_idx,
double  mass_rate,
int  mode,
int  persist 
)

Force a quality mass flux at a node.

Parameters
engineEngine handle.
node_idxNode index.
pollutant_idxPollutant index.
mass_rateMass injection rate (mass/sec in concentration units × CFS).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_subcatch_evap()

SWMM_ENGINE_API int swmm_forcing_subcatch_evap ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force an evaporation rate on a subcatchment.

Parameters
engineEngine handle.
idxSubcatchment index.
valueEvaporation rate (ft/sec internal units).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.

◆ swmm_forcing_subcatch_rainfall()

SWMM_ENGINE_API int swmm_forcing_subcatch_rainfall ( SWMM_Engine  engine,
int  idx,
double  value,
int  mode,
int  persist 
)

Force rainfall on a subcatchment (bypasses gage lookup).

Parameters
engineEngine handle.
idxSubcatchment index.
valueRainfall rate (in/hr for US, mm/hr for SI).
modeSWMM_FORCING_OVERRIDE or SWMM_FORCING_ADD.
persistSWMM_FORCING_RESET or SWMM_FORCING_PERSIST.
Returns
SWMM_OK or error code.