Discharge capacity of spillway
Ishii-Fujimoto's formulas are shown below which is described in the Collection of Hydraulic Formulas (JSCE, 1985).
For parabolic crest shape, the value of can be obtained as follow.
import numpy as np def calc_q(): nsl=np.array([0.85, 0.85, 0.85, 0.85]) # downstream slope ELT=np.array([1850,1120,1345,675]) # dam top level FSL=np.array([1845,1115,1340,670]) # FSL hd=np.array([6.0, 19.0, 6.0, 19.0]) # design head ELC=FSL-hd # overflow crest level aa=ELT-ELC # dam top lebel - overflow crest level kk=1/4/aa/nsl**2 # coefficient of ogee curve (parabola) nn=np.array([2, 6, 2, 10]) # number of gates bb=np.array([5.5, 12.0, 4.5, 12.0]) # clear span of pier bp=np.array([2.5, 4.0, 2.5, 4.0]) # pier width ss=bp/2+0.282*hd # distance from crest top to upstream edge of pier hh=hd md=0.0756*(hd/bb)**0.5*(1/nn+1.465*(nn-1)/nn*(bp/ss)**1.7) xi=hd*kk*0.5**2 cd=1.971+0.498*xi+6.63*xi**2 cc=cd*(1-md*(hh/hd)**1.5) # discharge coefficient qq=nn*cc*bb*hh**(3/2) # discharge xxi=1/2/kk/nsl # end point of ogee curve yyi=1/4/kk/nsl**2 # end point of ogee curve kki=1/kk # inverse of palabola ogee curve coefficient ctw=bp*(nn-1)+bb*nn # cute width print('FSL ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format(FSL[0],FSL[1],FSL[2],FSL[3])) print('ELC ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format(ELC[0],ELC[1],ELC[2],ELC[3])) print('hd ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format( hd[0], hd[1], hd[2], hd[3])) print('nn ,{0:10.0f},{1:10.0f},{2:10.0f},{3:10.0f}'.format( nn[0], nn[1], nn[2], nn[3])) print('bb ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format( bb[0], bb[1], bb[2], bb[3])) print('bp ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format( bp[0], bp[1], bp[2], bp[3])) print('ss ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format( ss[0], ss[1], ss[2], ss[3])) print('cc ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format( cc[0], cc[1], cc[2], cc[3])) print('qq ,{0:10.0f},{1:10.0f},{2:10.0f},{3:10.0f}'.format( qq[0], qq[1], qq[2], qq[3])) print('kki ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format(kki[0],kki[1],kki[2],kki[3])) print('ctw ,{0:10.3f},{1:10.3f},{2:10.3f},{3:10.3f}'.format(ctw[0],ctw[1],ctw[2],ctw[3])) return hd,ELC,xxi,yyi,kki def main(): hd,ELC,xxi,yyi,kki=calc_q() #--------------- # Execute #--------------- if __name__ == '__main__': main()
Results are shown below.
FSL , 1845.000, 1115.000, 1340.000, 670.000 ELC , 1839.000, 1096.000, 1334.000, 651.000 hd , 6.000, 19.000, 6.000, 19.000 nn , 2, 6, 2, 10 bb , 5.500, 12.000, 4.500, 12.000 bp , 2.500, 4.000, 2.500, 4.000 ss , 2.942, 7.358, 2.942, 7.358 cc , 1.842, 1.920, 1.824, 1.926 qq , 298, 11449, 241, 19143 kki , 31.790, 69.360, 31.790, 69.360 ctw , 13.500, 92.000, 11.500, 156.000
Thank you.