Если координаты точек заданы в декартовой плоскости, то расстояние между ними
можем найти по теореме Пифагора. А если координаты заданы на сфере, в виде
широты и долготы? На сфере по мере движения от экватора к полюсу расстояние
между одинаковыми значениями широты сужается. Как вычислить расстояние между
точками? Попробуем разобраться.
Изобразим точку на сфере в координатах широты $\varphi$ и долготы $\gamma$:
И пусть таких точек две, $V_1$ и $V_2$.
В 3-мерном векторном пространстве векторам $V_1$ и $V_2$ соответствуют задание через углы долготы $\gamma_1$ и $\gamma_2$ и широты $\varphi_1$ и $\varphi_2$:
$$
V_1=R\left(
\begin{array}{c}
\cos\gamma_1\cos\varphi_1 \\
\sin\gamma_1\cos\varphi_1 \\
\sin\varphi_1
\end{array}
\right)
$$
$$
V_2=R\left(
\begin{array}{c}
\cos\gamma_2\cos\varphi_2 \\
\sin\gamma_2\cos\varphi_2 \\
\sin\varphi_2
\end{array}
\right)
$$
здесь $R$ - некий радиус сферы. В нашем случае он неважен.
Угол между векторами $\alpha$ в сочетании с радиусом $R$, если угол выражен в радианах, и дает расстояние между точками $V_1$ и $V_2$ на сфере. Конечно же, капитанов Жюля Верна интересует расстояние между точками не по прямой, сквозь Землю, а по сфере.
Угол $\alpha$ между векторами входит в их скалярное произведение:
$$
(V_1,V_2)=R^2\cos\alpha
$$
Таким образом, можем получить выражение косинуса угла, сократив скалярное произведение на $R^2$:
$$
\begin{array}{c}
\cos\alpha=\cos\gamma_1\cos\varphi_1\cos\gamma_2\cos\varphi_2+ \\
+\sin\gamma_1\cos\varphi_1\sin\gamma_2\cos\varphi_2+ \\
+\sin\varphi_1\sin\varphi_2
\end{array}
$$
Сумму первых двух членов можем сократить, используя формулу косинуса разности, итого получим:
$$
\cos\alpha=\cos\varphi_1\cos\varphi_2\cos(\gamma_2-\gamma_1)+
\sin\varphi_1\sin\varphi_2
$$
Именно эту формулу обычно и приводят в справочниках под названием угла ортодромии.
Но что считать расстоянием, если между двумия точками на окружности две дуги, и которую из них выбирать, наверное лучше решать по контексту задачи.
Комментариев нет:
Отправить комментарий