Flow Routing
Flow routing is a procedure to determine the time and magnitude of
flow (i.e. the flow hydrograph) at a point on a watercourse from
known or assumed hydrographs at one or more points upstream.
We want to predict what a downstream
hydrograph would be if we know the
upstream hydrograph
If the flow is a flood, the procedure is
specifically called flood routing
Lumped flow routing: flow is
calculated as a function of time alone
at a particular location. Also called
hydrologic routing.
Distributed flow routing: flow is calculated as a function of space and
time throughout the space. Also called hydraulic routing.
Hydrologic Routing
Continuity equation:
dS
I (t ) Q (t )
dt
It is not enough to know inflow hydrograph, I(t) to solve for the
outflow hydrograph; Q(t) as S(t) are also unknown.
A second relationship or storage function is needed: S = f (I,Q)
In reservoir routing level pool routing is commonly employed where
S=f(Q).
Q and S are related to reservoir water level, h
Runge-Kutta method is an alternative to level pool routing. It is a
little bit more complicated, but does not require special computation
of S=f(Q) and is more physics based
In channel flow routing Muskingum Method is commonly used where
S is linearly related to I and Q.
Flow Routing
The relationship between outflow and storage could be either invariable or
variable.
Invariable storage function applies to
reservoirs with a horizontal water
surface. Such reservoirs are wide and
deep with low flow velocities
When a reservoir has a horizontal
water surface there is a unique S=f(Q)
relationship. For such reservoirs Qpeak
occurs when I=Q, because Smax occurs
when dS/dt =I-Q =0
A variable S-Q relationship applies to long, narrow reservoirs and to open
channel or streams, where the water surface profile could be significantly curved
due to backwater effects.
The amount of storage due to backwater depends on the time rate of change of
flow through the system, thus S-Q is no longer unique.
Due to retarding effect of backwater, Qpeak usually occurs after I=Q
Level Pool Routing
Let’s reconsider the continuity equation
dS (t )
I (t ) Q (t )
dt
In discrete form, for a time interval Dt:
DS
I (t ) Q (t )
Dt
S j 1 S j
Dt
I j I j 1
2
Q j Q j 1
2
The values Ij and Ij+1 are known. The values Qj and Sj are known at the
jth time interval from calculation during previous time interval.
Hence, two unknowns, Qj+1 and Sj+1. Rearranging:
2S j 1
2S j
Q j 1 I j I j 1
Q j
Dt
Dt
2S j 1
2S j
Q j 1 I j I j 1
Q j
Dt
Dt
In order to calculate Qj+1 a Q-S
function relating (2S/Dt+Q)
and Q is needed.
S-h: topographic maps or field
survey.
Q-h: hydraulic equations
For Dt use time interval of I(t)
To set up the data required for the
next time interval, the value of
2Sj+1/Dt +Qj+1 is calculated by
2S j 1
2S j 1
Q j 1
Q j 1 2Q j 1
Dt
Dt
Level Pool Routing
2S j 1
2S j
Q j 1 I j I j 1
Q j
Dt
Dt
1. Find Ij + Ij+1, 2Sj/Dt - Qj
2. Add (Ij + Ij+1) and (2Sj/Dt - Qj) to find (2Sj+1/Dt + Qj+1)
3. Use the (2S/Dt+Q) vs. Q relation to find the corresponding Qj+1
4. Find (2Sj+1/Dt - Qj+1) by subtracting 2Qj+1 from (2Sj+1/Dt + Qj+1)
5. Repeat calculations for next discharge value
The inconvenience of this method is that (2S/Dt+Q) vs. Q
relationship is dependent on Dt, i.e. for different Dt’s the relationship
must be reconstructed.
Example
A detention pond has vertical sites
and is 1 acre in area. The Q-h and
S-h relationships are given in the
table. Assume S(t=0) = 0
Use level pool routing method to
calculate the outflow hydrograph
from the inflow hydrograph given
in the table on next slide.
For all elevations:
A = 1 acre = 43,560 ft2
S = 43,560H
2S j 1
2S j
Q j 1 I j I j 1
Q j
Dt
Dt
* Dt = 10 min = 600 sec
2S j 1
2S j
Q j 1 I j I j 1
Q j
Dt
Dt
S1= Q1= 0
The value of Qj+1 is found
by linear interpolation. If
(x,y) is between (x1,y1)
and (x2,y2):
y y1
Q2 0
( y2 y1 )
( x x1 )
( x2 x1 )
(3 0)
(60 0) 2.4
(76 0)
River Routing
Routing in natural channels is complicated by the fact that storage is not a
function of outflow alone.
The storage in a stable river reach can be expected to depend primarily on the
inflow to and outflow from the reach, and secondarily on the hydraulic
characteristics of the channel cross section.
Two types of storages can be defined in natural channels:
Prism storage: Storage beneath a line
parallel to the streambed drawn from the
downstream end of the reach
Wedge storage: Storage between this
parallel line and the actual profile.
Wedge storage is (+) during raising flow,
and (-) during falling.
Muskingum Method
Total storage = S
= KQ + KX(I-Q)
= K[XI + (1-X)Q]
X: dimensionless constant between 0
and 0.5 with typical value of 0.2
K:travel time of a flood wave
through channel
Sj= K[XIj + (1-X)Qj]
and Sj+1= K[XIj+1 + (1-X)Qj+1]
Sj+1 - Sj = K[XIj+1 + (1-X)Qj+1 - XIj - (1-X)Qj]
Continuity: dS/dt = I – Q Sj+1- Sj = {(Ij+Ij+1) - (Qj+Qj+1)}Dt/2
Qj+1=C1Ij+1 + C2Ij + C3Qj where
C1
Dt 2 KX
2 K (1 X ) Dt
C2
Dt 2 KX
2 K (1 X ) Dt
C3
2 K (1 X ) Dt
2 K (1 X ) Dt
Muskingum Method
Note that C1 + C2 + C3 =1. Therefore it provides a check
If X = 0, then S = KQ, i.e. storage is not a function of inflow and becomes
reservoir routing.
If X = 0.5, then S = K(I+Q)/2, i.e. inflow and outflow have equal weights. In
other words, no change in flood hydrograph.
Great accuracy in determining X may not be necessary, because results are
relatively insensitive to the value of this parameter.
K = L/ck, where ck is wave celerity given by dQ/dA or dx/dt.
Using Manning’s equation for a wide channel, it can be shown that ck = 5u/3
where u is average flow velocity.
3 nB
K
5 S0
23
K can be approximated as
35
Q 2 5 L
Example
Qj+1=C1Ij+1 + C2Ij + C3Qj
K= 2.3 hr, X= 0.15, Dt=1 hr
Dt 2 KX
2 K (1 X ) Dt
1 2( 2.3)(0.15)
2( 2.3)(1 0.15) 1
0.063
C1
C2
Dt 2 KX
0.344
2 K (1 X ) Dt
C3
2 K (1 X ) Dt
0.593
2 K (1 X ) Dt
C1 C2 C3 1
Q2 C1 I 2 C2 I1 C3Q1
0.063(137) 0.344(93)
0.593(85) 91 cfs
© Copyright 2026 Paperzz