OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches

Global physical, numerical, and model constants for OpenSWMM Engine. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openswmm
 
namespace  openswmm::constants
 
namespace  openswmm::constants::ode
 

Variables

constexpr double openswmm::constants::GRAVITY = 32.2
 
constexpr double openswmm::constants::SQRT_GRAVITY = 5.67450438786
 sqrt(GRAVITY) — precomputed to avoid per-element std::sqrt in Froude calc.
 
constexpr double openswmm::constants::INV_SQRT_GRAVITY = 0.17622692584
 1.0 / sqrt(GRAVITY) — multiply instead of divide in Froude computation.
 
constexpr double openswmm::constants::PI = 3.141592654
 Pi.
 
constexpr double openswmm::constants::PHI = 1.486
 
constexpr double openswmm::constants::MEXP = 5.0 / 3.0
 
constexpr double openswmm::constants::VISCOS = 1.1e-5
 Kinematic viscosity of water at 20°C (ft²/sec).
 
constexpr double openswmm::constants::SEC_PER_DAY = 86400.0
 Seconds per day.
 
constexpr double openswmm::constants::FT_PER_IN = 1.0 / 12.0
 Feet per inch.
 
constexpr double openswmm::constants::IN_PER_FT = 12.0
 Inches per foot.
 
constexpr double openswmm::constants::FUDGE = 0.0001
 
constexpr double openswmm::constants::MIN_SURFAREA = 12.566
 
constexpr double openswmm::constants::MIN_DELTA_Z = 0.001
 Minimum elevation drop for conduit slope computation (ft).
 
constexpr double openswmm::constants::XTOL = 0.001
 
constexpr double openswmm::constants::TINY = 1.0e-6
 Small positive number for underflow protection.
 
constexpr double openswmm::constants::OMEGA = 0.5
 
constexpr double openswmm::constants::DEFAULT_HEAD_TOL = 0.005
 
constexpr int openswmm::constants::DEFAULT_MAX_TRIALS = 8
 
constexpr double openswmm::constants::MAX_VELOCITY = 50.0
 
constexpr double openswmm::constants::MIN_TIMESTEP = 0.001
 
constexpr double openswmm::constants::EXTRAN_CROWN_CUTOFF = 0.96
 
constexpr double openswmm::constants::SLOT_CROWN_CUTOFF = 0.985257
 Preissmann slot crown cutoff fraction.
 
constexpr double openswmm::constants::SLOT_WIDTH_FACTOR = 0.001
 Preissmann slot width factor (slot_width = y_full * this factor).
 
constexpr int openswmm::constants::ode::MAX_STEPS = 10000
 Maximum number of integration steps.
 
constexpr double openswmm::constants::ode::ODE_TINY = 1.0e-30
 Underflow protection for scaling.
 
constexpr double openswmm::constants::ode::SAFETY = 0.9
 Safety factor for step size adjustment.
 
constexpr double openswmm::constants::ode::PGROW = -0.2
 Exponent for step increase.
 
constexpr double openswmm::constants::ode::PSHRNK = -0.25
 Exponent for step decrease.
 
constexpr double openswmm::constants::ode::ERRCON = 1.89e-4
 Error control threshold = (5/SAFETY)^(1/PGROW).
 
constexpr double openswmm::constants::ode::GWTOL = 0.0001
 
constexpr double openswmm::constants::ode::ODETOL = 0.0001
 Runoff ODE tolerance.
 
constexpr double openswmm::constants::MIN_LINK_FLOW = 0.001
 Minimum orifice/weir flow threshold.
 
constexpr double openswmm::constants::RECT_ALFMAX = 0.97
 Maximum alpha fraction for rectangular shapes.
 
constexpr double openswmm::constants::TRAP_ALFMAX = 0.98
 Maximum alpha fraction for trapezoidal shapes.
 
constexpr int openswmm::constants::N_TRANSECT_TBL = 51
 Transect discretization table size.
 
constexpr int openswmm::constants::MAX_SHAPES = 26
 Maximum number of cross-section shape types.
 
constexpr int openswmm::constants::N_FLOW_CLASSES = 7
 Number of flow classification bins.
 
constexpr int openswmm::constants::MAX_PAST_RAIN = 48
 Maximum past rain hours tracked per gage.
 
constexpr int openswmm::constants::N_TIME_BINS = 5
 Number of time step histogram bins.
 
constexpr int openswmm::constants::DATE_DELTA = 693594
 

Detailed Description

Global physical, numerical, and model constants for OpenSWMM Engine.

Consolidates all constants previously scattered across the engine into a single header. Organized by category:

  • Physical: gravity, viscosity, Manning's factor
  • Mathematical: pi
  • Numerical: tolerances, thresholds, limits
  • DynamicWave solver: under-relaxation, velocity caps, slot widths
  • ODE solver: RK45 coefficients
  • Unit conversion: see UnitConversion.hpp for Ucf/Qcf tables
Note
Legacy reference: consts.h, enums.h
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License