APP下载

导线计算算法分析

2013-04-29李牛

科技创新与应用 2013年9期
关键词:煤矿算法

摘 要:长期以来,矿山测量技术发展缓慢,导线计算作为矿山测量工作中一项重要且基础的工作,基本上还在沿用计算器加导线本的作业模式,存在如下问题:(1)效率低下。(2)容易出错,出错后必须返工。(3)导线成果管理困难。(4)导线成果查询费时费力。现主要在介绍导线计算所涉及的关键算法,使大家对计算技术有个全面的认识。

关键词:导线计算;算法;煤矿

1 关于角度格式的转换

导线计算最基础的工作大概是进行角度格式的转换,只有进行必要的转换,才能进行正确的计算,因为所有的编程语言都不能直接识别用户输入的角度,比如123.4556(六十进制角度,表示123°45′56″),在編程环境中表示为一个普通的实数,而编程环境提供的函数DegToRad,往往是将角度的十进制格式转换为弧度,如何将六十进制角度转换为十进制格式(或弧度)呢?笔者从网上看到一种算法,貌似比较简洁:

{ 将度、分、秒形式转化成弧度 }

如图示,123.11转换成弧度后再转换回六十进制,结果却变成123.1138,说明代码是不严谨的,原因是计算机中用二进制表示实数,无法精确表示,如123.11可能在计算机中表示为123.1099999999999。在进行角度的四则运算(如方位角推导)时要特别注意这个问题。

2 方位角推导算法

导线计算中较复杂的一项大概是方位角的推导,如果是一条连续观测的导线,算法实际比较简单,但在实际测量工作中,测角的随意性很强,如图所示的一条导线,假定AB为起算边,如果测量路线为:A-B-C-D-E,然后将仪器搬到C点,测量路线(顺序):B-C-F-G,在进行导线内业计算的时候,按照测量顺序输入,此时后视测点可以不输,进行方位角推导时,每条边的方位角总是根据测站点的名称在计算表格中向后查找与之匹配的导线边方位角和本站水平角进行计算,如CD边的方位角是根据BC边方位角和水平角∠BCD来计算,同样CF边的方位角是根据BC边方位角和∠BCF来计算,这种情况姑且叫连续观测导线;

然而有时为了测角方便,每一测站的后视点并不一定是前一个测点(导线前进方向),也就是不连续测量,如仪器架在C点准备测量F点,后视点却瞄准D点或E点,甚至A点,都有可能(姑且叫非连续观测导线),此时如果按照顺序计算,仅仅根据测站点查找起算边方位角可能会查找不到正确的起算边。

图4非连续观测导线方位角推导失败,在表格中查找不到EC边方位角

当然,将表格中的第5站后视换成其他测点,也会出现同样的情况。

用计算器进行计算时,往往会事先反算出EC边方位角再进行推导,所以在程序逻辑中一定要提供坐标反算算法,这样一来,就可以在计算表格中查询到E点和C点的坐标(当然必须事先输入起算坐标),反算后再继续推导就可以了。

注:文中的代码使用Delphi及VBA for Excel编写,在WinXP环境下调试。

参考文献

[1]测量学[M].北京:煤炭工业出版社.

[2]Visual Basic 6编程技术大全[M].北京:机械工业出版社.

[3]Delphi 6 开发人员指南.出版社.

作者简介:李牛(1973,12-),男,安徽省六安市(籍贯),现职称:工程师,学历:大专,研究方向:矿山测量。

猜你喜欢

煤矿算法
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
算法初步两点追踪
基于增强随机搜索的OECI-ELM算法
一种改进的整周模糊度去相关算法
大型煤矿自动化控制系统的设计与应用
上半年确定关闭煤矿名单513处
去年95.6%煤矿实现“零死亡”
煤矿区环境污染及治理