This package is now DEPRECATED. Its functionality has been incorporated
This package includes three routines GEODDISTANCE, GEODRECKON, and
GEODAREA which solve various problems involving geodesics on the surface
of an ellipsoid of revolution. These are based on the paper
C. F. F. Karney, Algorithms for geodesics,
J. Geodesy 87, 43-55 (2013);
which, in turn, is based on the classic solution of the geodesic
problems pioneered by Legendre (1806), Bessel (1825), and Helmert
GEODRECKON solves the direct geodesic problem (determining an end point
given a starting point, range, and bearing). GEODDISTANCE solves the
inverse geodesic problem (determining the shortest distance between two
points). GEODAREA determines the area of a polygon whose edges are
* The routines are accurate to round off for abs(f) < 1/50. For
example, for the WGS84 ellipsoid, the error in the distance returned
by GEODDISTANCE is less then 15 nanometers.
* The routines work for prolate (as well as oblate) ellipsoids.
* GEODDISTANCE converges for all inputs.
* Differential and integral properties of the geodesics are computed.
* GEODAREA is accurate regardless of the length of the edges of the
Also provided are 3 auxiliary routines, DEFAULTELLIPSOID, ECC2FLAT, and
Use GEODDOC to obtain a more detailed description.