# choclo.utils.distance_spherical#

Euclidean distance between two points in spherical coordinates

Important

All angles must be in degrees and radii in meters.

Parameters
• longitude_p (float) – Longitude coordinate of point $$\mathbf{p}$$ in degrees.

• latitude_p (float) – Latitude coordinate of point $$\mathbf{p}$$ in degrees.

• radius_p (float) – Radial coordinate of point $$\mathbf{p}$$ in meters.

• longitude_q (float) – Longitude coordinate of point $$\mathbf{q}$$ in degrees.

• latitude_q (float) – Latitude coordinate of point $$\mathbf{q}$$ in degrees.

• radius_q (float) – Radial coordinate of point $$\mathbf{q}$$ in meters.

Returns

distance (float) – Euclidean distance between point_p and point_q.

Notes

Given two points $$\mathbf{p} = (\lambda_p, \phi_p, r_p)$$ and $$\mathbf{q} = (\lambda_q, \phi_q, r_q)$$ defined in a spherical coordinate system $$(\lambda, \phi, r)$$, return the Euclidean (L2) distance between them:

$d = \sqrt{ (r_p - r_q) ^ 2 + 2 r_p r_q (1 - \cos\psi)}$

where

$\cos\psi = \sin\phi_p \sin\phi_q + \cos\phi_p \cos\phi_q \cos(\lambda_p - \lambda_q)$

and $$\lambda$$ is the longitude angle, $$\phi$$ the spherical latitude angle an $$r$$ is the radial coordinate.