Namespaces
src/TransverseMercatorExact.cpp File Reference

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

#include <GeographicLib/TransverseMercatorExact.hpp>
Include dependency graph for src/TransverseMercatorExact.cpp:

Go to the source code of this file.

Namespaces

 GeographicLib
 Namespace for GeographicLib.
 

Detailed Description

Implementation for GeographicLib::TransverseMercatorExact class.

Copyright (c) Charles Karney (2008-2017) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

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 src/TransverseMercatorExact.cpp.



gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:18:37