[Proj] Reduced length of geodesics
Charles Karney
ckarney at sarnoff.com
Mon May 4 08:10:09 PDT 2009
I've updated my geodesic routines again. For documentation go to
http://charles.karney.info/geographic/geodesic.html
The code itself (C++ classes and the Geod utility) is available at
http://charles.karney.info/geographic
The main changes are:
* I use Bessel's technique to halve the number of terms in the
series for the distance and longitude integrals. The resulting
series converge faster than before; so I trimmed the order of the
distance series. The resulting speed up of the code is then
canceled by...
* The reduced length, m12, is returned. This is rate at which the
second end point moves when the geodesic is rotated about the
first point (and vice versa). Christoffel (1868) introduced this
quantity in his study of geodesic triangles. For geodesics on a
flat surface the geodesic length and the reduced length are the
same.
* An AzimuthalEquidistant class is provided which is a wrapper on
top of the Geodesic class. The azimuth at the second point and
the reduced length are returned by the projection methods of this
class since they serve to specify the local metric in the
projected space. (In particular, the ratio s12/m12 gives the
azimuthal scale factor.)
* The Geocentric, TransverseMercator, and PolarStereographic classes
now work with prolate ellipsoids. (TransverseMercatorExact is
still restricted to prolate ellipsoids and will likely remain so).
Unfortunately, I've made little progress with documenting the geodesic
routines over the past month (because I've been concentrating on making
them better). However, if anyone has a specific question about the
code, please ask me.
--
Charles Karney <ckarney at sarnoff.com>
Sarnoff Corporation, Princeton, NJ 08543-5300
Tel: +1 609 734 2312
Fax: +1 609 734 2662
More information about the Proj
mailing list