欢迎来到天天文库
浏览记录
ID:13654140
大小:113.50 KB
页数:8页
时间:2018-07-23
《casio互通式立交桥坐标计算程序(定稿)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、定稿CASIOfx-4800P计算器互通式立交桥坐标计算程序周广军(国道昆明东连接线工程项目监理部E-mail:keekzgj@yahoo.com.cn)本人在国道昆明东连接线工程项目从事支线工程的监理工作中,支线二标有一座虹桥村立交桥,此桥为一座互通式立交桥,分为支线桥、东三环桥、匝道桥3大部分,其中匝道桥共7座,匝道路基共2条,坐标计算复杂、工作量大。由于施工图设计中给出的曲线要素表与一般公路工程中给出的曲线要素表内容不一样,以前已有的CASIOfx-4800P计算器坐标计算程序不适用于本互通式立交桥的计算,因此本人针对互通式立交桥
2、重新编制了CASIOfx-4800P计算器的坐标计算程序,通过在工作中实际使用,效果很好。一、程序编制思路1、本文用例的施工图设计中给出的曲线要素为每条路线内每个线元的起点桩号、终点桩号、起点桩号的X、Y坐标、起点方位角、起点半径、回旋线参数、本线元长度、偏转方向及线型说明备注,根据施工设计图给出的曲线要素表内容,本程序也针对每个线元分别进行计算。2、为了最大程度方便快捷的计算坐标,决定把数据嵌入到程序中,每一条路线为一个原始数据文件(扩展名为.D),在每一个原始数据文件中对读取相应线元数据的操作进行控制。自动计算时本程序只要输入计算哪
3、条路线的参数H和所要计算的桩号D就可以直接计算出来D点的坐标,方便、快捷、减少输入错误。在计算不同工程的坐标时,只需要对原始数据文件进行修改、对主程序做局部修改即可通用,很方便。3、为了实现自动计算一条路线上任意一点D的坐标而不用考虑点D在那个线元上,计算时均是从本条整个路线的起点开始计算。4、对于圆曲线和缓和曲线上的点是先计算相对坐标再计算绝对坐标。5、加入边桩的坐标计算功能。6、即可以从数据文件中读取数据进行自动计算,又可以手工输入线元要素进行手工计算,手工计算仅针对单个线元进行计算。7、充分采用子程序的方式,各子程序功能清楚,重复
4、利用率高。8、对所输入的桩号D值是否在本条路线范围内进行8有效性检查,以确保数据计算正确。9、每次只能计算一个中桩的坐标,但可以计算此中桩的任意数量边桩的坐标。二、程序编制特别说明1、对于缓和曲线的坐标计算公式,一般教材中给出的公式是对级数展开式的前3~4项进行相加,在互通式立交桥的匝道设计中经常存在缓和曲线长度(Ls)与缓和曲线半径(R)的比值较大的情况,如果仍然用一般教材中给出的公式来计算坐标会产生很大的误差,导致计算结果完全错误,因此本程序中HH1.S子程序计算缓和曲线的坐标是用级数展开式的通式来进行迭代计算。依据Ls/R的比值动
5、态决定需要迭代的次数,根据试算一般当迭代次数=Int(Ls/R)+4时(Int为取整)就能保证小数点后前5位小数的数值不变,完全满足使用要求。2、同样在HH1.S子程序中,级数展开式有些项的计算结果数值很大,超出了计算器的数值范围会产生溢出错误,因此在程序中把一个大数值项拆开成几个小数值项,并且乘除相间,有效的避免了计算器溢出错误。3、对于这样一个比较大的计算器程序,26个字母根本不够用,因此在程序编制的过程中先确定一些全局变量,再仔细研究程序内容,在不影响程序正确性的前提下,当一些局部变量的功能完成后,后面的变量再重复利用此字母。这样
6、不用扩展计算器的变量范围,节约了计算器的存储空间。4、由于原始数据文件占用了计算器的大部分存储空间(本工程实际工作中有13个数据文件),因此对数据文件的内容做了优化,以使数据文件尽量小;另外对所有的主程序和子程序也进行了最大程度的优化以节省计算器存储空间。三、源程序1、主程序(ZBJS-A)N=180÷π:HD:I=1:H<0=>AW:Prog“FW.S”:W≥0=>BCJRLFZ:Prog“ZB.S”⊿⊿F=0:H=1=>Prog“SJ01.D”⊿H=2=>Prog“SJ02.D”⊿H=3=>Prog“SJ03.D”⊿“--END--
7、”说明:①N为常数;H为要计算哪条路线的参数,需要输入;D为所要计算坐标的点的桩号,需要输入;W为本条路线的终点桩号;通过调用子程序FW.S来判断计算桩号D是否在本条路线内,完成判断后W做为终点桩号的功能结束,开始做为判断程序是否结束的标志(原始数据文件中同样);如果计算桩号D不在本条路线内,则W=-9,根据W是<0还是≥0来进行程序内部的子程序调用控制;另外在子程序“ZB.S2”中W=-9时是起到控制计算是否结束的作用。8②当输入的H<0时,需要手工输入所有的曲线要素,曲线要素AWBCJRLFZ的含义见原始数据文件格式说明;在本例中当
8、H值等于1、2、3时分别调用对应的原始数据文件,由于只有3个数据文件,因此本例中当H值不等于1、2、3并且H值≥0时程序直接结束。③假如有5个路线,则在本程序中“--END--”之前需要加入H=4=>Pro
此文档下载收益归作者所有