卡西欧计算器FX-5800正反算、隧道超欠挖计算程序
正算主程序 (ZS) :
Lb1 0 : FIX 4 : ? S : ?Z : Prog “ PM-SJ ” : Abs(S-O) → W : Prog \: \: X ◢ \ Y ◢ F-90 → F ( 需要时可以让他显示,不要时不必输入 ) : Pro g“SQX-SJ”: Prog “ SQX ” : “ H= ” : H ◢ Goto 0 反算主程序 (FS)
Lb1 0 : FIX4: ? S : ? X :? Y : Prog “PM-SJ” : X→ I : Y→ J : Prog \: \: O+W→S ◢ \ Z ◢
Prog “SQX-SJ” : Prog “ SQX ” : “ H= ” : H ◢ Goto 0 隧道 3 心圆放样主程序( SD-3XY )
Lb1 0 : Prog “ FS ” : 1.5 → A : 1.65 → B : 0.89→ G : 2.27 → C : 3.3 → D : 2.41 → E : 0.51 → J : “H1” : F : ifF≤ H+ A : then E-AbsZ → W : IfEn d : ifF > H+A And F ≤ H+A+ B : then√ ( D²- ( F-H-A ) ² ) -G-AbsZ → W : IfEn d : ifF > H+A+ B : then√ ( C²- ( F-H-A-J ) ² ) -AbsZ → W : IfEn d : “W=” : W◢ (水平方向的超欠挖:正为欠 , 负为超) Goto0
正算子程序 (SUB1)
1÷P → C : (P-R)÷(2HPR) → D : 180÷π → E : 0.1739274226 → A : 0.3260725774 → B : 0.0694318442 → K : 0.3300094782 → L : 1-L → F : 1-K → M : U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) → X :
V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) → Y : G+QEW(C+WD)+90 → F : X+ZcosF → X : Y+ZsinF → Y 反算子程序 (SUB2)
G-90 → T : Abs((Y-V)cosT-(X-U)sin ( T ) ) → W : 0 → Z : Lbl 0 : Prog \: T+QEW(C+WD) → L : (J-Y)cosL-(I-X)sinL → Z : ifAbsZ<1E- 6 : thenGoto1 : ElssW+Z → W : Goto 0 : IfEnd
Lbl 1 : 0 → Z : Prog \: (J-Y)÷sinF → Z 子程序(平面线形数据库) PM-SJ
ifS ≥ 500 (线元起点里程) AndS < 769.256 (线元止点里程): Then19942.837 → U (线元起点 X 坐标) : 28343.561 → V (线元起点 Y 坐标) : 500 → O (线元起点里程) : 125 ° 16 ° 31 ° → G (线元起点方位角) : 269.265 → H (线元长度) : 10^ ( 45 ) → P (线元起点曲率半径): 10^ ( 45 ) → R (线元终点曲率半径): 0 → Q (线元左右偏标志:左负右正): IfEnd
ifS ≥ 769.256 (线元起点里程) AndS < 806.748 (线元止点里程): Then19787.34 → U (线元起点 X 坐标) : 28563.378 → V (线元起点 Y 坐标) : 769.256 → O (线元起点里程) : 125 ° 16 ° 31 ° → G (线元起点方位角) : 37.492 → H (线元长度) : 10^ ( 45 ) → P (线元起点曲率半径): 221.75 → R (线元终点曲率半径): -1 → Q (线元左右偏标志:左负右正): IfEnd
ifS ≥ 806.748 (线元起点里程) AndS < 919.527 (线元止点里程): Then19766.566 → U (线元起点 X 坐标) : 28594.574 → V (线元起点 Y 坐标) : 806.748 → O (线元起点里程) : 120 ° 25 ° 54.07 ° → G (线元起点方位角) : 112.779 → H (线元长度) : 221.75 → P (线元起点曲率半径): 221.75 → R (线元终点曲率半径): -1 → Q (线元左右偏标志:左负右正): IfEnd
ifS ≥ 919.527 (线元起点里程) AndS < 999.812 (线元止点里程): Then19736.072 → U (线元起点 X 坐标) : 28701.893 → V (线元起点 Y 坐标) : 919.527 → O (线元起点里程) : 91 ° 17 ° 30.63 ° → G (线元起点方位角) : 80.285 → H (线元长度) : 221.75 → P (线元起点曲率半径): 9579.228 → R (线元终点曲率半径): -1 → Q (线元左右偏标志:左负右正): IfEnd
ifS ≥ 999.812 (线元起点里程): Then19744.038 → U (线元起点 X 坐标) : 28781.659 → V (线元起点 Y 坐标) : 999.812 → O (线元起点里程) : 80 ° 40 ° 50 ° → G (线元起点方位角) : 100 → H (线元长度) : 10^ ( 45 ) → P (线元起点曲率半径): 10^ ( 45 ) → R (线元终点曲率半径): 0 → Q (线元左右偏标志:左负右正): IfEnd 子程序(竖曲线数据库) SQX-SJ
ifS ≤ 999.812 (竖曲线终点里程): then0.0357 (前坡度:上坡正下坡负) → E : 0.0227 (后坡度: 上坡正下坡负 ) → F : 600 → R (竖曲线半径): 780 → G (变坡点里程): 110 → C (变坡点高程): IfEnd 子程序(竖曲线计算公式) SQX
E-F → J : ifJ > 0 : then-R → R : ElssR→ R : Abs ( R*J÷2 ) → T : IfEnd ifS ≤ G- T : thenG-S → L : C-LE → H : IfEnd
ifS > G- T And S ≤G : thenG-S → L :( S+T-G ) ²÷2÷R →N : C-LE+N → H : IfEnd
ifS > G And S ≤ G+ T : then S-G → L :( G +T- S ) ²÷2÷R →N : C+LF+N → H : IfEnd
ifS > G+ T : thenS-G → L : C+LF → H : IfEnd 使用说明
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1 ;当线元往右偏时, Q=1 ;当线元为直线时, Q=0 。
(2) 当所求点位于中线时, Z=0 ;当位于中线左铡时, Z 取负值;当位于中线中线右侧时, Z 取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以 10 的 45 次代替。 (4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。 (6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
超方便实用的5800全线坐标正反算程序 Fx-5800 计算机程序(在用) QXJS 主程序
Lbl A:“1.ZH=>XY”:“2.XY=>ZH”:?Q:“ZH”?S:Prog“QXJS-SUB0”↙ Q=1 => Goto1:Q=2 => Goto2:↙
Lbl 1:“ZH-BJ”?Z:Prog“QXJS-SUB1”:“X=”:N◢:“Y=”:E◢:“F=”:F◢: Goto4↙
Lbl 2: “X=”:?B: “Y=”:?C:B→N: C→E:Prog“QXJS-SUB2”: “ZH=”:S◢: “ZH-BJ”:Z◢: GotoA↙ QXJS-SUB0 数据库子程序 Goto1↙ Lbl 1
IF S<*** (线元终点里程) :Then***→A (线元起点方位角) :***→O (线元起点里程) :***→U (线元起点 X ) :***→V (线元起点 Y ) :***→P (线元起点曲率半径) :***→R (线元终点曲率半径) : ***→L (线元起点至终点长度) : Return:IfEnd↙
IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R: ***→L: Return:IfEnd↙
……………………….. 为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个 Lbl ,每增加一个工程增加一个文件。
QXJS-SUB1 正算子程序 0.5 ( 1÷R-1÷P ) ÷L→D:S-O→X↙ U+∫(cos(A+(X÷P+DX2)×180÷π,0,X)→N↙ V+∫(sin(A+(X÷P+DX2)×180÷π,0,X)→E↙ A+(X÷P+DX2)×180÷π→F↙
N+Zcos(F+90) →N:E+Zsin(F+90) →E QXJS-SUB2 反算子程序
Lbl 1:0→Z : 1→Q : Prog“QXJS-SUB0”: Prog“QXJS-SUB1”↙ Pol(N-B+10^(-46), E-C+10^(-46)):Isin(F-90-J) →W:S+W→S↙ Abs(W)>0.0001 => Goto1↙
Lbl 2: 0→Z : Prog“QXJS-SUB1”:(C-E) ÷sin(F+90) →Z 三、使用说明 1 、规定
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当曲线半径在左时, P 、 R 取负值,当曲线半径在右时, P 、 R 取正值,当曲线半径为无穷大(即直线)时, P 、 R 以 10 的 45 次代替。
(2) 当所求点位于中线时, Z=0 ;当位于中线左铡时, Z 取负值;当位于中线中线右 侧时, Z 取正值。
(3) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆 弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的 45 次方代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的
值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等 于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。 2 、输入与显示说明 输入部分: 1. ZH=>XY 2. XY=>ZH”
Q ? 选择计算方式,输入 1 表示进行由里程、边距计算坐标 ;输入 2 表示由坐标反算里程和边距。
CASIO5800计算器公路竖曲线全线高程计算程序
“SQXJSCX”↙ Lb1 1↙ CLs:Fix 3↙
“K=”?k◢ (计算点里程输入)
If k<67549.755 AND K≥66894.3 :Then -0.00052→A : 0→B : 67394.3→S : 67.37→G : 600000→R : Goto 2 : IfEnd↙
If k<68708.391 AND K≥67549.755 :Then -0.0048→A : -0.00052→B :
68494.3→S :66.8→G : 100000→R : Goto 2 : IfEnd↙
If k<本段竖曲线终点里程 AND K≥前一竖曲线终点里程 :Then -0.0048→前坡(大里程向)A : -0.00052→后坡(小里程向)B : 68494.3→竖曲线交点里程S :66.8→交点高程G : 100000→曲率半径R : Goto 2 : IfEnd↙ ???
依次类推,计算原始数据完成输入,坡度换算成小数。 Lb1 2↙
S-K→L : A-B→W : Abs(R*W/2)→T : S-T→C : S+T→D ↙
If K≤C : Then G-L*B →H : Goto 5 : Else If K≤S : Then Goto3 : Else If K≤D : Then Goto4 : IfEnd : IfEnd : IfEnd↙ Lb1 3↙ If W>0 : Then G+(C-K)^ 2/2/R-L*B→H : Goto 5 : Else If W<0 : Then G-(C-K) ^2/2/R-L*B→H : Goto 5 : IfEnd : IfEnd↙ Lb1 4↙
If W>0 : Then G+(K-D) ^2/2/R-L*A→H : Goto 5 : Else If W<0 : Then G-(K-D)^ 2/2/R-L*A→H : Goto 5 : IfEnd : IfEnd↙
Lb1 5↙
H-0.304→H↙ (0.304为中心~路肩高差) “H=”:H◢ Goto 1↙
5800计算器公路全线坐标正、反算计算程序
正算主程序(ZS) Lb1 0
FIX4:?S:?Z:Prog “PM-SJ”: Abs(S-O) → W:Prog \: \:X◢ \:Y◢F-90→F(需要时可以让他显示,不要时不必输入):Prog“SQX-SJ”: Prog“SQX”:“H=”:H◢ Goto 0 反算主程序(FS)