[Proj] Transverse Mercator algorithm
    Charles Karney 
    ckarney at sarnoff.com
       
    Thu Sep  4 17:12:07 EDT 2008
    
    
  
Here are reasonably accurate formulas for meridian convergence and scale
for the transverse Mercator projection.
Input:
    phi = geodetic latitude (radians)
    l = longitude difference from central meridian (radians)
    ep2 = e^2/(1-e^2)
Output:
    gamma = meridian convergence (radians)
    k = scale (assuming scale on central meridian = 1)
    double
      c = cos(phi),
      s = sin(l),
      c2 = c * c,
      s2 = s * s,
      d = 1 - s2 * c2,
      // Accurate to order ep2^2
      carg = 1 + c2 * c2 * s2 / d * ep2 *
      (1 + c2 / (3 * d * d) *
       (2 - s2 * (c2 * ((4 * c2 - 1) * s2 - 9) + 8)) * ep2),
      // Accurate to order ep2
      cabs = 1 + c2 * c2 * s2 * ((c2 - 2) * s2 + 1) / (2 * d * d) * ep2;
    double gamma = atan2(sin(phi) * s * carg, cos(l));
    double k = cabs/sqrt(d);
For more accuracy see
    http://charles.karney.info/geographic/UTM-fi.txt
which also contains higher order terms for the computation of the
forward and reverse projection.
-- 
Charles Karney <ckarney at sarnoff.com>
Sarnoff Corporation, Princeton, NJ 08543-5300
URL: http://charles.karney.info
Tel: +1 609 734 2312
Fax: +1 609 734 2662
    
    
More information about the Proj
mailing list