OpenSWMM Engine  6.0.0-alpha.3
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.3)
Loading...
Searching...
No Matches
openswmm::divider Namespace Reference

Enumerations

enum class  DividerMethod : int {
  CUTOFF = 0 ,
  OVERFLOW_DIV = 1 ,
  TABULAR = 2 ,
  WEIR = 3
}
 

Functions

void computeDividerFlows (SimulationContext &ctx, const DividerData &divs)
 Compute diversion flows for all divider nodes.
 

Enumeration Type Documentation

◆ DividerMethod

enum class openswmm::divider::DividerMethod : int
strong
Enumerator
CUTOFF 
OVERFLOW_DIV 

Renamed to avoid macOS math.h OVERFLOW macro.

TABULAR 
WEIR 

Function Documentation

◆ computeDividerFlows()

void openswmm::divider::computeDividerFlows ( SimulationContext & ctx,
const DividerData & divs )

Compute diversion flows for all divider nodes.

For each divider:

  • Reads total inflow at the divider node
  • Computes diversion flow based on method
  • Sets diversion link flow and reduces primary link flow

Reads the relational DividerData side-table (ctx.node_subtypes.dividers), which replaces the former standalone DividerSoA. The data is identical (same dividers, same node-index order, same fields) so results are unchanged; the side-table is simply the single source of truth.

Parameters
ctxSimulation context.
divsDivider side-table (ctx.node_subtypes.dividers).
Here is the call graph for this function:
Here is the caller graph for this function: