Approximate Solutions of Overland Flow using Kinematic Waves
Jorge A. Ramirez
Assume we have surface runoff from a two-dimensional, plane impermeable surface such that we may assume the following values to be constant:
m = 2
a = 5 s-1
L = 10 m
This basin is subjected to the following precipitation, all of which runs off:
Time (min) Rainfall (cm/hr)
0 - 3 7
3 - 6 10
>6 0
Calculate and plot the outflow hydrograph at the downstream end of the plane. In order to do so, decompose the above rainfall event into two different rainfall pulses and assume that the solution to this problem can be obtained as a linear superposition of kinematic wave solutions to the two different rainfall pulses, each beginning with a dry bed.
Determine whether the solution obtained by this method depends on the choice of pulses in the decomposition of the storm. Be specific and support your answers.
restart;with(student);
Define duration of peak discharge, tp ; tt is the beginning time of the rainfall pulse, tr is the duration of the pulse, L is the length of the overland flow plane, and i is the intensity of the rainfall pulse:
tp:=(tt,tr,L,i)->tt+tr+(L/a/(i*tr)^(m-1)-tr)/m;
Define time of concentration, tc :
tc:=(L,i,a,m)->(L*i^(1-m)/a)^(1/m);
For m=2, define the flow depth during the recesion of the hydrograph at the downstream end :
y:=(t,tr,i)->(-a*m*(t-tr)+sqrt((a*m*(t-tr))^2+4*a*L/i))/2/a*i;
Define hydrograph at the downstream end for the case tr<tc :
q1:=(tt,t,tr,i)->piecewise(t<=tt,0,t>tt and t<=tt+tr,a*(i*(t-tt))^m,t>tt+tr and t<=tp(tt,tr,L,i),a*(i*tr)^2,t>tp(tt,tr,L,i),a*y(t-tt,tr,i)^m);
Define hydrograph at the downstream end for the case tr>tc :
q2:=(tt,t,tr,i)->piecewise(t<=tt,0,t>tt and t<=tt+tc(L,i,a,m),a*(i*(t-tt))^m,t>tt+tc(L,i,a,m) and t<=tt+tr,a*(i*tc(L,i,a,m))^2,t>tt+tr,a*y(t-tt,tr,i)^m);
Define data for this particular probelm:
a:=5;m:=2;L:=10;
First decomposition: two pulses as in the table above; one of intensity 7 cm/h, duration 180 seconds, and starting at tt=0; the other of intensity 10 cm/h, duration 180 seconds and starting at tt=180 seconds.
> r1:=t->piecewise(t<180,7,0);r2:=t->piecewise(t<180,0,t>=180 and t<=360,10,0);plot([r1(t),r2(t)],t=0..400,color=[red,blue]);;
First pulse:
evalf(tp(0,180,10,7/100/3600));
> evalf(tc(10,0.07/3600,a,m));
Second Pulse:
tp(180,180,10,10/100/3600);
> evalf(tc(10,0.10/3600,a,m));
Plot hydrograph from first pulse:
plot(q1(0,t,180,0.07/3600),t=0..1000);
Plot hydrograph from second pulse:
plot(q1(180,t,180,0.1/3600),t=0..1000);
Plot superposition of both hydrographs:
plot(q1(0,t,180,0.07/3600)+q1(180,t,180,0.1/3600),t=0..1000);
Second decomposition: two pulses one of intensity 7 cm/h, duration 360 seconds, and starting at tt=0; the other of intensity 3 cm/h, duration 180 seconds and starting at tt=180 seconds.
> r1:=t->piecewise(t<360,7,0);r2:=t->piecewise(t<180,7,t>=180 and t<=360,3+7,0);plot([r1(t),r2(t)],t=0..400,color=[red,blue]);;
First Pulse:
evalf(tp(0,360,10,7/100/3600));
> evalf(tc(10,0.07/3600,a,m));
The first pulse is such that tr > tc . Thus, use hydrograph type q2.
Second Pulse:
evalf(tp(0,180,10,.03/3600));
> evalf(tc(10,0.03/3600,a,m));
The second pulse is such that tr < tc . Thus, use hydrograph type q1.
Plot hydrograph from first pulse:
plot(q2(0,t,360,0.07/3600),t=0..1000);
Plot hydograph from second pulse:
plot(q1(180,t,180,0.03/3600),t=0..1500);
Plot superposition of both hydrographs:
plot(q2(0,t,360,0.07/3600)+q1(180,t,180,0.03/3600),t=0..1000);
Compare predictions from the two decomposition approaches: plot([q1(0,t,180,0.07/3600)+q1(180,t,180,0.1/3600),q2(0,t,360,0.07/3600)+q1(180,t,180,0.03/3600)],t=0..1000, color=[red,blue]);
>
>