集团总工程师
正高级工程师
如何用EXCEL进行附和导线近似平差及计算中若干问题的解决方法
地测队:杨冲
2011年11月
如何用EXCEL进行附和导线近似平差及
计算中若干问题的解决方法
在煤矿测量工作中,我们经常需要进行单一附和导线近似平差。传统的手工计算,不但效率低,而且算错之后不易改正(因为后一步的起算数据由前一步计算得到,一旦算错,后续步骤都需重新计算),运用EXCEL强大的函数计算功能,就可以解决这个难题。
用EXCEL进行导线近似平差的流程大致为:a.输入各站水平角、竖直角、起终端坐标方位角、起终端坐标及高程、各站斜距、仪器高、棱镜高。b.计算坐标方位角及其闭合差,并进行闭合差分配。c.计算各导线点平距、坐标和坐标闭合差。如闭合差不超限,分配坐标闭合差。d.计算导线点高程和高差闭合差,如不超限,分配高差闭合差。(具体的计算方法及格式见附表算例)
但是,在计算过程中,我们会遇到诸如角度计算、数值取位等问题。
首先是角度计算问题。我们知道,在EXCEL中,不能对角度值直接进行三角函数运算,需要将角度值换算成弧度。这里有两个问题,第一是角度输入问题。在EXCEL表格中,不能直接输入度、分、秒。这里,笔者提供一种输入角度的方法:首先自定义单元格格式,将其定义为[h]"°"mm"′"ss"〃"的形式。角度值输入时,度、分、秒间以冒号隔开,例如“23:30:01”,输入完成后将自动变成“23°30′01〃”,这样输入的角度可直接进行加减运算;第二是角度的三角函数运算问题,需运用角度转弧度函数“RADIANS()”。这里需要注意的是,先前输入的角度值需要乘以24,例如:COS(RADIANS(A1*24))(假设输入的角度值位置在A1上)。经过以上两个步骤,便可将斜距、水平角轻松转换为平距、坐标方位角。
再谈数值取位问题,我们知道,在角度计算中,遵循“四舍六入,五前奇进偶不进”原则。在坐标增量(Δx=S×cosα、Δy=S×sinα)计算时,我们也会遇到取位问题。如果一律按四舍五入方法计算,势必造成坐标增量偏大。故坐标计算时,也应遵循角度计算的取值方法,以避免因取值方法不当造成的误差累积。我们可以采用下面的方法实现这一过程。
需要用到EXCEL中的几个函数:取绝对值函数ABS、嵌套条件函数IF、取小数位数函数ROUND、取余数函数MOD。以中间计算过程保留四位小数为例。需先将要计算的数值取绝对值,最后带上正负号。例如:ABS(A1)/A1*K。计算中需要检测小数点后第四位和第五位的数值(A1为要保留四位有效数字的数据)。过程为:a、如果MOD(A1*10000,1) <0.5,则直接保留四位有效数字输出结果,即:ROUND(A1,4);b、否则,如果MOD(A1*10000,1)<0.6,需要检测小数点后第四位(保留四位小数后)的数值,如果是偶数,则输出保留四位小数后的数值ROUND(A1,4),否则,输出ROUND(A1,4)-0.0001。c、如果MOD(A1*10000,1)>=0.6则输出ROUND(A1,4)。具体实现算法为:
“=A1/ABS(A1)*IF(MOD(ABS(A1)*10000,1)<0.5,ROUND(ABS(A1),4),(IF(MOD(ABS(A1)*10000,1)<0.6,(IF(MOD(ROUND(ABS(A1),4)*10000,2)=0,ROUND(ABS(A1),4),ROUND(ABS(A1),4)-0.0001)),ROUND(ABS(A1),4))))”
解决了上述两个难题,再运用简单的三角函数及加减运算,便可轻松在EXCEL上进行导线近似平差。当然,上述方法仍有一些瑕疵,如:负值角度在EXCEL中不能正确显示,虽然并不影响计算结果,但还是希望大家在以后的研究中能够进一步改进;其次,由于不能在一个单元格中进行复杂的角度运算,表格中存在部分冗余数据(如90°00′00〃、180°00′00〃),使得表格整体感觉庞大;再次,由于存在取位(近似值)问题,计算结果与理论值仍存在毫米级偏差,当然以目前矿山控制测量要求的精度来说,完全可以忽略不计。
地测队:杨冲
2011年11月