At 05:51 PM 6/11/02 -0800, Carl Schaefer wrote:
>I'm looking for the calculations of grid convergence between UTM
>grid north and true north given a specific Lat/Long. ...I need the math 
>behind
>it.

 From one perspective, the math is easier than you might think.  In any 
programming environment where you can project points, you can readily 
compute all the local properties of a projection, including the convergence 
and the parameters of Tissot's indicatrix.  These properties are defined in 
terms of partial derivatives of the projection, which in all practical 
cases are extremely well approximated by finite differences computed over 
distances of a few meters.  Thus, for the convergence, simply create a 
short north-pointing geodesic centered at the point in question and project it.

A few years ago I published working code to compute convergence using this 
technique 
(http://arcscripts.esri.com/details.asp?dbid=3C29F07E-7839-11D4-943200508B0CB419) 
.  The bad news is that it was written for an ESRI product (ArcView) but 
the good news is that the code is transparent and simple enough that you 
should have no problem porting it.  Here are the guts of the 
calculation.  The first three executable lines do all the work; the rest is 
a routine angle calculation.  Input is a point object in lat-lon, ptU, and 
a projection object, thePrj:
'
' Create an "infinitesimal" north-pointing geodesic,
' project it, and obtain the projected direction vector.
'
ptW = 0@ (1/111000)     ' A displacement of about one meter, measured in 
degrees
linNorth = Line.Make(ptU - ptW, ptU + ptW).ReturnProjected(thePrj)
ptV = linNorth.Along(100) - linNorth.Along(0) ' Vector from start to end of 
the projected geodesic
'
' Compute the angle made with grid east.
'
t = ptV.GetY/ptV.GetX            ' Tangent
radA = t.ATan                    ' Between -pi/2 and pi/2
angA = radA / Number.GetPi * 180 ' Between -90 and 90
if (ptV.GetX < 0) then
   angA = angA + 180              ' Between 90 and 270
end
'
' Convert to the convergence angle (degrees east of north)
' for the grid north relative to true north.
'
angA = angA - 90                 ' Between -180 and 180
' end of example

--Bill Huber


---------------------------------------------------------------------
List hosting provided by Directions Magazine | www.directionsmag.com |
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to