[Proj] Transverse Mercator algorithm
Gerald I. Evenden
geraldi.evenden at gmail.com
Wed Sep 3 14:51:00 EDT 2008
On Tuesday 02 September 2008 11:57:14 pm Charles Karney wrote:
> Gerald I. Evenden wrote:
> > At the moment I have three TMs which produce equivalent accuracy
> except in
> > the "problem area" where longitude approaches 90 degrees from the
> > meridian on the equator. If you procedures produce finite values at
> > lat=0,lon=90 I would very much like to see your efforts, especially
> in terms
> > of math development.
> > You mention elliptic integrals but I did not see them in the pdf or
> at least
> > did not recognize them. Is the math complete in the pdf? It seems
> like it
> > is not. Of course the language is a barrier for me but the math is
> > understandable.
> > A very quick scan of the pdf file makes me think the math is similar
> > to what I call the Swedish version and I believe they made comment
> > about their version being used in Finland (someone did ;-) ). But
> > their method fails at 0,90.
> Assuming that the "Swedish version" you refer to is
I already have that pdf and yes, that is the one I refer to as the "Swedish
> then, indeed, the Finnish report I used is very similar. There is,
> however, one noteworthy difference. The Swedish algorithm is only
> approximately conformal, whereas the Finnish method is conformal (to
> round-off). This is easily remedied by substituting the exact formula
> for the conformal latitude (as is done in the Finnish report). I
> implement the inverse of this transformation by Newton's method which
> converges quickly to round-off.
In general, I am not that interested in answers to machine precision merely to
about 0,0001mm or 0,001mm would be acceptable. The only place in libproj4
where I went close to machine precision is the meridian distance function
when I changed over to elliptic integrals in the computation and dropped the
traditional sine power series expansion of the integral.
Also, (not to start an argument) I am especially forgiving on precision of
projection procedures covering large areas as in continental or global
mapping. Precision is a property to be only concerned about in cadestral
mapping and grid systems that traditionally cover small areas due to the
increase of scale factor errors in the larger region (which has nothing to do
with computational precision).
> The Finnish method has only one essential approximation, namely,
> substituting series expansions (accurate to e^8) for the transformations
> between conformal and rectifying latitudes. As you point out, there is
> no derivation for these series expansions in the report. However, I
> have derived these expansions and extended them to e^16. The math here
> is standard undergraduate or first year graduate level stuff and I used
> macsyma to do the tedious parts of the algebra. In addition, I've
> derived accurate expansions for the convergence and scale.
> Any method based on such expansions will fail at lat=0, lon=90*(1-e)
> because of a singularity in the complex plane in the transformation from
> geodetic to conformal latitudes. (To be precise the inverse
> transformation becomes multi-valued.) The singularity is mild but it
> causes series expansions to fail. My slower "exact" method can navigate
> around the singularity readily enough. In particular, there is no
> singularity at 0N 90E. For what it's worth, the result here is
> easting = 25953592.845413590 m
> northing = 9997964.943020998 m
> convergence = 90 deg
> scale = 18.40462279198669
The nature of this singularity blows libproj4's basic capabilty but I am still
interested in this problem purely academically as I feel there is not a
practical use for TM to the E-W limits---especially if you have to pay dearly
in cpu time to get there.
> WGS84: a = 6378137 m, f = 1/298.257223563, k0 = 0.9996, false easting =
> false northing = 0 (i.e., 0N 0E -> 0,0).
> For my purposes, the exact method serves chiefly to gauge the accuracy
> of the approximate method. In particular, the error in the Finnish and
That is a useful and valuable asset.
> Swedish methods is 1mm if the distance to 0N 90E is 36 deg, 1m if the
> distance is 20 deg, and 1km if the distance is 10 deg. I.e., they
> "fail" well before 0N 90E is reached. Including additional terms in the
> series will probably not change this appreciably (instead it will
> increase the accuracy where it's already pretty good).
> The exact method and the derivations of the various series
> approximations are all done in macsyma. You'll probably need to have
> macsyma installed if you want to use these.
I have maxima and wxmaxima on my machine which seem to be related some time
ago. It is my understanding that macsyma is a commercial product and thus
outside my pocketbook. I do everything on the cheap. ;-) It allows me to
make everthing I do free.
The math presented by Thompson and Lee seem quite at odds with several of the
expanded range methods in that they express the problem in Jacobian
functions. Is there a parallel of have you looked into their methods?
The whole religious complexion of the modern world is due
to the absence from Jerusalem of a lunatic asylum.
-- Havelock Ellis (1859-1939) British psychologist
More information about the Proj