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

Classes

struct  DPSConfig
 DPS configuration parameters (derived from SimulationOptions at init). More...
 
struct  DPSLinkArrays
 
struct  DWNodeArrays
 
class  DWSolver
 Dynamic wave solver — operates on entire link/node system. More...
 

Enumerations

enum class  SurchargeMethod : int {
  EXTRAN = 0 ,
  SLOT = 1 ,
  DYNAMIC_SLOT = 2
}
 Surcharge method: EXTRAN (classic) or SLOT (Preissmann). More...
 
enum class  MomentumCategory : uint8_t {
  SKIP_DRY = 0 ,
  MANNING_OPEN = 1 ,
  MANNING_CLOSED_FS = 2 ,
  MANNING_CLOSED_FULL = 3 ,
  FORCE_MAIN_HW = 4 ,
  FORCE_MAIN_DW = 5 ,
  N_CATEGORIES = 6
}
 Momentum category for branch-free per-category kernel dispatch. More...
 

Enumeration Type Documentation

◆ MomentumCategory

enum class openswmm::dynwave::MomentumCategory : uint8_t
strong

Momentum category for branch-free per-category kernel dispatch.

Each conduit is classified once per Picard iteration (after geometry is computed). Per-category kernels have zero shape/type/state branches in their inner loops, enabling compiler auto-vectorization.

Enumerator
SKIP_DRY 

DRY/UP_DRY/DN_DRY, aMid<=FUDGE, or is_closed.

MANNING_OPEN 

Standard Manning, open channel (Froude-based sigma)

MANNING_CLOSED_FS 

Manning, closed conduit, free surface.

MANNING_CLOSED_FULL 

Manning, closed conduit, surcharged (fr=0, sig=0)

FORCE_MAIN_HW 

Force main, Hazen-Williams friction.

FORCE_MAIN_DW 

Force main, Darcy-Weisbach friction.

N_CATEGORIES 

◆ SurchargeMethod

enum class openswmm::dynwave::SurchargeMethod : int
strong

Surcharge method: EXTRAN (classic) or SLOT (Preissmann).

See also
Legacy: SurchargeMethod in enums.h
Enumerator
EXTRAN 

Classic EXTRAN approach — dQ/dH for surcharged nodes.

SLOT 

Preissmann slot — fictitious narrow slot above crown.

DYNAMIC_SLOT 

Dynamic slot — slot width varies with flow conditions (experimental) Sharior, S., Hodges, B.R., & Vasconcelos, J.G. (2023). Generalized, Dynamic, and Transient-Storage Form of the Preissmann Slot. Journal of Hydraulic Engineering, 149(11), 04023046.