![]() |
OpenSWMM Engine
6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
|
Complete simulation state snapshot at one output time step. More...
#include <SimulationSnapshot.hpp>
Public Attributes | |
| double | sim_time = 0.0 |
| Simulation time of this snapshot (decimal days / Julian date). | |
| std::int64_t | wall_time_unix = 0 |
| Wall-clock Unix timestamp when snapshot was taken. | |
| int | output_step_index = 0 |
| Sequential output step index (0-based). | |
| int | node_count = 0 |
| Number of nodes. | |
| int | link_count = 0 |
| Number of links. | |
| int | subcatch_count = 0 |
| Number of subcatchments. | |
| int | gage_count = 0 |
| Number of rain gages. | |
| int | pollut_count = 0 |
| Number of pollutants. | |
| NodeSnapshot | nodes |
| Node state. | |
| LinkSnapshot | links |
| Link state. | |
| SubcatchSnapshot | subcatch |
| Subcatchment state. | |
| GageSnapshot | gages |
| Gage state. | |
| double | sys_temperature = 0.0 |
| Air temperature. | |
| double | sys_rainfall = 0.0 |
| Average rainfall over all gages. | |
| double | sys_snow_depth = 0.0 |
| Total snow depth. | |
| double | sys_evap = 0.0 |
| Total evaporation loss. | |
| double | sys_infil = 0.0 |
| Total infiltration loss. | |
| double | sys_runoff = 0.0 |
| Total runoff flow. | |
| double | sys_dw_inflow = 0.0 |
| Total dry weather inflow. | |
| double | sys_gw_inflow = 0.0 |
| Total groundwater inflow. | |
| double | sys_lat_inflow = 0.0 |
| Total lateral inflow (RDII + external) | |
| double | sys_flooding = 0.0 |
| Total flooding. | |
| double | sys_outflow = 0.0 |
| Total outflow. | |
| double | sys_storage = 0.0 |
| Total storage volume. | |
| double | sys_pet = 0.0 |
| Potential evapotranspiration. | |
| std::vector< double > | node_quality |
| Node pollutant concentrations. | |
| std::vector< double > | link_quality |
| Link pollutant concentrations. | |
| std::vector< double > | subcatch_quality |
| Subcatchment pollutant loadings. | |
| const std::vector< std::string > * | node_ids = nullptr |
| Node IDs in index order. Pointer to engine-managed strings. | |
| const std::vector< std::string > * | link_ids = nullptr |
| Link IDs in index order. | |
| const std::vector< std::string > * | subcatch_ids = nullptr |
| Subcatchment IDs in index order. | |
| const std::vector< std::string > * | gage_ids = nullptr |
| Gage IDs in index order. | |
| const std::vector< std::string > * | pollut_names = nullptr |
| Pollutant names in index order. | |
| const char * | flow_units = nullptr |
| Flow unit string (e.g., "CFS", "LPS"). | |
| const char * | length_units = nullptr |
| Length unit string (e.g., "FEET", "METERS"). | |
Complete simulation state snapshot at one output time step.
Created by the main simulation thread when output is due, then posted to the IOThread write queue. Plugins receive a const reference to this during IOutputPlugin::update().
| const char* openswmm::SimulationSnapshot::flow_units = nullptr |
Flow unit string (e.g., "CFS", "LPS").
| int openswmm::SimulationSnapshot::gage_count = 0 |
Number of rain gages.
| const std::vector<std::string>* openswmm::SimulationSnapshot::gage_ids = nullptr |
Gage IDs in index order.
| GageSnapshot openswmm::SimulationSnapshot::gages |
Gage state.
| const char* openswmm::SimulationSnapshot::length_units = nullptr |
Length unit string (e.g., "FEET", "METERS").
| int openswmm::SimulationSnapshot::link_count = 0 |
Number of links.
| const std::vector<std::string>* openswmm::SimulationSnapshot::link_ids = nullptr |
Link IDs in index order.
| std::vector<double> openswmm::SimulationSnapshot::link_quality |
Link pollutant concentrations.
Layout: [link_index * pollut_count + pollut_index]
| LinkSnapshot openswmm::SimulationSnapshot::links |
Link state.
| int openswmm::SimulationSnapshot::node_count = 0 |
Number of nodes.
| const std::vector<std::string>* openswmm::SimulationSnapshot::node_ids = nullptr |
Node IDs in index order. Pointer to engine-managed strings.
| std::vector<double> openswmm::SimulationSnapshot::node_quality |
Node pollutant concentrations.
Layout: [node_index * pollut_count + pollut_index] Size: node_count * pollut_count doubles.
| NodeSnapshot openswmm::SimulationSnapshot::nodes |
Node state.
| int openswmm::SimulationSnapshot::output_step_index = 0 |
Sequential output step index (0-based).
| int openswmm::SimulationSnapshot::pollut_count = 0 |
Number of pollutants.
| const std::vector<std::string>* openswmm::SimulationSnapshot::pollut_names = nullptr |
Pollutant names in index order.
| double openswmm::SimulationSnapshot::sim_time = 0.0 |
Simulation time of this snapshot (decimal days / Julian date).
| SubcatchSnapshot openswmm::SimulationSnapshot::subcatch |
Subcatchment state.
| int openswmm::SimulationSnapshot::subcatch_count = 0 |
Number of subcatchments.
| const std::vector<std::string>* openswmm::SimulationSnapshot::subcatch_ids = nullptr |
Subcatchment IDs in index order.
| std::vector<double> openswmm::SimulationSnapshot::subcatch_quality |
Subcatchment pollutant loadings.
| double openswmm::SimulationSnapshot::sys_dw_inflow = 0.0 |
Total dry weather inflow.
| double openswmm::SimulationSnapshot::sys_evap = 0.0 |
Total evaporation loss.
| double openswmm::SimulationSnapshot::sys_flooding = 0.0 |
Total flooding.
| double openswmm::SimulationSnapshot::sys_gw_inflow = 0.0 |
Total groundwater inflow.
| double openswmm::SimulationSnapshot::sys_infil = 0.0 |
Total infiltration loss.
| double openswmm::SimulationSnapshot::sys_lat_inflow = 0.0 |
Total lateral inflow (RDII + external)
| double openswmm::SimulationSnapshot::sys_outflow = 0.0 |
Total outflow.
| double openswmm::SimulationSnapshot::sys_pet = 0.0 |
Potential evapotranspiration.
| double openswmm::SimulationSnapshot::sys_rainfall = 0.0 |
Average rainfall over all gages.
| double openswmm::SimulationSnapshot::sys_runoff = 0.0 |
Total runoff flow.
| double openswmm::SimulationSnapshot::sys_snow_depth = 0.0 |
Total snow depth.
| double openswmm::SimulationSnapshot::sys_storage = 0.0 |
Total storage volume.
| double openswmm::SimulationSnapshot::sys_temperature = 0.0 |
Air temperature.
| std::int64_t openswmm::SimulationSnapshot::wall_time_unix = 0 |
Wall-clock Unix timestamp when snapshot was taken.