CASIO5800计算器测量计算程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CASIO 5800计算器测量计算程序
来自: ritsing(祥瑞之士) 2009-08-17 14:51:21
简要介绍:
1. 新版程序把线元法和交点法已经集成在一个模块中了,用户只需修改JD程序和ZA程序中的数据部分即可,其余不需作任何的改动。
2. 因为每条路高程计算不尽相同,且比较复杂,现在可利用PC机EXCEL计算好打印成表格带到工地上使用,所以本版程序未对线路高程序进行专门的编程计算,而是利用统计计算模式中来输入桩号(第一列X)及左、右高程(第二、三列Y,Freq),这种输入数据的方式最为直观,易发现错误,也易修改,输入完毕后运行S程序对数据按桩号进行排序,在程序中通过调用GG 程序来进行内插计算,SG=-1得左标高,SG=1得右标高(若SG输入0,则可进行一般的线性内插计算)。
3. 在JD程序和XY程序中,先将一个计算单元的数据置入矩阵F中(1行8列或1行9列),这样程序可读性极好。
4.相比原CASIO4850程序操作习惯,作了一点小小的改动,测站坐标存在Z[10],N中,X 坐标原存在M中容易被误操作修改,而设计标高存在M中,这样易于修改,因为CASIO5800没有IN,OUT功能,很不方便。
4. 程序利用Z[2]变量值来判断是采用交点法还是线元法模型计算,Z[2]=0为线元法,否则为交点法。
一、PQX程序:计算中边桩坐标及近似的桩号反算,在运行模式直接调用。
①Z[10]→S:”XO”?S:S→Z[10]:”YO”?N:Prog “AU”
②L bl 2:?L:Prog “Z”:Prog “E”:1n→O:90→S
③Lbl 4:”JJ”?S:”YC”?O:SO=0 =>Goto 2‘原来lbl 后没有标号4的。
④O=-1 =>Goto 6
⑤“X,Y”:R+OCos(Z+S)→X▲U+OSin(Z+S)→Y▲Prog “D”:Goto 4
⑥Lbl 6:Z[7]→X:Z[8]→Y:”XF”?X:”YF”?Y:XY=0 =>Goto 4
⑦
X→Z[7]:Y→Z[8]:Pol(X-R,Y-U+1p):Z+S-J→J:”YC,DL,L”:ICos(J)→O▲ISin(J)→I▲L+I▲Goto 6二、P程序:在程序中提供一个自由运算的模式。
①Lbl 1:”TMP”?I:If I≠0:Then “RST”:I▲Goto 1:IfEnd
二、LYC程序:进行桩号反算及边坡放样,在运行模式直接调用。
①Prog “AU”
②Lbl 1:Z[7]→X: Z[8]→Y: Z[6]→S: ”XF”?X :X→Z[7]:”YF”?Y:Y→Z[8]: ”ZF”?S: S→Z[6]
③Lbl 2:Prog “Z”:Y=U =>Y+1p→Y
④Pol(X-R,Y-U):J-Z→J:Isin(J)→O:Icos(J)→I
⑤If Abs(I)≤0.1:Then Prog “E”:”L,YC”:L+I→L▲O▲Goto 3:IfEnd
⑥If Z[9]≠0:Then Pol(Z[9]-SO,I):πJZ[9]÷180→I:IfEnd
⑦”DL”:I▲L+I→L:Goto 2
⑧Lbl 3: Z[6]→S:If S=0:Then Goto 1:IfEnd
⑧M→Z
⑨Lbl 4:”SG”?Z:Z→M:If Abs(Z)=1: Then Prog “GG”:Y→Z:If X=1:Then
X→Z:IfEnd:Z→M:IfEnd
⑾If Z=0:Then Z[11]→C:Z[12]→D: Z[13]→E:
Z[14]→F:”LA”?C:C→Z[11]: ”HA”?D:D→Z[12]: ”LB”?E:E→Z[13]: ”HB”?F:F→Z[14]:D+(E-C)-1(F -D)(L-C)→Z:Z→M:IfEnd
⑿Lbl 5:”SG”:Z:”TW”:Z-S→C▲:Z[3]→P:
Z[4]→Q: :Z[5]→T:”YC0”?P:P→Z[3]: :”HC0”?Q:Q→Z[4] :”M”?T:T→Z[5]:O÷Abs(O)→I:”BL”:I(P+ TC(C+Q)÷Abs(C))→U▲”DB”:IU-IO→J▲
Ans→I:Prog “P”:Goto 1
四、I程序:通过手工方式输要素
①Z[2]=0 =>Goto 2
②
Z[1]→R:Z[2]→U:”JL”?K:”JX”?G:”JY”?H:”JA”?V:”JJ”?W:”R”?A:”LS”?B:”L1”?R:”L2”?U:R→Z[1]:
U→Z[2]:ReTurn
③Lbl 2:”L0”?K:”X0”?G:”Y0”?H:”A0”?V”:”L1”?F:”L-0 Z=-1 Y=1”?W:W=0 =>ReTurn
④”R0”?A:”R1”?B
五、D程序:根据测站点的坐标及放样点的坐标计算水平距离及方位角
①Y=N =>Y+1n→Y
②Pol(X-Z[10],Y-N):J<0 =>J+360→J
③”A,D”:J→DMS▲I▲
六、E程序:桩号出界判断
①Z[2]=0 =>Goto 2
②If L>Z[2]: Then “>L2”:L▲IfEnd
③If L ④Goto 3 ⑤Lbl 2:If L ⑥If L>F:Then “>L1”:L-F▲IfEnd ⑦Lbl 3 七、GG程序:用统计数据中桩号,左右高程数据进行内插计算。 ①FreqOff : n→C:FreqOn:If L ②If L>maxX: Then “L>maxX”:C-1→I:Goto 8:IfEnd ③For 1→I To C-1 ④If L≤List X[I+1]: Then Break:IfEnd:Next ⑤Lbl 8 : (L-List X)÷(List X[I+1]- List X)→J : List Y+J(List Y[I+1]-List Y)→X : List Freq +J(List Freq [I+1]-List Freq )→Y 八、S程序:对统计数据列表中数据按桩号进行排序。 ①FreqOff : n→C:FreqOn“WAIT…n=”:Locate 10,1,C ②If C<2 Then Return:IfEnd ③For 1→D To C: D→I: ④For D+1→E To C: ⑤If List X[E] ⑥If I≠D: Then List X[D]→F:List X→List X[D]:F→List X: List Y[D]→F:List Y→List Y[D]:F→List Y: List Freq[D]→F:List Freq→List Freq [D]:F→List Freq :IfEnd:Next ⑦Locate 1,2,”minX:”Locate 6,2,minX ⑧Locate 1,3,”minX:”Locate 6,3,maxX