![]() |
OpenSWMM Engine
6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
|
This software is provided on an "as is" basis and the user assumes responsibility for its use. Although a reasonable effort has been made to assure that the results obtained are correct, the authors are not responsible and assume no liability whatsoever for any results or any use made of the results obtained from these programs, nor for any damages or litigation that result from the use of these programs for any purpose.
This reference manual was originally prepared by Lewis A. Rossman, Environmental Scientist Emeritus, U.S. Environmental Protection Agency, Office of Research and Development, National Risk Management Research Laboratory. His foundational work on the SWMM hydraulics model and its documentation is gratefully acknowledged.
See Authors & Contributors for the complete list of authors and contributors.
SWMM is a dynamic rainfall-runoff simulation model used for single event or long-term (continuous) simulation of runoff quantity and quality from primarily urban areas. The runoff component of SWMM operates on a collection of subcatchment areas that receive precipitation and generate runoff and pollutant loads. The routing portion of SWMM transports this runoff through a system of pipes, channels, storage/treatment devices, pumps, and regulators. SWMM tracks the quantity and quality of runoff generated within each subcatchment, and the flow rate, flow depth, and quality of water in each pipe and channel during a simulation period comprised of multiple time steps. The reference manual for this edition of SWMM is comprised of three volumes. Volume I describes SWMM's hydrologic models, Volume II its hydraulic models, and Volume III its water quality and low impact development models.
Figure 1-1 Elements of a typical urban drainage system
Figure 1-2 SWMM's conceptual model of a stormwater drainage system
Figure 1-3 Processes modeled by SWMM
Figure 1-4 Block diagram of SWMM's state transition process
Figure 1-5 Flow chart of SWMM's simulation procedure
Figure 1-6 Interpolation of reported values from computed values
Figure 2-1 Node-link representation of a sewer system
Figure 2-2 Comparison of dynamic wave and kinematic wave solutions
Figure 3-1 Node-link representation of a conveyance network in SWMM
Figure 3-2 Special flow conditions for dynamic wave analysis
Figure 3-3 Illustration of a surcharged node
Figure 3-4 Ponding of excess water above a junction
Figure 3-5 Profile view of example rectangular conduit (not to scale)
Figure 3-6 Outflow hydrographs for example conduit -I
Figure 3-7 Outflow hydrographs for example conduit – II
Figure 4-1 Section factor versus area for a circular shape
Figure 4-2 Space-time grid for kinematic wave analysis
Figure 4-3 Outflow hydrograph for example conduit
Figure 5-1 Power law cross section shape
Figure 5-2 Geometric properties of a partly filled circular shape based on depth
Figure 5-3 Geometric properties of a partly filled circular shape based on area
Figure 5-4 Ellipsoid and arch pipe cross sectional shapes
Figure 5-5 Masonry sewer shapes
Figure 5-6 Composite cross section shapes
Figure 5-7 A Shape Curve with a depth segment shown
Figure 5-8 A natural channel transect
Figure 5-9 A transect depth increment with three compound segments
Figure 5-10 Example of a storage curve and its section view
Figure 5-11 Finding the volume at a given depth for a storage curve
Figure 6-1 Orifice orientations
Figure 6-2 Determination of effective head for an orifice
Figure 6-3 Orifice with unsubmerged inlet
Figure 6-4 Transverse weir shapes
Figure 6-5 Coefficient for triangular weirs (from Brater and King, 1976)
Figure 6-6 Definitions of submerged and surcharged weir flow
Figure 6-7 Rating curve for a vortex device compared to an orifice
Figure 7-1 Depths used for computing seepage in storage units
Figure 7-2 Concrete box culvert (from FHWA, 2012)
Figure 7-3 Example of a culvert rating curve (from FHWA, 2012)
Figure 7-4 Roadway overtopping (from FHWA, 2012)
Figure 7-5 SWMM node-link representation of a culvert with a roadway weir
Figure 7-6 Discharge coefficients for roadway weirs (from FHWA, 2012)
Table 1-1 Development history of SWMM
Table 1-2 SWMM's modeling objects
Table 1-3 State variables used by SWMM
Table 1-4 Units of expression used by SWMM
Table 2-1 Features and limitations of dynamic wave and kinematic wave solutions
Table 3-1 Surface area adjustments for various dynamic wave flow conditions
Table 5-1 Geometric properties for open channel shapes as functions of water depth
Table 5-2 Geometric properties for open channel shapes as functions of flow area
Table 5-3 Geometric properties for the power law shape
Table 5-4 Geometric properties of a full circular cross section
Table 5-5 Full area and hydraulic radius of custom ellipsoid and arch pipe sections
Table 5-6 Number of entries in geometric property tables for masonry sewer shapes
Table 5-7 Geometric parameters of masonry sewer sections
Table 5-8 Geometric properties for a sediment filled circular cross section
Table 5-9 Properties of the rectangular section of a rectangular-triangular shape
Table 5-10 Geometric parameters for rectangular-round shapes
Table 5-11 Geometric properties for rectangular–round shapes
Table 5-12 Properties in the rounded top section of a modified basket handle shape
Table 5-13 Area at maximum flow to full area for standard closed conduits shapes
Table 5-14 Critical depth formulas for simple section shapes
Table 6-1 Pump curves recognized by SWMM
Table 6-2 Kindsvater-Carter constants for rectangular weir coefficient
Table 6-3 Rectangular broad-crested weir coefficients (ft1/2/sec)
Table 6-4 Formulas for flow derivatives of various types of weirs
Table 7-1 Relative depth at maximum width for select cross section shapes
Table 7-2 Types of minor losses in drainage systems (from Frost, 2006)
Table 7-3 Hazen-Williams C-factors for different pipe materials
Table 7-4 Darcy-Weisbach roughness heights for different pipe materials
Table C-1 Circular section properties as function of area
Table C-2 Circular section properties as function of depth
Table D-1 Standard elliptical pipe sizes
Table D-2 Elliptical section properties as function of depth
Table E-1 Standard arch pipe sizes
Table E-2 Arch pipe section properties as function of depth
Table F-1 Area of masonry sewers as function of depth
Table F-2 Width of masonry sewers as function of depth - I
Table F-3 Width of masonry sewers as function of depth - II
Table F-4 Hydraulic radius of masonry sewers as function of depth
Table F-5 Depth of masonry sewers as function of area - I
Table F-6 Depth of masonry sewers as function of area - II
Table F-7 Section factor for masonry sewers as function of area - I
Table F-8 Section factor for masonry sewers as function of area - II
Table G-1 Manning's roughness coefficient n for open channels
Table G-2 Manning's roughness coefficient n for closed conduits
Table G-3 Manning's roughness coefficient n for corrugated steel pipe
Table H-1 Culvert codes
Table H-2 Culvert coefficients
| Symbol | Description |
|---|---|
| A | cross section flow area within a conduit (ft²) |
| Ā | average cross section flow area along a conduit (ft²) |
| Ā̄ | average cross section flow area along a conduit over a time period (ft²) |
| Afull | full cross section area of a conduit (ft²) |
| Amax | cross section area at depth where a conduit's section factor is a maximum (ft²) |
| AO | area of an orifice opening (ft²) |
| ASP | surface area of water ponded above a node (ft²) |
| AS | surface area of a node and its connected links (ft²) |
| ASL | surface area of flow within a link (ft²) |
| ASlast | surface area of a node the last time it was not surcharged (ft²) |
| ASmin | minimum surface area associated with a node (ft²) |
| ASN | surface area associated with a storage node (ft²) |
| AW | area of a weir opening (ft²) |
| b | bottom or top width (depending on shape) of a conduit's cross section (ft) |
| c | wave celerity (ft/sec) |
| cI | inlet control constant for submerged culverts |
| cW | coefficient for a weir-type flow divider (ft1/2/sec) |
| Cd | orifice discharge coefficient (dimensionless) |
| CHW | Hazen-Williams C-factor coefficient (dimensionless) |
| CO | equivalent orifice constant for a surcharged weir (ft5/2/sec) |
| Cr | Courant number (dimensionless) |
| Cw | weir coefficient (ft1/2/sec) |
| D | circular pipe diameter (ft) |
| et | potential evaporation rate at time t (ft/sec) |
| E | elevation of a node's invert (ft) |
| EC | specific head at critical depth (ft) |
| f | Darcy-Weisbach friction factor (dimensionless) |
| fC | monthly climate adjustment factor (dimensionless) |
| fE | storage node evaporation factor (dimensionless) |
| fS | weir submergence adjustment factor (dimensionless) |
| F | cumulative depth of infiltrated water (ft) |
| Fr | Froude number (dimensionless) |
| g | acceleration of gravity (ft/sec²) |
| hL | minor head loss per unit length of a conduit (ft/ft) |
| hW | height of the opening for a weir-type flow divider node (ft) |
| H | hydraulic head (ft) |
| Hcrown | elevation of the crown of the highest conduit at a node (ft) |
| He | effective head seen by an orifice or weir (ft) |
| HIS | minimum head at a culvert's inlet for it to be submerged (ft) |
| HIU | maximum head at a culvert's inlet for it to be unsubmerged (ft) |
| Hmax | maximum head at a node before flooding occurs (ft) |
| HOutfall | head assigned to an outfall node (ft) |
| K | cross section flow conductance (cfs) (equal to $nAR^{2/3}$) |
| KI | inlet control constant for unsubmerged culverts |
| Km | minor loss coefficient (dimensionless) |
| KS | soil saturated hydraulic conductivity (ft/sec) |
| L | conduit length or weir crest length (ft) |
| Le | effective weir crest length (ft) |
| MI | inlet control exponent for unsubmerged culverts |
| n | Manning roughness coefficient (sec/m1/3) |
| P | wetted perimeter of a conduit's cross section (ft) |
| qE | uniformly distributed evaporation rate along a channel (cfs/ft) |
| qL | total uniformly distributed outflow rate along a conduit (cfs/ft) |
| qMIN | minimum flow needed to activate a flow divider node (cfs) |
| qS | uniformly distributed seepage rate along a conduit (cfs/ft) |
| qSN | seepage rate per unit area for a storage node (cfs/ft²) |
| Q | flow rate within a conduit, pump, or regulator link (cfs) |
| Qdiv | flow rate diverted to a second outflow conduit from a flow divider node (cfs) |
| QEN | evaporation loss rate from a storage unit node (cfs) |
| Qfull | normal uniform flow rate for a full conduit (cfs) |
| QIC | culvert flow rate under inlet control (cfs) |
| Qin | total inflow rate to a node (cfs) |
| QLN | total loss rate from a storage unit node (cfs) |
| Qnorm | normal uniform flow rate (cfs) |
| Qout | total outflow rate leaving a node (cfs) |
| Qovfl | excess flow that overflows a node (cfs) |
| Q̄net | average net inflow minus outflow over a time step (cfs) |
| QSN | seepage loss rate from a storage node (cfs) |
| R | hydraulic radius of flow cross section in a conduit (ft) |
| R̄ | average hydraulic radius of flow cross sections along a conduit (ft) |
| Re | Reynolds number (dimensionless) |
| Rfull | hydraulic radius of a conduit cross section when full (ft) |
| s | seepage rate per unit area for a conduit (ft/sec) |
| Scf | culvert slope correction factor |
| Sf | friction slope (ft/ft) |
| S0 | conduit slope (ft/ft) |
| t | time (sec) |
| U | flow velocity at a point along a conduit (ft/sec) |
| Ū | average flow velocity along a conduit (ft/sec) |
| V | node assembly volume (ft³) |
| VP | ponded volume (ft³) |
| VN | storage node volume (ft³) |
| VNfull | volume of a storage node when full (ft³) |
| W | top width of the water surface at a point along a conduit (ft) |
| W̄ | average top width of the water surface along a conduit (ft) |
| Wmax | maximum width of a conduit cross section (ft) |
| x | horizontal distance (ft) |
| y | vertical distance (ft) |
| yI | inlet control constant for submerged culverts |
| Y | depth of flow within a conduit or of water in a storage unit (ft) |
| Ȳ | average depth of flow along a conduit (ft) |
| Yc | critical depth within a conduit at a given flow rate (ft) |
| Yfull | full depth of a conduit, orifice opening or weir height (ft) |
| YN | normal flow depth (ft) |
| Y* | smaller of the critical and normal flow depth in a conduit (ft) |
| Z | elevation of a conduit's invert (ft) |
| ZO | elevation of the bottom of an orifice's opening (ft) |
| ZW | elevation of a weir's crest in its lowest position (ft) |
| α | generic coefficient |
| β | the square root of a conduit's slope divided by its roughness |
| ∆t | time step (sec) |
| ε | convergence tolerance |
| ε | Darcy-Weisbach roughness length (ft) |
| γ | exponent in power law cross section shape |
| η | Manning's roughness coefficient (sec/ft1/3) $\left( equal\ to\ \frac{n}{1.486} \right)$ |
| σ | inertial damping factor |
| θ | time weighting factor, relaxation factor, or subtended angle |
| φ | distance weighting factor |
| θd | soil moisture deficit (dimensionless) |
| μ | kinematic viscosity (ft²/sec) |
| ω | pump speed setting or degree to which a regulator is opened |
| ψS | soil capillary suction head (ft) |
| Ψ | conduit section factor (equal to $AR^{2/3}$) (ft8/3) |
| Ψfull | section factor of a conduit at full depth (ft8/3) |
| Ψmax | maximum section factor for a conduit (ft8/3) |
Urban runoff quantity and quality constitute problems of both a historical and current nature. Cities have long assumed the responsibility of control of stormwater flooding and treatment of point sources (e.g., municipal sewage) of wastewater. Since the 1960s, the severe pollution potential of urban nonpoint sources, principally combined sewer overflows and stormwater discharges, has been recognized, both through field observation and federal legislation. The advent of modern computers has led to the development of complex, sophisticated tools for analysis of both quantity and quality pollution problems in urban areas and elsewhere (Singh, 1995). The EPA Storm Water Management Model, SWMM, first developed in 1969-71, was one of the first such models. It has been continually maintained and updated and is perhaps the best known and most widely used of the available urban runoff quantity/quality models (Huber and Roesner, 2013).
SWMM is a dynamic rainfall-runoff simulation model used for single event or long-term (continuous) simulation of runoff quantity and quality from primarily urban areas. The runoff component of SWMM operates on a collection of subcatchment areas that receive precipitation and generate runoff and pollutant loads. The routing portion of SWMM transports this runoff through a system of pipes, channels, storage/treatment devices, pumps, and regulators. SWMM tracks the quantity and quality of runoff generated within each subcatchment, and the flow rate, flow depth, and quality of water in each pipe and channel during a simulation period comprised of multiple time steps.
Table 1-1 summarizes the development history of SWMM. The current edition, Version 5, is a complete re-write of the previous releases. The reference manual for this edition of SWMM is comprised of three volumes. Volume I describes SWMM's hydrologic models, Volume II its hydraulic models, and Volume III its water quality and low impact development models. These manuals complement the SWMM 5 User's Manual (US EPA, 2010), which explains how to run the program, and the SWMM 5 Applications Manual (US EPA, 2009) which presents a number of worked-out examples. The procedures described in this reference manual are based on earlier descriptions included in the original SWMM documentation (Metcalf and Eddy et al., 1971a, 1971b, 1971c, 1971d), intermediate reports (Huber et al., 1975; Heaney et al., 1975; Huber et al., 1981), plus new material. This information supersedes the Version 4.0 documentation (Huber and Dickinson, 1988; Roesner et al., 1992) and includes descriptions of some newer procedures implemented since 1988. More information on current documentation and the general status of the EPA Storm Water Management Model as well as the full program and its source code is available on the EPA SWMM web site:. http://www2.epa.gov/water-research/storm-water-management-model-swmm.
Table 1-1 Development history of SWMM
| Version | Year | Contributors | Comments |
|---|---|---|---|
| SWMM I | 1971 | Metcalf & Eddy, Inc. Water Resources Engineers University of Florida | First version of SWMM; focus was CSO modeling; Few of its methods are still used today. |
| SWMM II | 1975 | University of Florida | First widely distributed version of SWMM. |
| SWMM 3 | 1981 | University of Florida Camp Dresser & McKee | Full dynamic wave flow routine, Green-Ampt infiltration, snow melt, and continuous simulation added. |
| SWMM 3.3 | 1983 | US EPA | First PC version of SWMM. |
| SWMM 4 | 1988 | Oregon State University Camp Dresser & McKee | Groundwater, RDII, irregular channel cross-sections and other refinements added over a series of updates throughout the 1990's. |
| SWMM 5 | 2005 | US EPA CDM-Smith | Complete re-write of the SWMM engine in C; graphical user interface added; improved algorithms and new features (e.g., LID modeling) added. |
Figure 1-1 depicts the elements included in a typical urban drainage system. SWMM conceptualizes this system as a series of water and material flows between several major environmental compartments. These compartments include:
<figure>
<figcaption>
Figure 1‑1 Elements of a typical urban drainage system
</figcaption> </figure>
Not all compartments need appear in a particular SWMM model. For example, one could model just the Conveyance compartment, using pre-defined hydrographs and pollutographs as inputs. As illustrated in Figure 1-1, SWMM can be used to model any combination of stormwater collection systems, both separate and combined sanitary sewer systems, as well as natural catchment and river channel systems.
Figure 1-2 shows how SWMM conceptualizes the physical elements of the actual system depicted in Figure 1-1 with a standard set of modeling objects. The principal objects used to model the rainfall/runoff process are Rain Gages and Subcatchments. Snowmelt is modeled with Snow Pack objects placed on top of subcatchments while Aquifer objects placed below subcatchments are used to model groundwater flow. The conveyance portion of the drainage system is modeled with a network of Nodes and Links. Nodes are points that represent simple junctions, flow dividers, storage units, or outfalls. Links connect nodes to one another with conduits (pipes and channels), pumps, or flow regulators (orifices, weirs, or outlets). Land Use and Pollutant objects are used to describe water quality. Finally, a group of data objects that includes Curves, Time Series, Time Patterns, and Control Rules, are used to characterize the inflows and operating behavior of the various physical objects in a SWMM model. Table 1-2 provides a summary of the various objects used in SWMM. Their properties and functions will be described in more detail throughout the course of this manual.
<figure>
<figcaption>
Figure 1‑2 SWMM's conceptual model of a stormwater drainage system
</figcaption> </figure>
Table 1-2 SWMM's modeling objects
| Category | Object Type | Description |
|---|---|---|
| Hydrology | Rain Gage | Source of precipitation data to one or more subcatchments. |
| Subcatchment | A land parcel that receives precipitation associated with a rain gage and generates runoff that flows into a drainage system node or to another subcatchment. | |
| Aquifer | A subsurface area that receives infiltration from the subcatchment above it and exchanges groundwater flow with a conveyance system node. | |
| Snow Pack | Accumulated snow that covers a subcatchment. | |
| Unit Hydrograph | A response function that describes the amount of sewer inflow/infiltration (RDII) generated over time per unit of instantaneous rainfall. | |
| Hydraulics | Junction | A point in the conveyance system where conduits connect to one another with negligible storage volume (e.g., manholes, pipe fittings, or stream junctions). |
| Outfall | An end point of the conveyance system where water is discharged to a receptor (such as a receiving stream or treatment plant) with known water surface elevation. | |
| Divider | A point in the conveyance system where the inflow splits into two outflow conduits according to a known relationship. | |
| Storage Unit | A pond, lake, impoundment, or chamber that provides water storage. | |
| Conduit | A channel or pipe that conveys water from one conveyance system node to another. | |
| Pump | A device that raises the hydraulic head of water. | |
| Regulator | A weir, orifice or outlet used to direct and regulate flow between two nodes of the conveyance system. | |
| Water Quality | Pollutant | A contaminant that can build up and be washed off of the land surface or be introduced directly into the conveyance system. |
| Land Use | A classification used to characterize the functions that describe pollutant buildup and washoff. | |
| Treatment | LID Control | A low impact development control, such as a bio-retention cell, porous pavement, or vegetative swale, used to reduce surface runoff through enhanced infiltration. |
| Treatment Function | A user-defined function that describes how pollutant concentrations are reduced at a conveyance system node as a function of certain variables, such as concentration, flow rate, water depth, etc. | |
| Data Object | Curve | A tabular function that defines the relationship between two quantities (e.g., flow rate and hydraulic head for a pump, surface area and depth for a storage node, etc.). |
| Time Series | A tabular function that describes how a quantity varies with time (e.g., rainfall, outfall surface elevation, etc.). | |
| Time Pattern | A set of factors that repeats over a period of time (e.g., diurnal hourly pattern, weekly daily pattern, etc.). | |
| Control Rules | IF-THEN-ELSE statements that determine when specific control actions are taken (e.g., turn a pump on or off when the flow depth at a given node is above or below a certain value). |
Figure 1-3 depicts the processes that SWMM models using the objects described previously and how they are tied to one another. The hydrological processes depicted in this diagram include:
<figure>
<figcaption>
Figure 1‑3 Processes modeled by SWMM
</figcaption> </figure>
The hydraulic processes occurring within SWMM's conveyance compartment include:
Regarding water quality, the following processes can be modeled for any number of user-defined water quality constituents:
The numerical procedures that SWMM uses to model the hydraulic processes listed above are discussed in detail in subsequent chapters of this volume. SWMM's hydrologic and water quality processes are described in volumes I and III of this manual.
SWMM is a distributed discrete time simulation model. It computes new values of its state variables over a sequence of time steps, where at each time step the system is subjected to a new set of external inputs. As its state variables are updated, other output variables of interest are computed and reported. This process is represented mathematically with the following general set of equations that are solved at each time step as the simulation unfolds:
Xt = f(Xt-1, It, P) (1-1)
Yt = g(Xt, P) (1-2)
where
| Symbol | Description |
|---|---|
| Xt | a vector of state variables at time t |
| Yt | a vector of output variables at time t |
| It | a vector of inputs at time t |
| P | a vector of constant parameters |
| f | a vector-valued state transition function |
| g | a vector-valued output transform function |
Figure 1-4 depicts the simulation process in block diagram fashion.
<figure>
<figcaption>
Figure 1‑4 Block diagram of SWMM's state transition process
</figcaption> </figure>
The variables that make up the state vector Xt are listed in Table 1-3. This is a surprisingly small number given the comprehensive nature of SWMM. All other quantities can be computed from these variables, external inputs, and fixed input parameters. The meaning of some of the less obvious state variables, such as those used for snow melt, is discussed in other sections of this set of manuals.
Table 1-3 State variables used by SWMM
| Process | Variable | Description | Initial Value |
|---|---|---|---|
| Runoff | d | Depth of runoff on a subcatchment surface | 0 |
| **Infiltration*** | tp | Equivalent time on the Horton curve | 0 |
| Fe | Cumulative excess infiltration volume | 0 | |
| Fu | Upper zone moisture content | 0 | |
| T | Time until the next rainfall event | 0 | |
| P | Cumulative rainfall for current event | 0 | |
| S | Soil moisture storage capacity remaining | User supplied | |
| Groundwater | θu | Unsaturated zone moisture content | User supplied |
| dL | Depth of saturated zone | User supplied | |
| Snowmelt | wsnow | Snow pack depth | User supplied |
| fw | Snow pack free water depth | User supplied | |
| ati | Snow pack surface temperature | User supplied | |
| cc | Snow pack cold content | 0 | |
| Flow Routing | H | Hydraulic head of water at a node | User supplied |
| Q | Flow rate in a link | User supplied | |
| A | Flow area in a link | Inferred from Q | |
| Water Quality | tsweep | Time since a subcatchment was last swept | User supplied |
| mB | Pollutant buildup on subcatchment surface | User supplied | |
| mP | Pollutant mass ponded on subcatchment | 0 | |
| cN | Concentration of pollutant at a node | User supplied | |
| cL | Concentration of pollutant in a link | User supplied |
*Only a sub-set of these variables is used, depending on the user's choice of infiltration method.
Examples of user-supplied input variables It that produce changes to these state variables include:
The output vector Yt that SWMM computes from its updated state variables contains such reportable quantities as:
Regarding the constant parameter vector P, SWMM contains over 150 different user-supplied constants and coefficients within its collection of process models. Most of these are either physical dimensions (e.g., land areas, pipe diameters, invert elevations) or quantities that can be obtained from field observation (e.g., percent impervious cover), laboratory testing (e.g., various soil properties), or previously published data tables (e.g., pipe roughness based on pipe material). A smaller remaining number might require some degree of model calibration to determine their proper values. Of course not all parameters are required for every project (e.g., the 14 groundwater parameters for each subcatchment are not needed if groundwater is not being modeled). The subsequent chapters of this manual carefully define each parameter and make suggestions on how to estimate its value.
A flowchart of the overall simulation process is shown in Figure 1-5. The process begins by reading a description of each object and its parameters from an input file whose format is described in the SWMM 5 Users Manual (US EPA, 2010). Next the values of all state variables are initialized, as is the current simulation time (T), runoff time (Troff), and reporting time (Trpt).
<figure>
<figcaption>
Figure 1‑5 Flow chart of SWMM's simulation procedure
</figcaption> </figure>
The program then enters a loop that first determines the time T1 at the end of the current routing time step (∆Trout). If the current runoff time Troff is less than T1, then new runoff calculations are repeatedly made and the runoff time updated until it equals or exceeds time T1. Each set of runoff calculations accounts for any precipitation, evaporation, snowmelt, infiltration, ground water seepage, overland flow, and pollutant buildup and washoff that can contribute flow and pollutant loads into the conveyance system.
Once the runoff time is current, all inflows and pollutant loads occurring at time T are routed through the conveyance system over the time interval from T to T1. This process updates the flow, depth and velocity in each conduit, the water elevation at each node, the pumping rate for each pump, and the water level and volume in each storage unit. In addition, new values for the concentrations of all pollutants at each node and within each conduit are computed. Next a check is made to see if the current reporting time Trpt falls within the interval from T to T1. If it does, then a new set of output results at time Trpt are interpolated from the results at times T and T1 and are saved to an output file. The reporting time is also advanced by the reporting time step ∆Trpt. The simulation time T is then updated to T1 and the process continues until T reaches the desired total duration. SWMM's Windows-based user interface provides graphical tools for building the aforementioned input file and for viewing the computed output.
SWMM uses linear interpolation to obtain values for quantities at times that fall in between times at which input time series are recorded or at which output results are computed. The concept is illustrated in Figure 1-6 which shows how reported flow values are derived from the computed flow values on either side of it for the typical case where the reporting time step is larger than the routing time step. One exception to this convention is for precipitation and infiltration rates. These remain constant within a runoff time step and no interpolation is made when these values are used within SWMM's runoff algorithms or for reporting purposes. In other words, if a reporting time falls within a runoff time step the reported rainfall intensity is the value associated with the start of the runoff time step.
Figure 1‑6 Interpolation of reported values from computed values
The units of expression used by SWMM's input variables, parameters, and output variables depend on the user's choice of flow units. If flow rate is expressed in US customary units then so are all other quantities; if SI metric units are used for flow rate then all other quantities use SI metric units. Table 1-4 lists the units associated with each of SWMM's major variables and parameters, for both US and SI systems. Internally within the computer code all calculations are carried out using feet as the unit of length and seconds as the unit of time.
Table 1-4 Units of expression used by SWMM
| Variable or Parameter | US Customary Units | SI Metric Units |
|---|---|---|
| Area (subcatchment) | acres | hectares |
| Area (storage surface area) | square feet | square meters |
| Depression Storage | inches | millimeters |
| Depth | feet | meters |
| Elevation | feet | meters |
| Evaporation | inches/day | millimeters/day |
| Flow Rate | cubic feet/sec (cfs) gallons/min (gpm) 106 gallons/day (mgd) | cubic meters/sec (cms) liters/sec (lps) 106 liters/day (mld) |
| Hydraulic Conductivity | inches/hour | millimeters/hour |
| Hydraulic Head | feet | meters |
| Infiltration Rate | inches/hour | millimeters/hour |
| Length | feet | meters |
| Manning's n | seconds/meter1/3 | seconds/meter1/3 |
| Pollutant Buildup | mass/acre | mass/hectare |
| Pollutant Concentration | milligrams/liter (mg/L) micrograms/liter (μg/L) organism counts/liter | milligrams/liter (mg/L) micrograms/liter (μg/L) organism counts/liter |
| Rainfall Intensity | inches/hour | millimeters/hour |
| Rainfall Volume | inches | millimeters |
| Storage Volume | cubic feet | cubic meters |
| Temperature | degrees Fahrenheit | degrees Celsius |
| Velocity | feet/second | meters/second |
| Width | feet | meters |
| Wind Speed | miles/hour | kilometers/hour |
As mentioned in Chapter 1, SWMM models the conveyance portion of a drainage system as a network of links connected together at nodes. External flows from various sources enter the network at specific nodes, are transported along links, are combined together and split apart at internal nodes while filling and emptying the volume of storage nodes, and exit the system at terminal nodes. Figure 2-1 shows how a physical system of sewer lines and their appurtenances are abstracted into a network of nodes and links of different types (pipe and pump links; junction, storage and outfall nodes for this particular example).
Figure 2-1 Node-link representation of a sewer system (Background from http://www.sewerhistory.org/photosgraphics/japan/)
Table 1-2 has already summarized the different types of node and link objects that can appear in a SWMM conveyance network model. The remainder of this chapter provides more details on the properties of network objects, briefly describes and compares the capabilities of the two principal methods used for analyzing the unsteady hydraulic behavior of a network, and discusses the boundary and initial conditions needed to compute network hydraulics.
The two principal components of a SWMM conveyance system network are nodes and links. Nodes represent the end points of conveyance links that form the connection between two or more links. They are also the points where external inflows (runoff, dry weather flows, etc.) can enter the network or where internal flows leave the network. Links are conveyance elements that transport flow between nodes. The following paragraphs describe the different types of nodes and links that SWMM can model.
Junction nodes are points in the drainage system where conveyance links join together. Physically they can represent the confluence of natural surface channels, manholes in a sewer system, or pipe connection fittings. Excess water at a junction can become partially pressurized when connecting conduits are surcharged and can either be lost from the system or be allowed to pond atop the junction and subsequently drain back into the junction.
The principal input parameters for a junction node are:
Outfall nodes are terminal nodes of the drainage system used to define final downstream boundary locations. The boundary conditions at an outfall can be described by any one of the following stage relationships:
The principal input parameters for an outfall node are:
Flow divider nodes divert inflows to a specific link in a prescribed manner. A flow divider can have no more than two conduit links on its discharge side. There are four types of flow dividers, defined by the manner in which inflows are diverted:
The principal input parameters for a flow divider node are:
Storage unit nodes are the only type of node that can provide storage volume and possess surface area. Physically they could represent storage facilities as small as a catch basin or as large as a lake. The volumetric properties of a storage unit are described by a function or table of surface area versus height. In addition to receiving inflows and discharging outflows to other nodes in the drainage network, storage nodes can also lose water from surface evaporation and from seepage into native soil. Unlike other nodes, storage nodes are not allowed to pressurize (i.e., they always maintain a free surface).
The principal input parameters for a storage unit are:
Conduit links are pipes or channels that move water from one node to another in the conveyance network. Their cross-sectional shapes can be selected from a variety of standard open and closed geometries. Custom closed shapes for pipes and irregular cross-section profiles for open channels can also be specified. Conduit geometry is discussed in more detail in Chapter 5.
The required input parameters for a conduit link are:
SWMM allows conduits to be offset some distance above the invert of their connecting end nodes as shown in the figure on the right. The offset can be specified as either a distance above the invert (i.e., the distance between points 1 and 2 in the figure) or as the elevation of the conduit's invert (i.e., the elevation of point 1). Internally the offset is maintained as an elevation.
SWMM also makes use of a conduit's slope in its hydraulic calculations. Slope is not provided directly as an input variable but is instead computed from the elevation of a conduit's end node inverts and its offsets. Let L be the length of the conduit, ∆y be the difference in elevation and ∆x the horizontal distance between the invert at each end of the conduit. Then from the diagram on the right:
∆x = √(L2 - ∆y2) (2-1)
and the conduit slope S0 is:
S0 = ∆y/*∆x* (2-2)
SWMM does not allow a slope of 0. Therefore it imposes a minimum value of 0.001 ft on ∆y. It also allows the user to set a non-zero value for minimum slope which will override any smaller computed slope.
SWMM uses the Manning equation to relate conduit flow rate to flow depth and conduit bed or friction slope. It therefore requires the user to supply a Manning's "*n*" coefficient that represents the roughness characteristics of the conduit's surface. Values of the coefficient for a wide range of channel types and pipe materials can be found in Appendix G.
Conduits can also include the following optional parameters:
The latter three properties are employed by the advanced modeling features covered in Chapter 7 of this manual.
Pump links are used to lift water from an inlet node to an outlet node at higher elevation. The principal input parameters for a pump include:
A pump curve describes the relation between a pump's flow rate and the head at its inlet and outlet nodes. The inlet node's startup and shutoff water depths are monitored continuously during the course of a simulation to allow for automated control of the pump's on/off status.
Pumps are directional devices that are not allowed to have reverse flow through them. Their hydraulic performance is described in more detail in Chapter 6.
Flow regulator links model structures or devices used to control and divert flows within a conveyance system. They are typically used to control releases from storage facilities, prevent unacceptable surcharging, and divert flow to treatment facilities and interceptors.
SWMM can model the following types of flow regulators: orifices, weirs, and outlets. The hydraulic behavior of orifices and weirs is modeled using standard rating curves (the nonlinear relation between hydraulic head applied to the regulator and the flow rate through it). Outlets utilize a user-supplied rating curve.
The principal input parameters for a flow regulator link include:
The hydraulic performance of regulator links is described in more detail in Chapter 6.
Each pump and flow regulator has a setting property that can adjust:
The setting can be changed during a simulation by using control rules. These specify conditions, such as water elevation at certain nodes, flow in certain links, and simulation time, that trigger a specified change in a link's setting. SWMM's hydraulic analysis methods take into account the current setting for each pump and flow regulator in the conveyance network. More details on the formats used for control rules can be found in the SWMM 5 Users Manual (US EPA, 2010).
SWMM's hydraulics solves the equations of one-dimensional, gradually varied, unsteady flow throughout a node-link network to determine the water level at each node and the flow rate and flow depth within each link at each time step of an extended simulation period. Flow routing of inflow hydrographs along channels and sewers entails wave dispersion, wave attenuation or amplification, and wave retardation or acceleration. These wave characteristics constitute the hydraulics of flow routing or propagation and are greatly affected by the geometric characteristics of the conduits, the characteristics of sources and/or sinks, and by initial and boundary conditions.
The hydraulics of unsteady non-uniform flow is represented in SWMM by a pair of partial differential equations of conservation of mass and momentum known as the St. Venant equations. Simultaneous solution of these equations for each conduit, coupled with a conservation of volume at each node, provides information on the spatial and temporal variation of water levels and discharge rates throughout the network. SWMM offers the user two principal alternative methods for solving these equations - dynamic wave or kinematic wave analysis
Dynamic wave analysis solves the complete form of the St. Venant flow equations and therefore produces the most theoretically accurate results. It can account for channel storage, backwater effects, entrance/exit losses, culvert flow, flow reversal, and pressurized flow. Because it couples together the solution for both water levels at nodes and flow in conduits it can be applied to any general network layout, even those containing multiple downstream diversions and loops. It is the method of choice for systems subjected to significant backwater due to downstream flow restrictions and with flow regulation via weirs and orifices. This generality comes at a price of having to use small time steps to maintain numerical stability.
Kinematic wave analysis solves the continuity equation along with a simplified form of the momentum equation in each conduit. It cannot account for backwater effects, entrance/exit losses, flow reversal, or pressurized flow. It is most applicable to steeply sloped (e.g., > 0.1%) conduits with shallow flow with high velocity. It can usually maintain numerical stability with much larger large time steps than are required for dynamic wave analysis. If the aforementioned effects are not expected to be significant then this alternative can be an accurate and efficient hydraulic analysis method, especially for long-term simulations.
Because kinematic wave analysis ignores both inertial and pressure forces there are limits on its applicability:
SWMM also offers a steady flow analysis option which assumes that within each computational time step flow is uniform and steady. It simply translates inflow hydrographs at the upstream end of a conduit to its downstream end, with no delay or change in shape. The Manning equation is used to relate flow rate to flow area (or depth). It is subject to the same limitations as the kinematic wave method. Because it ignores the dynamics of free surface wave propagation it is only appropriate for rough preliminary analysis of long-term continuous simulations.
Table 2-1 compares the features and limitations of the dynamic wave and kinematic wave methods of hydraulic analysis. Dynamic wave solutions tend to attenuate and disperse an inflow hydrograph as it routed downstream through a series of conduits while kinematic wave solutions show no attenuation, no dispersion, and some distortion of the hydrograph shape. This behavior is depicted in Figure 2-2 from Miller (1984) which shows the results of routing an inflow hydrograph down a 100-foot wide rectangular channel of 1% slope with a Manning's n of 0.06.
| Feature | Dynamic Wave | Kinematic Wave |
|---|---|---|
| Network topology | branched and looped | branched only |
| Flow splits | yes | with flow divider nodes |
| Adverse slopes | yes | no |
| Invert offsets | yes | ignored |
| Pumping | yes | only from storage nodes |
| Weirs and orifices | yes | only from storage nodes |
| Ponded overflows | yes | yes |
| Lateral seepage | yes | yes |
| Evaporation | yes | yes |
| Minor losses | yes | no |
| Culvert analysis | yes | no |
| Hydrograph attenuation | yes | no |
| Backwater effects | yes | no |
| Surcharge / Pressurization | yes | no |
| Reverse flow | yes | no |
| Tidal effects | yes | no |
Figure 2-2 Comparison of dynamic wave and kinematic wave solutions (from Miller, 1984)
There are two types of boundary conditions that a user must supply to a SWMM conveyance network model:
Both types of conditions can vary with time. Outfall node heads are only required for dynamic wave analysis. The options available for specifying their values were described in Section 2.1.2. External inflows can originate from any of the following sources:
Time-dependent runoff, groundwater, and RDII inflows are normally provided by SWMM's hydrology module (see Volume I). It automatically links the computed flow from each of these sources at each time period to their designated receiving node. (Each SWMM subcatchment object that generates runoff is assigned a conveyance system node that receives this runoff. See Figure 1-2.)
User-defined external inflows can be attached to any node of the network. They are typically used to describe dry weather sewage flows in sanitary sewer systems, base flows in natural stream channels, or inflows in the absence of any hydrologic modeling. They are expressed in the following general format:
Flow rate at time t = (baseline value) × (baseline pattern factor) + (scale factor) × (time series value at time t)
The baseline value is some constant. The baseline pattern is a combination of repeating hourly, daily, and monthly multiplier factors applied to the baseline value. The time series value is a time varying value and the scale factor is a constant multiplier applied to each time series value. Time series values can be specified at unequal intervals of time with interpolation used to obtain values at intermediate times.
A set of initial conditions at time 0 for all node heads and link flows in the conveyance network must be specified before a hydraulic analysis can begin. The default is to set all these values to 0, with the user having the option to specify initial heads at selected nodes and initial flow rates in selected conduit links.
Any initial flow rate assigned to a conduit link is assumed to represent a uniform steady flow. Therefore its flow depth can be set to the normal depth determined by the Manning equation as described in Section 5.5.2. From this depth an initial cross-section flow area for the conduit can be found which is required for kinematic wave analysis.
For dynamic wave analysis, if a non-storage, non-outfall node has not had an initial head assigned to it then it's initial head is set equal to the average elevation of the initial flow depths in the conduits that deliver flow into it.
______________________________________________________________________________
The movement of water through a conveyance network of channels and pipes is governed by the conservation of mass and momentum equations for gradually varied, unsteady free surface flow. Dynamic wave analysis solves the complete form of these equations and therefore produces the most theoretically accurate results. It can account for channel storage, backwater effects, entrance/exit losses, flow reversal, and pressurized flow. Because it couples together the solution for both water levels at nodes and flow in conduits it can be applied to any general network layout, even those containing multiple downstream diversions and loops. It is the method of choice for systems subjected to significant backwater due to downstream flow restrictions and with flow regulation via weirs and orifices. This generality comes at a price of having to use small time steps to maintain numerical stability.
Dynamic wave modeling was first introduced into version 3 of SWMM in 1981 as a separate program module known as EXTRAN (Extended Transport) (Roesner et al., 1983). The node-link solution method it uses had its origins in the Sacramento-San Joaquin Delta Model (Shubinski et al., 1965) and the WRE Transport Model (Kibler et al., 1975). Although more powerful solution techniques are available (such as implicit finite difference schemes (Cunge et al., 1980) and shock-capturing finite volume schemes (Toro, 2001)), SWMM 5 continues to use EXTRAN's node-link approach, with modifications made to enhance its stability, because of its simplicity and versatility.
The conservation of mass and momentum for unsteady free surface flow through a channel or pipe are known as the St. Venant equations and can be expressed as:
| $$\frac{\partial A}{\partial t} + \frac{\partial Q}{\partial x} = 0$$ | Continuity | (3-1) | |
| $$\frac{\partial Q}{\partial t} + \frac{\partial\left( \frac{Q^{2}}{A} \right)}{\partial x} + gA\frac{\partial H}{\partial x} + gAS_{f} = 0$$ | Momentum | (3-2) |
where
| x | = | distance (ft) |
| t | = | time (sec) |
| A | = | flow cross-sectional area (ft²) |
| Q | = | flow rate (cfs) |
| H | = | hydraulic head of water in the conduit (Z + Y) (ft) |
| Z | = | conduit invert elevation (ft) |
| Y | = | conduit water depth (ft) |
| Sf | = | friction slope (head loss per unit length) |
| g | = | acceleration of gravity (ft/sec²) |
The derivation of these equations can be found in standard texts such as Henderson (1966), Cunge et al. (1980) and French (1985). The assumptions on which they are based are:
The friction slope Sf can be expressed in terms of the Manning equation used to model steady uniform flow:
$$S_{f} = \left( \frac{n}{1.486} \right)^{2}\frac{Q|U|}{AR^{4/3}}$$ (3-3)
where
| n | = | the Manning roughness coefficient (sec/m1/3) |
| R | = | the hydraulic radius of the flow cross-section (ft) |
| U | = | flow velocity, equal to $\frac{Q}{A}$ (ft/sec). |
and 1.486 converts from m1/3 to ft1/3. Use of the absolute value sign on the velocity term makes Sf a directional quantity (since Q can be either positive or negative) and ensures that the frictional force always opposes the flow. Manning roughness coefficients for wide range of channel surfaces and pipe materials can be found in Appendix G.
For a specific cross-sectional geometry, the flow area A is a known function of water depth Y which in turn can be obtained from the head H. Thus the dependent variables in these equations are flow rate Q and head H, which are functions of distance x and time t. To solve these equations over a single conduit of length L, one needs a set of initial conditions for H and Q at time 0 as well as boundary conditions at x = 0 and x = L for all times t.
The continuity equation 3-1 can be combined with the momentum equation 3-2 to produce the following form of the momentum equation for a conduit (see sidebar below for details):
$$\frac{\partial Q}{\partial t} = 2U\frac{\partial A}{\partial t} + U^{2}\frac{\partial A}{\partial x} - gA\frac{\partial H}{\partial x} - gAS_{f}$$ (3-4)
Combining the Continuity and Momentum Equations
The $\frac{\partial\left( \frac{Q^{2}}{A} \right)}{\partial x}$ term in the momentum equation 3-2 can be re-expressed as:
$$\frac{\partial\left( \frac{Q^{2}}{A} \right)}{\partial x} = \frac{\partial\left( U^{2}A \right)}{\partial x} = 2AU\frac{\partial U}{\partial x} + U^{2}\frac{\partial A}{\partial x}$$ (a)
Using $Q = UA$, the continuity equation 3-1 can be written as:
$$\frac{\partial A}{\partial t} + A\frac{\partial U}{\partial x} + U\frac{\partial A}{\partial x} = 0$$ (b)
Multiplying both sides of (b) by $U$ and re-arranging terms leads to:
$$AU\frac{\partial U}{\partial x} = - U\frac{\partial A}{\partial t} - U^{2}\frac{\partial A}{\partial x}$$ (c)
Substituting this into the first term on the right hand side of (a) produces:
$$\frac{\partial\left( \frac{Q^{2}}{A} \right)}{\partial x} = - 2U\frac{\partial A}{\partial t} - U^{2}\frac{\partial A}{\partial x}$$ (d)
Substituting (d) into 3-2 and re-arranging terms gives the final result:
$$\frac{\partial Q}{\partial t} = 2U\frac{\partial A}{\partial t} + U^{2}\frac{\partial A}{\partial x} - gA\frac{\partial H}{\partial x} - gAS_{f}$$ (e)
While this equation can be used to compute the time trajectory of flow in a conduit, another relationship is needed to do likewise for heads. SWMM's node – link representation of the conveyance network, conceptualized in Figure 3-1, does this by providing a continuity relationship at junction nodes that connect conduits together within a conveyance network. As shown in the figure, a continuous water surface is assumed to exist between the water elevation at a node and in the conduits that enter and leave it. Two types of nodes are possible. Non-storage junction nodes are assumed to be points with zero volume and surface area while storage nodes (such as ponds and tanks) contain both volume and surface area.
Figure 3-1 Node-link representation of a conveyance network in SWMM (from Roesner et al, 1992).
Each "node assembly" consists of the node itself and half the length of each link connected to it. Conservation of flow for the assembly requires that the change in volume with respect to time equal the difference between inflow and outflow. In equation terms:
$$\frac{\partial V}{\partial t} = \frac{\partial V}{\partial H}\frac{\partial H}{\partial t} = A_{S}\frac{\partial H}{\partial t} = \sum_{}^{}Q$$ (3-5)
where:
| V | = | node assembly volume (ft³) |
| AS | = | node assembly surface area (ft²) |
| ΣQ | = | net flow into the node assembly (inflow – outflow) (cfs) |
The $\sum_{}^{}Q$ term includes the flow in the conduits connected to the node as well as any externally imposed inflows such as wet weather runoff or dry weather sanitary flow.
Each node assembly's surface area consists of the node's storage surface area ASN (if it's a storage node) plus the surface area contributed by the links connected to it, $\sum_{}^{}A_{SL}$, where ASL is the surface area contributed by a connecting link. Thus the node continuity equation can be written as:
$$\frac{\partial H}{\partial t} = \frac{\sum_{}^{}Q}{A_{SN} + \sum_{}^{}A_{SL}}$$ (3-6)
The flow depth at the end of a conduit connected to a node can be computed as the difference between the head at the node and the invert elevation of the conduit. The node and link surface areas are computed as functions of their respective flow depths.
Equations 3-4 and 3-6 provide a coupled set of partial differential equations that solve for flow Q in the conduits and head H at the nodes of the conveyance network. Because they cannot be solved analytically a numerical solution procedure must be used instead.
The material that follows applies to networks containing only conduits. Inclusion of flow control devices (pumps, orifices, and weirs) and other processes (seepage, evaporation, and minor losses) will be covered in subsequent chapters of this manual.
The spatial and temporal derivatives in equations 3-4 and 3-6 can be replaced with the following finite difference approximations:
$$\frac{\partial A}{\partial x} = \frac{\left( A_{2} - A_{1} \right)}{L}$$ (3-7)
$$\frac{\partial H}{\partial x} = \frac{\left( H_{2} - H_{1} \right)}{L}$$ (3-8)
$$\frac{\partial A}{\partial t} = \frac{\mathrm{\Delta}\overline{A}}{\mathrm{\Delta}t}$$ (3-9)
$$\frac{\partial Q}{\partial t} = \frac{\mathrm{\Delta}Q}{\mathrm{\Delta}t}$$ (3-10)
$$\frac{\partial H}{\partial t} = \frac{\mathrm{\Delta}H}{\mathrm{\Delta}t}$$ (3-11)
where
| A1 | = | flow area at the upstream end of the conduit (ft²) |
| A2 | = | flow area at the downstream end of the conduit (ft²) |
| H1 | = | hydraulic head at the upstream end of the conduit (ft) |
| H2 | = | hydraulic head at the downstream end of the conduit (ft) |
| L | = | conduit length (ft) |
| ∆t | = | time step (sec) |
| ∆$\ \overline{A}$ | = | change in average flow area, $\left( {\overline{A}}^{t + \mathrm{\Delta}t} - {\overline{A}}^{\ t} \right)$, over time step ∆t (ft²) |
| ∆Q | = | change in conduit flow, $\left( Q^{t + \mathrm{\Delta}t} - Q^{t} \right)$, over time step ∆t (cfs) |
| ∆H | = | change in nodal head, $\left( H^{t + \mathrm{\Delta}t} - H^{t} \right)$, over time step ∆t (ft). |
with the superscripts referring to time periods.
Substituting these finite difference approximations into the link momentum Equation 3-4, replacing Sf with Equation 3-3, and replacing A, U, and R with their average values over the conduit length (as indicated by over scores) allows the finite difference form of the link momentum equation to be written as:
$$\frac{\mathrm{\Delta}Q}{\mathrm{\Delta}t} = 2\overline{U}\frac{\mathrm{\Delta}\overline{A}}{\mathrm{\Delta}t} + {\overline{U}}^{2}\frac{\left( A_{2} - A_{1} \right)}{L} - g\overline{A}\frac{\left( H_{2} - H_{1} \right)}{L} - g\eta^{2}\frac{Q\left| \overline{U} \right|}{{\overline{R}}^{4/3}}$$ (3-12)
where $\eta = \frac{n}{1.486}$. Average values for A, U, and R can be approximated using the heads H1 and H2 as described later on in section 3.3.1.
The finite difference form of the nodal continuity equation 3-6 is:
$$\frac{\Delta H}{\Delta t} = \frac{\sum Q}{A_{SN} + \sum A_{SL}}$$ (3-13)
Previous versions of SWMM used an explicit forward Euler method (or more precisely the two-step Modified Euler method) to solve Equation 3-12, where known values of Q, H, A, $\overline{A}$, $\overline{U}$, and $\overline{R}$ at time t were used to solve for Q at time t + ∆t. Then Equation 3-13 was solved with the new conduit flows to find new head values H at time t + ∆t.
SWMM 5 uses an implicit backwards Euler method instead to provide improved stability (Ascher and Petzold, 1998). Under this scheme Equation 3-12 is re-written as:
$$Q^{t + \Delta t} = \frac{Q^{t} + \Delta Q_{inertia} + \Delta Q_{pressure}}{1 + \Delta Q_{friction}}$$ (3-14)
where the terms are defined as:
and now H and the quantities A, $\overline{A}$, $\overline{U}$, and $\overline{R}$ derived from it are all evaluated at the new time t+∆t. The finite difference form of the nodal continuity equation 3-12 can be expressed as:
$$H^{t + \mathrm{\Delta}t} = H^{t} + \frac{\frac{\Delta t}{2}\left( \sum_{}^{}{Q^{t} + \sum_{}^{}Q^{t + \mathrm{\Delta}t}} \right)}{\left( A_{SN} + \sum_{}^{}A_{SL} \right)^{t + \mathrm{\Delta}t}}$$ for non-outfall (3-15a)
$$H^{t + \mathrm{\Delta}t} = H_{Outfall}$$ for outfall nodes (3-15b)
HOutfall is a user-supplied value that sets the head at a terminal outfall node. It can be a constant value, a value extracted from a user-supplied time series, or the elevation of the critical or normal flow depth in the connecting conduit. For the latter option, critical or normal depth is computed internally as a function of the conduit's flow rate and geometry as described in Chapter 5.
Equations 3-14 and 3-15 can be solved implicitly over a given time step ∆t using functional iteration (also known as successive approximations or Picard's method). The method is described in the sidebar titled "*Dynamic Wave Solution Procedure*". Because flows and heads are updated one conduit and node at a time and not simultaneously, the results at each time step are invariant to the order in which the conduits and links are evaluated. This allows Steps 2 and 4 of the solution procedure to be implemented using separate threads running in parallel on multi-processor computers which can offer a significant reduction in computation time.
Evaluation of the flow updating formula 3-14 requires values for the average area ($\overline{A}$), hydraulic radius ($\overline{R}$), and velocity ($\overline{U}$) for the conduit in question. These values are computed using heads H1 and H2 belonging to the most recently computed head estimates *Hlast* at either end of the conduit. The flow depth Y1 at the upstream end of the conduit is computed as:
$$0 \text{ for } H_{1} \leq Z_{1}$$ $$H_{1} - Z_{1} \text{ for } Z_{1} < H_{1} \leq Z_{1} + Y_{full}$$ $$Y_{full} \text{ for } H_{1} > Z_{1} + Y_{full}$$ (3-16)
where Z*1* is the elevation of the invert of the upstream end of the conduit and Yfull is the full depth of the conduit. A similar expression using H2 and Z2 applies to Y2 at the downstream end of the conduit.
Dynamic Wave Solution Procedure
The following steps are used to update link flows and nodal heads over a given time step from t to t + ∆t for dynamic wave analysis:
- Initially let *Qlast* and *Hlast* be the flow in each link and the head at each node, respectively, computed at time t. At time 0 these values are provided by the user-supplied initial conditions.
- Solve Equation 3-14 for each link producing a new flow estimate *Qnew* for time t + ∆t, basing the values of A, $\overline{A}$, $\overline{U}$, and $\overline{R}$ on *Hlast*.
- Combine *Qnew* and *Qlast* together using a relaxation factor θ to produce a weighted value of *Qnew*: $$Q^{new} = (1 - \theta)Q^{last} + \theta Q^{new}$$
- Compute a value for *Hnew* at each node from Equation 3-15 using the flows *Qnew* for Q^t+∆t^ and the heads *Hlast* to evaluate $A_{S}^{t + \Delta t}$.
- As with flows, apply a relaxation factor to combine *Hlast* and *Hnew*: $$H^{new} = (1 - \theta)H^{last} + \theta H^{new}$$
- If *Hnew* is close enough to *Hlast* for each node then the process stops with *Qnew* and *Hnew* as the solution for time t+∆t. Otherwise, *Hlast* and *Qlast* are set equal to *Hnew* and *Qnew*, respectively, and the process returns to step 2.
Notes:
- The relaxation factor θ is set to 0.5.
- The convergence tolerance and maximum number of trials can be set by the user. Their default values are 0.005 feet and 8, respectively.
- For links whose end node heads have already converged, steps 2 and 3 can be skipped and *Qnew* can be set equal to *Qlast*.
Values of $\overline{A}$ and $\overline{R}$ are computed from the conduit's cross section geometry at the average flow depth $\frac{\overline{Y} = \left( Y_{1} + Y_{2} \right)}{2}$. Formulas for doing so are described in Chapter 5 of this manual. The average velocity $\overline{U}$ is found by dividing the most current flow value *Qlast* by the average area $\overline{A}$.
In addition, the average area and hydraulic radius used in the pressure and friction terms of equation 3-14 are upstream weighted to reflect how close a conduit's flow is to being supercritical. Supercritical flow is influenced only by upstream conditions (i.e., wave disturbances propagate only in the downstream direction). The weight is derived from the Froude number Fr for *Qlast*:
$$Fr = \frac{\left| \overline{U} \right|}{\sqrt{g\frac{\overline{A}}{\overline{W}}}}$$ (3-17)
where $\overline{W}$ is the top water surface width at the average depth $\overline{Y}$. (Fr is set to 0 for closed conduits flowing full). A factor σ is then computed as:
$$1 \text{ for } Fr \leq 0.5$$ $$2(1 - Fr) \text{ for } 0.5 < Fr < 1$$ $$0 \text{ for } Fr \geq 1$$ (3-18)
It is used to modify the average area in Equation 3-14b and the average hydraulic radius in Equation 3-14c as follows:
$${\overline{A}}' = A_{1} + \ \sigma\left( \overline{A} - A_{1} \right)$$ (3-19)
$${\overline{R}}' = R_{1} + \ \sigma\left( \overline{R} - R_{1} \right)$$ (3-20)
where A1 and R1 are the flow area and hydraulic radius, respectively, based on the upstream flow depth Y1.
Under normal conditions the surface area that a conduit contributes to its upstream node (ASL1) is the average top width of the water surface over the upstream half of the conduit times half of the conduit's length. In equation form:
$$A_{SL1} = \left( \frac{W\left( Y_{1} \right) + \ W(\overline{Y})}{2} \right)\frac{L}{2}$$ (3-21)
where W(Y) is the flow cross-section top width at a given flow depth Y and $\overline{Y} = \frac{\left( Y_{1} + Y_{2} \right)}{2}$. A similar expression applies to the downstream surface area ASL2. W(Y) is computed from the conduit's cross-section geometry as described in Chapter 5.
Because sewer systems are frequently built with pipe invert discontinuities at manholes they can encounter free-fall conditions where the water elevation in the node receiving flow is below the pipe's invert elevation or the flow's critical depth. Also during periods of filling or draining, conduits can have one end or the other dry. These conditions require that adjustments be made to the way that flow depth is assigned and to how surface area is computed.
Figure 3-2 illustrates the various types of special flow conditions that affect surface area calculations:
Table 3-1 summarizes the various flow conditions and the adjustments that are made for each. Procedures for computing the critical depth and normal depth for a given flow rate and cross-section geometry are discussed in Chapter 5 of this manual.
Finally, to guard against the nodal head change formula 3-15 from becoming unbounded as surface area becomes vanishingly small, a global minimum surface area ASmin is imposed as follows:
$$A_{S} = max\left( A_{Smin},\ A_{SN} + \sum_{}^{}A_{SL} \right)$$ (3-22)
Its default value is 12.56 sq ft (i.e., the area of a 4-ft diameter manhole) which can be overridden by the user. This is strictly a computational device and does not add volume to a junction node (where *ASN = 0*) nor change it into a storage node.
Figure 3‑2 Special flow conditions for dynamic wave analysis
Table 3-1 Surface area adjustments for various dynamic wave flow conditions
| Condition | Criteria | Adjustments |
|---|---|---|
| Upstream Dry | Y1 = 0 Z1 > E1 | ASL1 = 0* if $H_{2} \leq Z_{1}$ otherwise use Upstream Critical adjustment |
| Downstream Dry | Y2 = 0 Z2 > E2 | ASL2 = 0* if $H_{1} \leq Z_{2}$ otherwise use Downstream Critical adjustment |
| Upstream Critical | Q < 0 Z1 > E1 H1 – Z1 < Y* | Y1 = Y* H1 = Y* + Z1 ASL1 = 0 $$A_{SL2} = L\frac{\left( \overline{W} + W_{2} \right)}{2}$$ |
| Downstream Critical | Q > 0 Z2 > E2 H2 – Z2 < Y* | Y2 = Y* H2 = Y* + Z2 ASL2 = 0 $$A_{SL1} = L\frac{\left( \overline{W} + W_{1} \right)}{2}$$ |
| Notes: | ||
| 1. E1 = upstream node invert elevation, E2 = downstream node invert elevation. | ||
| 2. Z1 = upstream conduit invert elevation, Z2 = downstream conduit invert elevation. | ||
| 3. Y* = smaller of critical depth and normal depth at current conduit flow rate. | ||
| 4. Adjusted H values are only used in the flow updating Equation 3-14 and do not replace nodal head values. |
It has been found that reducing the contribution of the inertial terms in the Saint Venant equation as the flow shifts between sub-critical and supercritical states improves the solution's stability (see Fread et al. (1996) where it is referred to as the Local Partial Inertia technique). SWMM 5 offers the option to use the aforementioned σ factor to dampen the inertial term ${\mathrm{\Delta}Q}_{inertia}$ in the flow updating formula 3-14. As seen by equation 3-18, the factor is 1 for Froude numbers up to 0.5, 0 for Froude numbers at 1 or higher, and varies linearly in between. The damping factor σ is computed and applied on a conduit by conduit basis.
Another option offered by SWMM 5 is to ignore the inertial term completely. This corresponds to the so-called local inertial formulation of the St. Venant equation (de Almeida and Bates, 2013). It drops the convective acceleration term $\left( \frac{\partial\left( \frac{Q^{2}}{A} \right)}{\partial x} \right)$ of the momentum equation 3-2 altogether resulting in ${\mathrm{\Delta}Q}_{inertia}$ being 0 in all conduits. (This is not the same as the diffusion wave formulation which also drops the local acceleration term $\left( \frac{\partial Q}{\partial t} \right)$ of the momentum equation as well.) This option can also result in improved stability particularly during periods of rapid flow change.
Each time a new flow is computed using Equation 3-14 it is checked to see if it should be limited by the normal flow value for the upstream flow depth and conduit slope. The following criteria are used to perform this check:
The last criterion can be limited to just slope, just Froude number or either slope or Froude number as a program option. When all of these criteria are satisfied the flow is limited to be no greater than that found by the Manning equation (Qnorm) using upstream conditions:
$$Q_{norm} = \frac{1.49}{n}A_{1}R_{1}^{2/3}\sqrt{S_{0}}$$ (3-23)
where S0 is the conduit slope. Two other flow limiting conditions are also checked. If the conduit was assigned an upper flow limit then the flow is not allowed to exceed that value. If the conduit contains a flap gate and the computed flow is negative then the flow is set to 0.
SWMM defines a node to be in a surcharged condition when all conduits connected to it are full or when the node's water level exceeds the crown of the highest conduit connected to it (see Figure 3-3). It should be noted that surcharged (or pressurized) flow can occur in a closed conduit without either of its end nodes being surcharged. For example, if the node water level in Figure 3-3 was above the invert of pipe N+1 but below its crown, then pipes N and N-1 would remain pressurized (assuming they were also full at their upstream ends) while the node itself would no longer be surcharged.
Figure 3-3 Illustration of a surcharged node
When a node becomes surcharged there is no more volume available in the conduits forming the node's assembly to absorb the difference between inflow and outflow at the node. Thus $\frac{\partial V}{\partial t}$ in the flow continuity Equation 3-5 is 0 and the surcharged nodal continuity condition becomes:
$$\sum_{}^{}Q = 0$$ (3-24)
By itself, this equation is insufficient to update nodal heads at the new time step since it only contains flows. In addition, because the flow and head updating equations for the system are not solved simultaneously, there is no guarantee that the condition will hold at the surcharged nodes after a flow solution has been reached.
To enforce the surcharge flow continuity condition, it can be expressed in the form of a perturbation equation:
$$\sum_{}^{}\left\lbrack Q + \frac{\partial Q}{\partial H}\mathrm{\Delta}H \right\rbrack = 0$$ (3-25)
where ∆H is the adjustment to the node's head that must be made to achieve a flow balance. Solving for ∆H yields:
$$\mathrm{\Delta}H = \frac{- \sum_{}^{}Q}{\sum_{}^{}\frac{\partial Q}{\partial H}}$$ (3-26)
where the summations are made over all conduits that are connected to the node in question.
The gradient of flow in a conduit with respect to the head at either end node can be evaluated by differentiating the flow updating equation 3-14 resulting in:
$$\frac{\partial Q}{\partial H} = \frac{\frac{- g\overline{A}\mathrm{\Delta}t}{L}}{1 + \mathrm{\Delta}Q_{friction}}$$ (3-27)
The numerator of $\frac{\partial Q}{\partial H}$ has a negative sign in front of it because when evaluating ΣQ flow directed out of a node is considered negative while flow into the node is positive. It is computed for each link at the same time that the link's flow is updated at Step 2 of the iterative process described in Section 3.3. The surcharge equation 3-26 is analogous to the head updating formula used in the Hardy Cross method for pressurized water distribution networks (Bhave, 1991).
To accommodate node surcharging, Step 4 of the iterative process that updates a node's head is modified as follows. First the node is checked to see if it is in a surcharged state, i.e., that it is not a storage or outfall node and has *Hlast* greater than the top of the highest connecting conduit Hcrown. If it is not surcharged then Equation 3-15 is used as before to update its head. Otherwise the following modified form of Equation 3-26 is used to estimate the new head Hnew for time t + ∆t:
$$H^{new} = H^{last} + \frac{\alpha\sum_{}^{}Q^{new}}{(1 - \beta)\sum_{}^{}\left( \frac{\partial Q}{\partial H} \right)^{last} + \frac{\beta A_{S}^{last}}{\mathrm{\Delta}t}}$$ (3-28)
where
| α | = | 0.6 for upstream terminal nodes with only outflow links and 1.0 otherwise |
| β | = | $exp( - 15.0f_{H})$ |
| fH | = | $$\frac{\left( H^{last} - E \right)}{\left( H_{crown} - E \right) - \ 1}$$ |
| Hcrown | = | elevation of the crown of the node's highest connecting flowing conduit (ft) |
| E | = | elevation of the node's invert (ft) |
| $$A_{S}^{last}$$ | = | surface area of the node the last time it was not surcharged (ft²) |
The α factor is used to reduce oscillations in head at upstream terminal nodes that have only outflow links (Roesner et al., 1992). The β factor helps to reduce fluctuations in head when the node first begins to surcharge (Roesner et al., 1980). At low surcharge depths it makes the denominator in the head update formula be a weighted combination of the pure surcharge formula 3-26 and the surface area formula 3-15. By the time that the water level rises 25% above the highest conduit, the equation is 98% pure surcharge.
The flow values used for $\sum_{}^{}Q$ are the new flow estimates found from Step 3 of the solution procedure. The $\frac{\partial Q}{\partial H}$ values are those that were last evaluated at Step 2. And finally, empirical testing has shown that more robust performance is obtained when under-relaxation is not applied to Hnew at Step 5 of the solution procedure when surcharging occurs.
As an alternative to the surcharge algorithm described in the previous section, SWMM can utilize the Preissmann Slot Method (Cunge and Wegner, 1964) for handling pressurized flow in closed conduits. In this case the conduit's cross-section is assumed to have a thin open slot at its top which runs down its length. This permits the water level in the conduit to exceed its full depth while only slightly increasing its flow area. It thus becomes possible to compute a surface area contribution to the conduit's end nodes once it reaches full depth. As a result, SWMM is able to use its regular procedure for solving the open channel flow equations 3-14 and 3-15 for all flow conditions without having to resort to the surcharge algorithm.
In theory the width of the slot should be determined based on having the celerity of an open channel gravity wave equal the speed of a pressure wave affected by the compressibility of the elastic pipe wall. This would result in a slot width wslot equal to:
$w_{slot} = gA/c^{2}$ (3-29)
where g is the acceleration of gravity, A is the conduit's cross-sectional area when full and c is the speed of the pressure wave. The latter quantity depends on the conduit's diameter, wall thickness, and modulus of elasticity and typically ranges from a few hundred to several thousand ft/sec (Yen, 2001).
Some care is needed in choosing a slot width since too large a value will result in reduced accuracy while too small a value can cause numerical instabilities. There is also the issue of maintaining a smooth transition between almost full flow and slot flow. The choice used by SWMM is a modified version of a formula proposed by Sjőberg (1982) and is given by:
$\frac{w_{slot}}{W_{\max}} = 0.5423\exp\left( - \left( \frac{Y}{Y_{full}} \right)^{2.4} \right)$ (3-30)
where Wmax is the conduit's maximum width, Yfull is its full depth, and Y is depth of flow. This equation applies to $\frac{Y}{Y_{full}}$ values between 0.985257 and 1.7. Below this range the slot is not used while above it the slot width relative to Wmax is clamped at 0.01. The range's lower limit was chosen so that the width computed from equation 3-30 is the same as the width across a circular pipe at that flow depth. This helps produce a smooth transition between open channel and pressurized flow regimes.
When the slot method is employed, equation 3-16 is modified so that Y is no longer limited by Yfull. When Y reaches the limit at which the slot formula applies, its resulting width is used to compute the surface area that a conduit contributes to its end nodes as described in Section 3.3.2. It also contributes to the conduit's flow area when it rises above the full depth. It is not used when computing the conduit's hydraulic radius.
Each non-outfall node is assigned a maximum allowable head Hmax by the user. It consists of both a maximum free water surface elevation that can exist at the node plus an optional "surcharge" depth that allows for pressurization. For example, if the node were a manhole junction Hmax would typically be the ground surface elevation. If it were a storage unit it would be the water surface elevation when the unit is full. For a junction between natural channels it would be the top of the highest channel. For a fitting that connects pipe segments together it would be the top of the highest pipe. In the latter case a large surcharge depth (such as several hundred feet) should be assigned to the fitting junction so that the connected pipes can pressurize if need be. A manhole junction might also be assigned a surcharge depth if it has a bolted cover.
Normally when the new head estimate Hnew at a node computed at Step 5 of the iterative solution process exceeds Hmax it is set equal to Hmax and the node becomes flooded. The overflow rate Qovfl associated with this condition is the average net flow rate (inflow – outflow) seen by the node over the current time step:
$$Q_{ovfl} = 0.5\left( \sum_{}^{}{Q^{t} + \sum_{}^{}Q^{t + \mathrm{\Delta}t}} \right)$$ (3-31)
This flow is then lost from the system, the same as the flow entering a terminal outfall node.
The option exists for a junction node with no surcharge depth (and thus always maintaining a free surface) to have excess flooded water pond atop the node (see Figure 3-4). In this case the user assigns the node a "ponded area" parameter, AP, that creates a virtual storage area on top of the node and Hnew is no longer limited to Hmax . When Hnew exceeds Hmax the ponded node is treated as a normal storage node whose head is updated using the normal, non-surcharge formula Equation 3-15 with ASN = AP. The only exception to this is when the node transitions between having a head below Hmax to a flooded head above Hmax (or vice versa) within a time step. In this case the updated head is restricted to be just a small value above Hmax (or below it in the opposite case) to avoid wide swings in head during the transition.
Figure 3-4 Ponding of excess water above a junction
When a node is allowed to pond, flooded water is not lost from the system. The ponded depth above the node will rise during periods of flow excess (i.e., inflow greater than outflow) and fall during periods of flow deficit. A node with a large ponded area will see smaller changes in ponded depth for a given flow excess (or deficit) than will one with a small ponded area. Selection of which nodes can pond and their respective ponded areas would depend on local topography, typically occurring along flat sections or at sag points of the drainage system.
Here is a summary of the special conditions that are applied to the basic iterative solution process for dynamic wave analysis described earlier in Section 3.2:
The numerical stability of SWMM's dynamic wave results can be affected by the choice of the simulation time step. Numerical instability is characterized by oscillations in flow and water surface elevation that do not dampen out over time. Another indicator of numerical instability is a node which continues to "dry up" on each time-step despite a constant or increasing inflow from upstream sources.
Aside from examining the results for each conduit and node, SWMM 5 provides two metrics in its Status Report that can help determine if a solution shows signs of instability. One is the overall flow continuity error for the system. This is the difference between inflow and outflow for the entire system over the duration of the simulation. If this number is greater than 5 to 10 percent then the cause may be numerical instability (although other factors can affect the continuity error as well).
A second metric is a link's Flow Instability Index (FII). This index counts the number of times that the flow value in a link is higher (or lower) than the flow in both the previous and subsequent time periods. The index is normalized with respect to the expected number of such 'turns' that would occur for a purely random series of values and can range from 0 to 150. The Status Report identifies the links having the five highest FII's. Unfortunately since the FII does not take into account the magnitude of the flow fluctuations it cannot determine whether the instability is of engineering significance or not.
Stable explicit solutions of the St. Venant equations require that the time step be no longer than the time it takes for a dynamic wave to travel the length of the conduit (Cunge et al., 1980). This is known as the Courant-Friedrichs-Lewy (CFL) condition and can be expressed as:
$$\mathrm{\Delta}t \leq \frac{L}{\left| \overline{U} + c \right|}$$ (3-30)
where c is the wave celerity given by:
$$c = \sqrt{g\frac{\overline{A}}{\overline{W}}}$$ (3-31)
An equivalent form of this condition can be written as:
$$\mathrm{\Delta}t \leq \frac{L}{\left| \overline{U} \right|}\left( \frac{Fr}{1 + Fr} \right)Cr$$ (3-32)
where Fr is the flow's Froude number (see Equation 3-17) and Cr is the Courant number. The latter serves as an adjustment parameter that determines how conservative (Cr < 1) or liberal (Cr > 1) one wishes to be in strictly meeting the CFL condition (Cr = 1).
Although the SWMM 5 solution method uses an iterative implicit procedure in time to update flows and heads, it does so one conduit and node at a time, not simultaneously. There is no spatial coupling between elements as would occur in an unconditionally stable implicit solution scheme. Thus the CFL condition would still apply but perhaps not as strictly (by allowing one to use a Cr value greater than 1).
One can estimate a ∆t for each conduit by using the conduit's full depth Yfull in place of $\frac{\overline{A}}{\overline{W}}$ in Equation 3-31 and ignoring the velocity in Equation 3-30. The solution time step would then be determined by the conduit with the smallest value of $\frac{L}{\sqrt{gY_{full}}}$ . Short conduits lead to small time steps and longer computational times. Time steps of 10 to 30 seconds should suffice for conduit lengths of 200 to 400 feet (the typical spacing between sewer manholes) and full depths from 1 to 4 feet.
An option is available to artificially lengthen short conduits so that the CFL condition for a given user-supplied time step ∆t is met. The modified length $L'$ is given by
$$ L' = \max L, \Delta t ( \sqrt{gY_{full}} + \frac{Q_{full}}{A_{full}} )