我们注意到,从地心到地球椭球面上的一点可以引出一个向量,该向量称为地垂线,可以用它唯一确定地球球面上的一点。因此地球椭圆面上任意一点还可以用地垂线向量表示。若地球椭球面上 P 点的经纬高坐标为( L , λ , h ),则 P 点的地垂线向量为
大圆是过球心的平面和球面相交所得到的曲线,根据空间几何的知识可知,大圆航线是球面上的最短航线。因此,飞行器在远距飞行时,常用大圆航线。有了地垂线向量后,大圆航线可以用大圆航线起点 P 1 ( L 1 , λ 1 , h )和终点 P 2 ( L 2 , λ 2 , h )的地垂线向量的叉乘表示,如图2-3所示。显然,这个叉乘也是大圆航线所在平面的法向量。
图2-3 地垂线向量和大圆航线
大圆航线起点
P
1
(
L
1
,
λ
1
,
h
)和终点
P
2
(
L
2
,
λ
2
,
h
)所在的大圆面与过起点
P
1
的子午面的夹角为大圆航向,以正北为0°,顺时针方向为正。显然,大圆航向是大圆航线所在大圆面的法线
和过起点
P
1
的子午面的法线
u
e
的夹角,其计算公式为
其中,
大圆航线侧偏距的计算如图2-4所示,设飞机从航路点
P
1
(
L
1
,
λ
1
,
h
)飞向
P
2
(
L
2
,
λ
2
,
h
),飞机的瞬时位置为
P
,大圆弧
PM
的长度即侧偏距。其中,
M
点是
P
点到大圆弧
P
1
P
2
的最短弧长所确定的点。显然,过
M
点的大圆弧
PM
的切线垂直于
u
P
1
和
u
P
2
所确定的平面。设沿该切线的单位向量为
,
P
i
-1
点和
P
i
点的地垂线单位向量分别为
u
P
1
与
u
P
2
,则
图2-4 大圆航线侧偏距的计算
一般用∠
uu
M
表示向量
u
和
u
M
的夹角,由图2-4(b)可知,
,那么
,故
。
综上可知,大圆航线侧偏距计算公式为
其中,
若在飞机大圆航线上的两个航路点的经纬高坐标分别为 P 1 ( L 1 , λ 1 , h )和 P 2 ( L 2 , λ 2 , h ),则利用球面余弦定理可计算出 P 1 点到 P 2 点的大圆弧长度。具体计算步骤如下:
式中, L 1 为起点的纬度, λ 1 为起点的经度, L 2 为终点的纬度, λ 2 为终点的经度, a 和 b 为中间变量, θ rng 为起点与终点的大圆夹角, R 为WGS-84椭球体半径, l dist 为大圆弧长度。
大圆航线尽可能精确且高效。大圆航线的计算包括大圆航线的正解和大圆航线的反解,大圆航线的正解是指已知起点的经度 λ 1 、纬度 L 1 、方位角 χ az 和大圆弧长,求终点的经度 λ 2 和纬度 L 2 。
大圆航线的正解为
大圆航线的反解是指已知起点的经度和纬度,以及终点的经度和纬度,求大圆弧长和方位角。大圆航线的反解通常由球面三角余弦定理计算得到,或由向量法计算得到,尽管两种计算方法在数学原理上是精确的,但在计算机上前者存在不可靠的情况,例如,在处理cos( θ 1 - θ 2 )时,若 θ 1 与 θ 2 的差值较小,则其舍入误差将对大圆弧长的精度造成较大的影响,进而影响大圆航线正解得到的终点的经度和纬度精度;而后者通过解方程组,需要考虑多种情况,不仅代码冗长而且计算效率低下。为了解决上述问题,可以使用Haversine公式(半正矢公式)对球面三角余弦定理进行改进。
Haversine公式定义如下:
令 θ = θ rng ,可得
利用半正矢公式计算大圆航线的反解,可得
式中, a '为中间变量。另外,还需要进行方位角计算: