简介
高斯投影正反算中需要计算子午线弧长和底点纬度,其计算公式对于不同的参考椭球稍有差别,但都比较复杂。相对而言,子午线弧长计算比较容易,是推导精度很高的实用公式; 而底点纬度计算公式的推导则困难得多。不少学者曾花费了大量精力,采用不同方法,推导了多种底点纬度的计算公式。到目前为止,这些公式大多需要编程计算,过程复杂,操作麻烦。因此,底点纬度计算成为高斯投影计算中的一大难点。现介绍应用单变量求解计算底点纬度的方法,其不需要底点纬度计算公式,更不需要编写计算程序,而是直接用子午线长度公式计算,精度高,速度快,操作简单,非常方便1。
应用单变量求解计算底点纬度单变量求解是Excel 中“工具”下拉菜单中的一个功能项。单变量求解的实质是解一个未知数的方程:对于一个确定的函数式y=f( x) ,已知y,求x 的值。
在某一单元格中输入公式f( x) ; 点击“工具”下拉菜单中的“单变量求解”,在弹出的对话框中,输入目标单元格、目标值和可变单元格,点击“确定”;弹出“确认”对话框,再点击“确定”,确认计算结果;在目标单元格中显示目标值,在可变单元格中显示解算结果。目标单元格就是存放函数公式的单元格,目标值就是函数值y,可变单元格就是存放自变量x 的单元格; 输入y 值,反求x 值。
在高斯投影正反算中,子午线弧长计算和底点纬度计算互为逆运算。因此,应用单变量求解这一功能,借助于子午线弧长计算公式,就能快速计算出底点纬度。1975 国际椭球子午线长度X 计算公式为X = 6 367 452. 132 73B-16 038. 528 2sin 2B+16. 832 6sin 4B-0. 022 0sin 6B ( 1)
式中,B 为纬度,以弧度为单位。其根据被积函数展开级数逐项积分求得,并舍去对计算结果无明显影响的高次项,只是系数多取了1 位,更精确。对于式( 1) ,如果已知X,反求B,就是反算底点纬度,即单变量求解。下面以实例说明应用单变量求解计算底点纬度的方法2。
计算实例已知高斯平面坐标x = 3 275 611. 188,试计算底点纬度Bf。
打开一张Excel 工作表,选择B1 为目标单元格,B2为可变单元格。在单元格B1 中输入:“=6 367 452. 132 73* B2-16 038. 528 2* SIN( 2* B2) +16. 832 6* SIN( 4* B2) -0. 022* SIN( 6* B2) ”,并确认。此时,单元格B1 显示0,因为B2 单元格无数据。点击“工具”下拉菜单中的“单变量求解”,在弹出的对话框中,目标单元格栏输入B1、目标值栏输入3 275611.188,可变单元格栏输入B2,点击“确定”,瞬间完成计算; 并弹出确认对话框,再点击“确定”,确认计算结果。
此时目标单元格B1 中显示目标值3 275 611. 188,可变单元格B2 中显示解算结果0. 516 591 619 52。B2 中显示的就是反算的底点纬度( 以弧度为单位) ,设定B2 显示11 位小数( 相当于百万分之一秒的精度) ,但实际上算到了15 位小数,其精度足以满足任何高精度的需要。
在B3 单元格中输入一个将弧度值换算成度分秒角度的计算公式,得到以度分秒为单位的底点纬度29°35'54. ″670 3。B3 单元格中显示格式为: 小数点代表度,小数点后两位为分位,小数点后三、四位为秒位,再后面是秒的小数位2。
总结应用单变量求解计算底点纬度,不需要底点纬度计算公式,更不需要编程调试,而是直接利用子午线弧长公式计算,精度高,速度快,操作简单,非常方便,值得推广3。