10 CLEAR : LPRINT " 斜坡消力池水力计算 XL-1(93.8 GD)" 12 LPRINT "# # # # # # # # # # # # #": LPRINT 14 OPEN"I",#1,"XL-1.DAT" 15 INPUT#1,P,A,B,I,ZC,ZB,ZU:CLOSE#1 18 IF I=0 THEN PRINT "I=0": STOP 20 LC=(ZC-ZB)/I: LPRINT TAB(1);"流速系数P=";P;TAB(25);"流速分布系数A=";A: LPRINT
12 LPRINT "# # # # # # # # # # # # #": LPRINT
14 OPEN"I",#1,"XL-1.DAT"
15 INPUT#1,P,A,B,I,ZC,ZB,ZU:CLOSE#1
18 IF I=0 THEN PRINT "I=0": STOP
20 LC=(ZC-ZB)/I: LPRINT TAB(1);"流速系数P=";P;TAB(25);"流速分布系数A=";A: LPRINT
21 LPRINT TAB(1);"斜坡坡度I=";I;TAB(25);"收缩断面宽B=";B;"(m)": LPRINT
22 LPRINT TAB(1);"斜坡顶平台高程ZC=";ZC;"(m)";TAB(25);"池底高程ZB=";ZB;"(m)": LPRINT
23 LPRINT TAB(1);"斜坡长度LC=";LC;"(m)";TAB(25);"上游水位ZU=";ZU;"(m)": LPRINT
25 INPUT "计算流量Q,下游水位ZT=";Q0,ZT:
30 LPRINT "计算流量Q=";Q0;"(m/s)"; " 下游水位ZT=";ZT;"(m)"
32 CO=1/ SQR (1+I^2):SI=I/ SQR (1+I^2)
35 Q=Q0/B:Z0=ZU-ZB:T0=ZT-ZB: GOSUB 300
40 H2=( SQR (1+8*A*F^2)-1)*H/2
45 IF T0<1.1*H2 THEN 120
50 IF T0>1.1*H2 THEN 60
55 PRINT "T0=1.1*H2": LPRINT "C=0": GOTO 25
60 T1=T0/1.1:LB=(T1-H2)/I: GOSUB 350
65 IF ABS (T-T1)<.001 THEN 90
70 M1=LB:N1=T:LB=LB+(T1-T)/I
75 GOSUB 350
80 IF ABS (T-T1)<.001 THEN 90
85 M2=LB:N2=T:LB=(M2-M1)*(T1-T)/(N2-N1)+LB:M1=M2:N1=N2: GOTO 75
90 IF LB>LC THEN 105
95 IF LB=LC THEN LPRINT : LPRINT "斜坡水跃位置LB=";LB;"(m)=LC": LPRINT "消力池长度LD="; INT (10*.8*(L-LB)+.5)/10;"(m)": GOTO 110
100 LPRINT "斜坡水跃位置LB="; INT (100*LB+.5)/100;"(m)": LPRINT "消力池长度LD="; INT (10*.8*(L-LB)+.5)/10;"(m)": GOTO 110
105 LPRINT "斜坡水跃位置LB="; INT (100*LB+.5)/100;"(m)>LC": LPRINT "消力池长度LD="; INT (10*.8*(L-LB)+.5)/10;"(m)"
110 CLS : LPRINT : GOTO 25
120 INPUT "消力池尾水深度T0<1.1*第二共轭水深H2, 是否继续计算(Y/N)";A$
122 IF A$="Y" THEN 135
123 IF A$<>"N" THEN 120
125 LPRINT "消力池尾水深度T0="; INT (100*T0+.5)/100;"(m)"
126 LPRINT "第二共轭水深H2="; INT (100*H2+.5)/100;"(m)"
130 GOTO 125
135 T1=T0/1.1:ZB=ZB-(H2-T1):M1=ZB:T1=(ZT-ZB)/1.1:Z0=ZU-ZB
140 GOSUB 300
145 H2=( SQR (1+8*A*F^2)-1)*H/2
150 IF ABS (T1-H2)<.001 THEN 180
152 ZB=ZB-(H2-T1):T1=(ZT-ZB)/1.1:Z0=ZU-ZB:N1=ZB:M2=ZB
155 GOSUB 300
160 H2=( SQR (1+8*A*F^2)-1)*H/2
165 IF ABS (T1-H2)<.001 THEN 180
170 ZB=ZB-(H2-T1):N2=ZB:ZB=(N2-(N2-N1)*M2/(M2-M1))/(1-(N2-N1)/(M2-M1))
175 M1=M2:N1=N2:M2=ZB:T1=(ZT-ZB)/1.1: GOTO 155
180 LPRINT "池底高程ZB="; INT (100*ZB+.5)/100;"(m)"
182 LPRINT "收缩断面水深H="; INT (100*H+.5)/100;"(m)"
183 LPRINT "第二共轭水深H2="; INT (100*H2+.5)/100;"(m)"
184 V=Q/H:F=V/ SQR (9.8*H):LD=.8*9.4*(F-1)*H
185 LPRINT "消力池长度LD="; INT (10*LD+.5)/10;"(m)": LPRINT : GOTO 25
200 L=9.4*(F-1)*H:U=1.0:A=1.1: GOSUB 250
205 IF ABS (T1-T)<.001 THEN 240
210 X1=T1:Y1=T:T1=T
215 GOSUB 250
220 IF ABS (T1-T)<.001 THEN 240
225 X2=T1:Y2=T
230 T1=(Y1-(Y2-Y1)*X1/(X2-X1))/(1-(Y2-Y1)/(X2-X1)): GOTO 215
240 RETURN
250 TX=T1-H*CO-I*LB
255 D1=(H*CO)^2*CO+2*A*(H*F)^2*CO+2*LB*(H*CO+I*LB/2)*CO*SI
260 IF L>=LB THEN D1=D1+2*TX*(LB-L*(1-(1-LB/L)^(U+1))/(U+1))*CO*SI: GOTO 265
262 D1=D1+2*TX*L*U/(U+1)*CO*SI+2*(T1-I*(LB-L)/2)*(LB-L)*CO*SI
265 D2=2*A*H^3*F^2
270 T= SQR (D1-D2/T1)
275 RETURN
300 A1=Q/P/ SQR (9.8):H=A1/ SQR (Z0)
305 H1=H:H=A1/ SQR (Z0-H1)
310 X1=H1:Y1=H:H1=H:X2=H1
315 H=A1/ SQR (Z0-H1)
320 IF ABS (H-H1)<.0001 THEN 335
325 Y2=H:H1=(Y2-(Y2-Y1)*X2/(X2-X1))/(1-(Y2-Y1)/(X2-X1))
330 X1=X2:Y1=Y2:X2=H1: GOTO 315
335 V=Q/H:F=V/ SQR (9.8*H)
340 RETURN
350 Z0=ZU-ZB-LB*I: GOSUB 300: GOSUB 200: RETURN