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

#include <ActiveSetData.hpp>

Collaboration diagram for openswmm::twoD::ActiveSetData:

Public Member Functions

int n_active () const noexcept
 
void resize (int nt, int nv)
 Allocate the flag arrays (idempotent) and clear the lists.
 

Public Attributes

bool enabled = false
 resolved: option ∧ CVODE ∧ DW momentum
 
int halo_rings = 2
 current halo width (auto-widened on breach)
 
double wet_depth_eps = 0.0
 wet threshold (m); cell is a seed if V > eps·A
 
std::vector< uint8_t > cell_ring
 
std::vector< uint8_t > cell_active
 1 = active (compute), 0 = frozen. Sized n_triangles.
 
std::vector< uint8_t > vert_active
 Vertex touched by ≥1 active cell. Sized n_vertices.
 
std::vector< int > active_cells
 
std::vector< int > active_verts
 
std::vector< int > outer_ring_cells
 
long rebuild_count = 0
 
long halo_trip_count = 0
 breach-redo occurrences
 
int n_seed = 0
 wet ∪ sourced cells at the last rebuild
 

Static Public Attributes

static constexpr uint8_t kInactive = 255
 

Member Function Documentation

◆ n_active()

int openswmm::twoD::ActiveSetData::n_active ( ) const
inlinenoexcept

◆ resize()

void openswmm::twoD::ActiveSetData::resize ( int nt,
int nv )
inline

Allocate the flag arrays (idempotent) and clear the lists.

Here is the caller graph for this function:

Member Data Documentation

◆ active_cells

std::vector<int> openswmm::twoD::ActiveSetData::active_cells

◆ active_verts

std::vector<int> openswmm::twoD::ActiveSetData::active_verts

◆ cell_active

std::vector<uint8_t> openswmm::twoD::ActiveSetData::cell_active

1 = active (compute), 0 = frozen. Sized n_triangles.

◆ cell_ring

std::vector<uint8_t> openswmm::twoD::ActiveSetData::cell_ring

◆ enabled

bool openswmm::twoD::ActiveSetData::enabled = false

resolved: option ∧ CVODE ∧ DW momentum

◆ halo_rings

int openswmm::twoD::ActiveSetData::halo_rings = 2

current halo width (auto-widened on breach)

◆ halo_trip_count

long openswmm::twoD::ActiveSetData::halo_trip_count = 0

breach-redo occurrences

◆ kInactive

uint8_t openswmm::twoD::ActiveSetData::kInactive = 255
staticconstexpr

Ring label per cell: 0 = seed (wet/sourced), 1..halo_rings = halo, kInactive = frozen. Sized n_triangles.

◆ n_seed

int openswmm::twoD::ActiveSetData::n_seed = 0

wet ∪ sourced cells at the last rebuild

◆ outer_ring_cells

std::vector<int> openswmm::twoD::ActiveSetData::outer_ring_cells

Cells on the OUTERMOST halo ring — the breach-check set: one of these wetting during the advance means the front consumed the whole halo.

◆ rebuild_count

long openswmm::twoD::ActiveSetData::rebuild_count = 0

◆ vert_active

std::vector<uint8_t> openswmm::twoD::ActiveSetData::vert_active

Vertex touched by ≥1 active cell. Sized n_vertices.

◆ wet_depth_eps

double openswmm::twoD::ActiveSetData::wet_depth_eps = 0.0

wet threshold (m); cell is a seed if V > eps·A


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