Gradually Varied Flow¶
Steady non-uniform flow in a prismatic channel with gradual changes in its water surface elevation
For example,
backwater produced by a dam or weir across a river
drawdown produced at a sudden drop in a channel
In gradually varied flow (GVF)
velocity varies along the channel
bed slope, water surface slope, and energy slope will all differ from each other
Note
Bottom slope \(S_0\) changes from one reach to the next, but is constant within a particular reach. (i.e. no slope change within a reach). In practice the slope changes are used to help delineate reaches.
Two basic assumptions in GVF analysis
Pressure distribution at any section is assumed to be hydrostatic
Gradual changes in the surface curvature give rise to negligible normal accelerations
Resistance to flow at any depth is assumed to be given by the corresponding uniform flow equation, such as the Manning’s formula with the condition that the slope term to be used in the equation is intended to be the energy slope (\(S_f\)) and not the bed slope
where \(\alpha=1\) (SI units) and \(\alpha=1.485\) (US customary units).
Differential Equation of the Water Surface¶
Recall from our specific energy discussion the various components of the Modified Bernoulli’s equation for an open channel
The total head at any cross section is (taking \(\alpha\) as unity for some visual simplicity)
The slope of the EGL is something like
Note
The minus sign because energy is decreasing in the +x direction
Substitute in some geometry to get into a discharge form (which is often more useful!)
Now make some observations: the slope of the EGL is the friction slope, and the last term is the channel slope at that location.
Calculus the … on the middle term with \(Q\)
Recall \(\frac{dA_i}{dy}\) is just the topwidth at the section
A wee bit of algebra
Observe the term in parenthesis is \(1-Fr_i^2\)
So the expression becomes (dropping the \(_i\) subscript
And we have an ordinary differential equation of the water surface. A plot of a particular solution, \(y(x)\) is called the water surface profile.
Classification of Water Surface Profiles¶
Process of identification of possible flow profiles as a prelude to quantitative computations
As \(y \rightarrow y_n\), \(\frac{dy}{dx} \rightarrow 0\) , i.e. the water surface approaches the normal depth line asymptotically.
As \(y \rightarrow y_c\), \(\frac{dy}{dx} \rightarrow \infty\), i.e. the water surface meets the critical depth line vertically.
High curvatures at critical depth zones violate the assumption of gradually-varied nature of the flow,
thus GVF computations have to begin or end a short distance away from the critical-depth location.
From our textbook
Note
The designations “mild” and “steep” are determined from the relative position of \(y_n\) and \(y_c\) values, not necessarily the slope of the physical bottom of the channel although in most cases the parallel is indeed true.
Control Sections¶
Section in which a fixed (unique?) relationship exists between the discharge and depth of flow.
Weirs, spillways sluice gates are some typical examples of structures which give rise to control sections.
Critical depth is also a control point.
It is effective in a flow profile which changes from subcritical to supercritical flow. Such
Control sections provide a key to the identification of proper profile shapes.
Subcritical flows have controls in the downstream end
Supercritical flows have controls in the upstream end
The direction of computation of subcritical profiles is upstream, and for supercritical, it is downstream.
From our textbook, some profiles with control points:
Practice possible profiles
Practice possible profiles
Lake Discharge Type Problems¶
Similar in spirit to the classic flow between two reservoirs in pipe flow, the connecting conduit can be an open channel.
Whether the channel behaves as hydraulically steep or mild affects how solutions are found.
Consider the example in the textbook
A long wreckedangular channel connects two reservoirs with slope of 5%. The channel is 10 meters wide, with Manning’s n of 0.030. The upstream reservoir surface is 3.50 meters above the channel bottom (headwater pool depth relative to channel invert) and the tailwater pool elevation is 2.50 meters above the outlet invert. Estimate the steady discharge in the channel.
Solution
# prototype functions
def Arect(depth,width):
Arect=depth*width
return(Arect)
def Prect(depth,width):
Prect=depth*2 + width
return(Prect)
def MCE(depth,width,slope,konstant,mann,gee):
qqq = (konstant/mann)*Arect(depth,width)*((Arect(depth,width)/Prect(depth,width))**(2/3))*slope**(1/2)
MCE = depth + (qqq**2)/(2*gee*(Arect(depth,width)**2))
return(MCE)
import math
W = 10.0 #given
S0 = 0.005 #given
n = 0.030 #given
HW = 3.50 #given
TW = 2.50 #given
g = 9.81 #Napolean's fault the dumb little squirt declared the meter a bit too long.
tolerance = 0.0001
# Assume steep
print("(1) Assume channel is hydraulically steep")
ycrit = (2./3.)*HW
Q = math.sqrt( g*(Arect(ycrit,W)**3)/W )
print(" y_c :",round(ycrit,3)," Q :",round(Q,3))
# Check limiting slope
K = 1.0
slopeL = (n**2)*(Q**2)/((K**2)*(Arect(ycrit,W)**2)*((Arect(ycrit,W)/Prect(ycrit,W))**(4/3)))
print("(2) Compute Limiting Slope : ",round(slopeL,3))
if S0 < slopeL:
print("(3) Test Limiting Slope \n Bottom slope smaller than limit slope, so channel is hydraulically mild")
print("(4) Iteratively find flow depth for mild slope from MCE function, report result(s)")
for i in range(10000):
dtest = i*(HW)/10000+0.00001 #small offset to prevent zero depths
nrg = MCE(dtest,W,S0,K,n,g)
if abs(nrg-HW) <= tolerance:
print(" Flow depth y: ",round(dtest,3)," Energy E: ",round(nrg,3)," HW Energy HW:",round(HW,3))
print(" Discharge Q:",round((K/n)*Arect(dtest,W)*((Arect(dtest,W)/Prect(dtest,W))**(2/3))*S0**(1/2),3)," cubic meters per second")
else:
print("\n Bottom slope greater than limit slope, so channel is hydraulically steep, use solution(s) above")
(1) Assume channel is hydraulically steep
y_c : 2.333 Q : 111.635
(2) Compute Limiting Slope : 0.011
(3) Test Limiting Slope
Bottom slope smaller than limit slope, so channel is hydraulically mild
(4) Iteratively find flow depth for mild slope from MCE function, report result(s)
Flow depth y: 2.869 Energy E: 3.5 HW Energy HW: 3.5
Discharge Q: 100.929 cubic meters per second