Sapendo che la distanza tra due punti P e Q sulla sfera unitaria è data dall'arcocoseno del prodotto scalare tra P e Q, calcola la distanza tra Edimburgo (55 57'N, 3 12'W) e Nuova Deli (28 36'N, 77 13'E), tenendo conto che il raggio terrestre è di 6370±10 km.

Facciamo i calcoli del prodotto scalare (dot product) tra P e Q con R, in cui è indicato drop(P %*% Q). Un esempio:

P <- c(1,0,0); Q <- c(0,1,0); acos(drop(P %*% Q))
# 1.570796

Questa è la distanza tra i punti (1,0,0) e (0,1,0) della sfera unitaria, pari ad 1/4 della lunghezza del cerchio di raggio 1.

Vediamo come trasformare le coordinate geografiche nelle coordinate cartesiane, ovvero come passare, riferendosi al punto rosso della figura a lato, da α e β ad x, y e z.

s = cos(β), z = sin(β), x = s*cos(α), y = s*sin(α)

Ecco i calcoli, fatti con R.

 

X <- function(B,A) cos(B/180*pi)*cos(A/180*pi)
Y <- function(B,A) cos(B/180*pi)*sin(A/180*pi)
Z <- function(B) sin(B/180*pi)
B1 <- 55+57/60; A1 <- 3+12/60
P <- c(X(B1,A1),Y(B1,A1),Z(B1))
B2 <- 28+36/60; A2 <- -(77+13/60)
Q <- c(X(B2,A2),Y(B2,A2),Z(B2))
R <- 6370
acos(drop(P %*% Q))*R
# 6827.966
## Tenendo conto dell'approssimazione del raggio terrestre, concludo che
## la distanza è di 6830 km, con una precisione di una quindicina di km.

Come fare tutto facilmente con questo script online:

Arrotondo a tre cifre:  6830 km.

Confrontiamo il valore con quello che ci fornisce WolframAlpha:
from New Deli to Edimburg
6842 km     OK

Per altri commenti: lo spazio tridimensionale neGli Oggetti Matematici.