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

Static properties for each pollutant species. More...

#include <PollutantData.hpp>

Collaboration diagram for openswmm::PollutantData:

Public Member Functions

int n_pollutants () const noexcept
 
void resize_pollutants (int n)
 Resize pollutant definition arrays to hold n pollutants.
 
void resize_quality (int n_nodes, int n_links, int n_subcatches)
 Allocate per-object quality arrays.
 
void save_quality_state () noexcept
 
void reset_quality_state () noexcept
 

Public Attributes

std::vector< MassUnitsunits
 Concentration units for each pollutant.
 
std::vector< double > mwt
 Molecular weight (g/mol). Used for unit conversions.
 
std::vector< double > k_decay
 First-order decay coefficient (1/day).
 
std::vector< double > c_rain
 Rain concentration (project mass/volume units).
 
std::vector< double > c_gw
 Groundwater concentration.
 
std::vector< double > c_rdii
 RDII concentration.
 
std::vector< double > init_conc
 Initial concentration everywhere in the network.
 
std::vector< int > co_pollut
 Co-pollutant index (-1 if none).
 
std::vector< double > co_frac
 Co-fraction (fraction of co-pollutant concentration).
 
std::vector< bool > snow_only
 True if the pollutant should be printed in output.
 
std::vector< double > node_conc
 Current quality concentration at each node.
 
std::vector< double > node_conc_old
 Previous-step quality at each node.
 
std::vector< double > link_conc
 Current quality concentration in each link.
 
std::vector< double > link_conc_old
 Previous-step quality in each link.
 
std::vector< double > subcatch_conc
 Current quality concentration in subcatchment runoff.
 
std::vector< double > subcatch_conc_old
 Previous-step quality in subcatchment runoff.
 

Detailed Description

Static properties for each pollutant species.

Holds definition-level information only. Concentration state at each node/link/subcatch is stored in NodeQuality, LinkQuality, SubcatchQuality (flat arrays in SimulationContext).

Member Function Documentation

◆ n_pollutants()

int openswmm::PollutantData::n_pollutants ( ) const
inlinenoexcept
Here is the caller graph for this function:

◆ reset_quality_state()

void openswmm::PollutantData::reset_quality_state ( )
inlinenoexcept
Here is the caller graph for this function:

◆ resize_pollutants()

void openswmm::PollutantData::resize_pollutants ( int  n)
inline

Resize pollutant definition arrays to hold n pollutants.

Here is the caller graph for this function:

◆ resize_quality()

void openswmm::PollutantData::resize_quality ( int  n_nodes,
int  n_links,
int  n_subcatches 
)
inline

Allocate per-object quality arrays.

Called after both pollutant count and object counts are known.

Parameters
n_nodesNumber of nodes.
n_linksNumber of links.
n_subcatchesNumber of subcatchments.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ save_quality_state()

void openswmm::PollutantData::save_quality_state ( )
inlinenoexcept
Here is the caller graph for this function:

Member Data Documentation

◆ c_gw

std::vector<double> openswmm::PollutantData::c_gw

Groundwater concentration.

See also
Legacy: Pollut[i].cGW

◆ c_rain

std::vector<double> openswmm::PollutantData::c_rain

Rain concentration (project mass/volume units).

See also
Legacy: Pollut[i].cRain

◆ c_rdii

std::vector<double> openswmm::PollutantData::c_rdii

RDII concentration.

See also
Legacy: Pollut[i].cRDII

◆ co_frac

std::vector<double> openswmm::PollutantData::co_frac

Co-fraction (fraction of co-pollutant concentration).

See also
Legacy: Pollut[i].coFraction

◆ co_pollut

std::vector<int> openswmm::PollutantData::co_pollut

Co-pollutant index (-1 if none).

Used for co-fraction (fraction of co-pollutant).

See also
Legacy: Pollut[i].coPollut

◆ init_conc

std::vector<double> openswmm::PollutantData::init_conc

Initial concentration everywhere in the network.

See also
Legacy: Pollut[i].initConc

◆ k_decay

std::vector<double> openswmm::PollutantData::k_decay

First-order decay coefficient (1/day).

See also
Legacy: Pollut[i].kDecay

◆ link_conc

std::vector<double> openswmm::PollutantData::link_conc

Current quality concentration in each link.

Size = n_links * n_pollutants.

See also
Legacy: Link[i].newQual[]

◆ link_conc_old

std::vector<double> openswmm::PollutantData::link_conc_old

Previous-step quality in each link.

◆ mwt

std::vector<double> openswmm::PollutantData::mwt

Molecular weight (g/mol). Used for unit conversions.

See also
Legacy: Pollut[i].mwt

◆ node_conc

std::vector<double> openswmm::PollutantData::node_conc

Current quality concentration at each node.

Size = n_nodes * n_pollutants.

See also
Legacy: Node[i].newQual[]

◆ node_conc_old

std::vector<double> openswmm::PollutantData::node_conc_old

Previous-step quality at each node.

◆ snow_only

std::vector<bool> openswmm::PollutantData::snow_only

True if the pollutant should be printed in output.

See also
Legacy: Pollut[i].snowOnly

◆ subcatch_conc

std::vector<double> openswmm::PollutantData::subcatch_conc

Current quality concentration in subcatchment runoff.

Size = n_subcatches * n_pollutants.

See also
Legacy: Subcatch[i].newQual[]

◆ subcatch_conc_old

std::vector<double> openswmm::PollutantData::subcatch_conc_old

Previous-step quality in subcatchment runoff.

◆ units

std::vector<MassUnits> openswmm::PollutantData::units

Concentration units for each pollutant.

See also
Legacy: Pollut[i].units

The documentation for this struct was generated from the following file: