Great-circle distance
The great-circle distance or orthodromic distance is the shortest distance between any two points on the surface of a sphere measured along a path on the surface of the sphere (as opposed to going through the sphere's interior). Because spherical geometry is rather different from ordinary Euclidean geometry, the equations for distance take on a different form. The distance between two points in Euclidean space is the length of a straight line from one point to the other. On the sphere, however, there are no straight lines. In non-Euclidean geometry, straight lines are replaced with geodesics. Geodesics on the sphere are the great circles (circles on the sphere whose centers are coincident with the center of the sphere).
Between any two points on a sphere which are not directly opposite each other, there is a unique great circle. The two points separate the great circle into two arcs. The length of the shorter arc is the great-circle distance between the points. A great circle endowed with such a distance is the Riemannian circle.
Between two points which are directly opposite each other, called antipodal points, there are infinitely many great circles, but all great circle arcs between antipodal points have the same length, i.e. half the circumference of the circle, or πr, where r is the radius of the sphere.
Because the Earth is approximately spherical (see Earth radius), the equations for great-circle distance are important for finding the shortest distance between points on the surface of the Earth (as the crow flies), and so have important applications in navigation.
Contents |
[edit] Formulae
Let
be the geographical latitude and longitude of two points (a base "standpoint" and the destination "forepoint"), respectively, and
their differences and
the (spherical) angular difference/distance, or central angle, which can be constituted from the spherical law of cosines:
The distance d, i.e. the arc length, for a sphere of radius r and
given in radians, is then:
This arccosine formula above can have large rounding errors for the common case where the distance is small, however, so it is not normally used. Instead, an equation known historically as the haversine formula was preferred, which is much more numerically stable for small distances:[1]
Historically, the use of this formula was simplified by the availability of tables for the haversine function: hav(θ) = sin2 (θ/2).
Although this formula is accurate for most distances, it too suffers from rounding errors for the special (and somewhat unusual) case of antipodal points (on opposite ends of the sphere). A more complicated formula that is accurate for all distances is the following special case (a sphere, which is an ellipsoid with equal major and minor axes) of the Vincenty formula (which more generally is a method to compute distances on ellipsoids):[2]
When programming a computer, one should use the atan2() function rather than the ordinary arctangent function (atan()), in order to simplify handling of the case where the denominator is zero, and to compute
unambiguously in all quadrants.
If r is the great-circle radius of the sphere, then the great-circle distance is
.
[edit] Vector solution (non-singular)
In the above calculations, the horizontal position was represented by latitude and longitude, which have singularities at the Poles. If n-vector is used instead, expressions based on arccos, arcsin, and arctan are obtained using the dot product and cross product:
where
and
are the n-vectors representing the two positions s and f. If the two positions are originally given as latitudes and longitudes, a conversion to n-vectors must first be done.
[edit] Radius for spherical Earth
The shape of the Earth closely resembles a flattened spheroid with extreme values for the radius of 6,378.137 km at the equator and 6,356.752 km at the poles. The average radius for a spherical approximation of the figure of the Earth is approximately 6371.01 km (3958.76 statute miles, 3440.07 nautical miles).
[edit] Worked example
For an example of the formula in practice, take the latitude and longitude of two airports:
- Nashville International Airport (BNA) in Nashville, TN, USA: N 36°7.2', W 86°40.2'
- Los Angeles International Airport (LAX) in Los Angeles, CA, USA: N 33°56.4', W 118°24.0'
The co-ordinates are first converted to decimal degrees (Sign × (Deg + (Min + Sec / 60) / 60)) and radians (× π / 180) before they can be used effectively in a formula. After conversion, the coordinates become:
- BNA:

- LAX:

Using these values in the angular difference/distance equation:
Thus the distance between LAX and BNA is about 2886 km or 1794 miles (× 0.62137) or 1557 nautical miles (× 0.539553).
[edit] See also
- Air navigation
- Central angle
- Circumnavigation
- Flight planning
- Geodesy
- Geographical distance
- Great-circle navigation
- Haversine formula
- SIGI
- Spherical Earth
- Spherical geometry
- Spherical trigonometry
- Vincenty's formulae
[edit] References
- ^ R.W. Sinnott, "Virtues of the Haversine", Sky and Telescope, vol. 68, no. 2, 1984, p. 159
- ^ Vincenty, Thaddeus (1975-04-01). "Direct and Inverse Solutions of Geodesics on the Ellipsoid with Application of Nested Equations" (PDF). Survey Review (Kingston Road, Tolworth, Surrey: Directorate of Overseas Surveys) 23 (176): 88–93. http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf. Retrieved 2008-07-21.
[edit] External links
- GreatCircle at MathWorld
- Global Distance Calculator at Infoplease
- Haversine formula in JavaScript Haversine and other formulae for calculating distances, bearings, etc.
- Distance Between Two Cities Site uses Haversine Formulae and integrates Road distances too
- Distance Between Two Cities Places On Map.





