辛普森程序(万能程序)摘自《公路测量与试验检测程序及计算案例》程序清单1、正算程序(Simpson-ZS)Lbl0↙(数字)“XA”?A:“YA”?B↙“FWJ”?C↙“1÷RA”?D:“DKA”?F↙Lbl1↙“1÷RB”?E:“DKB”?G↙Lbl2↙“DKI”?K↙“BJ(m)”?O↙(字母)IfK>G:ThenX→A:Y→B:E→D:G→F:J→C:Goto1:IfEnd↙(E-D)÷Abs(G-F)→P↙Abs(K-F)→Q↙P*Q→I↙D+I→T↙C+(I+2D)Q*90÷Л→J↙IfJ<0:ThenJ+360→J:ElseIfJ>360:ThenJ-360→J:ElseJ→J:IfEnd:IfEnd↙(数字)“FWJ=”:JDMS◢C+(I÷4+2D)Q*45÷2÷Л→M↙C+(3I÷4+2D)Q*135÷2÷Л→N↙C+(I÷2+2D)Q*45÷Л→H↙A+Q÷12*(Cos(C)+4(Cos(M)+Cos(N))+2Cos(H)+Cos(J))→X↙B+Q÷12*(Sin(C)+4(Sin(M)+Sin(N))+2Sin(H)+Sin(J))→Y↙X+O*Cos(J+90)→W↙(字母)“XR=”:W◢Y+O*Sin(J+90)→Z↙(字母)“YR=”:Z◢Goto2↙Goto0↙2、反算主程序(Simpson-FS01)10→Dimz↙“XA”?A:“YA”?B↙“FWJ”?C↙“1÷RA”?D:“DKA”?F↙Lbl1↙“1÷RB”?E:“DKB”?G↙Lbl2↙“X(P)”?U:“Y(P)”?V↙Abs((V-B)Cos(C-90)-(U-A)*Sin(C-90))→L↙Lbl3↙F+L→K↙IfK>G:ThenG→K:Prog“Simpson-FS02”:X→A:Y→B:E→D:G→F:J→C:Goto1:IfEnd↙Prog“Simpson-FS02”↙(V-Y)Cos(J-90)-(U-X)Sin(J-90)→R↙IfAbs(R)≤0.0000001:Then“DK(m),D(m),H(m)”:K◢(Y-V)÷Sin(J-90)+3.355→Z[1]◢Prog“Simpson-CQW”↙“+C,-Q”:T◢Goto2:ElseL+R→L:Goto3:IfEnd↙3、反算子程序(Simpson-FS02)(E-D)÷Abs(G-F)→P↙Abs(K-F)→Q↙P*Q→I↙D+I→T↙C+(I+2D)Q*90÷Л→J↙C+(I÷4+2D)Q*45÷2÷Л→M↙C+(3I÷4+2D)Q*135÷2÷Л→N↙C+(I÷2+2D)Q*45÷Л→H↙A+Q÷12*(Cos(C)+4(Cos(M)+Cos(N))+2Cos(H)+Cos(J))→X↙B+Q÷12*(Sin(C)+4(Sin(M)+Sin(N))+2Sin(H)+Sin(J))→Y↙Return↙4、超欠挖(Simpson-CQW)10→Dimz↙K≥6700ANDK≤7239.2=729.05+(K-6700)*0.002→Z[2]◢K≤7500ANDK>7239.2=739.834+(K-7239.2)*0.002-(K-7239.2)2÷(2*16000)→Z[2]◢K>7500ANDK≤7760.8=741.764+(7760.8-K)*0.0126-(7760.8-K)2÷(2*16000)→Z[2]◢K>7760.8ANDK≤8730=741.764-(K-7760.8)*0.0126→Z[2]◢“CD(H)”?→Z[3]↙Z[3]-(Z[2]+1.694)→Z[4]↙Z[4]>0=√(Z[4]2+Z[1]2)-6.37→TZ[4]<0=√(Z[4]2+Abs(Z[1]+2.50)2)-8.87→TReturn↙6、程序说明该程序为线元法,适用于任意线形,共分为两个部分,正算程序(Simpson-ZS)和反算程序(Simpson-FS)。反算程序分为反算主程序(Simpson-FS01)、反算子程序(Simpson-FS02)、超欠挖(Simpson-CQW)三个部分。经验证,计算无误,计算时间3~4秒。a、正算程序(Simpson-ZS)“XA”?A:输入线元起点X坐标。“YA”?B:输入线元起点Y坐标。“FWJ”?C:输入线元起点切线方位角。“1÷RA”?D:输入线元起点曲率。“DKA”?F:输入线元起点里程。“1÷RB”?E:输入线元终点曲率。“DKB”?G:输入线元终点里程。DKI”?H:输入计算点里程。“BJ(m)”?O:输入计算偏距,左负右正。“FWJ=”:输出计算点切线方位角。“XR=”:输出计算点X坐标。YR=”:输出计算点Y坐标。b、反算程序(Simpson-FS)“XA”?A:输入线元起点X坐标。“YA”?B:输入线元起点Y坐标。“FWJ”?C:输入线元起点切线方位角。“1÷RA”?D:输入线元起点曲率。曲率?“DKA”?F:输入线元起点里程。“1÷RB”?E:输入线元终点曲率。“DKB”?G:输入线元终点里程。DK(m),D(m),H(m):输出计算里程,偏距,设计高程。“+C,-Q”:输出超欠挖值,正超负欠。◢↙ЛΛ≤≥><→≥≤°′″÷“”→^ΛЛ↙◢=2011年9月22日于河南三门峡