TransverseMercatorExact.cpp File Reference

Implementation for GeographicLib::TransverseMercatorExact class. More...

#include <GeographicLib/TransverseMercatorExact.hpp>

Go to the source code of this file.

Namespaces

namespace  GeographicLib
 

Namespace for GeographicLib.



Detailed Description

Implementation for GeographicLib::TransverseMercatorExact class.

Copyright (c) Charles Karney (2008-2014) <charles@karney.com> and licensed under the MIT/X11 License. For more information, see http://geographiclib.sourceforge.net/

The relevant section of Lee's paper is part V, pp 67--101, Conformal Projections Based On Jacobian Elliptic Functions.

The method entails using the Thompson Transverse Mercator as an intermediate projection. The projections from the intermediate coordinates to [phi, lam] and [x, y] are given by elliptic functions. The inverse of these projections are found by Newton's method with a suitable starting guess.

This implementation and notation closely follows Lee, with the following exceptions:

Lee

here

Description

x/a

xi

Northing (unit Earth)

y/a

eta

Easting (unit Earth)

s/a

sigma

xi + i * eta

y

x

Easting

x

y

Northing

k

e

eccentricity

k^2

mu

elliptic function parameter

k'^2

mv

elliptic function complementary parameter

m

k

scale

zeta

zeta

complex longitude = Mercator = chi in paper

s

sigma

complex GK = zeta in paper

Minor alterations have been made in some of Lee's expressions in an attempt to control round-off. For example atanh(sin(phi)) is replaced by asinh(tan(phi)) which maintains accuracy near phi = pi/2. Such changes are noted in the code.

Definition in file TransverseMercatorExact.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 6 Oct 2014 for GeographicLib by  doxygen 1.6.1