Chronology Current Month Current Thread Current Date
[Year List] [Month List (current year)] [Date Index] [Thread Index] [Thread Prev] [Thread Next] [Date Prev] [Date Next]

Re: spherical geometry



Regarding Carl's explanation of his solution:

I *agree* with Carl's answer for the Guantanamo Bay location.

Great. Here then is my method. Let the two points on the earth's
surface have (latitude,longitude) of (T1,P1) and (T2,P2) with
north/east positive (ie. T=theta, P=phi). They lie on a great circle
like in my PDF document *except* that this circle no longer crosses
the equator at P=0. Instead it is shifted over to say P=P0. But if
we replace P in my document by deltaP=P-P0, then all the equations
will work as before. In particular, Eq. (3) divided by (2) gives the
constant tilt angle A in terms of T and deltaP. Write this ratio
down twice, once for each set of coordinates, and equate them. That
gives an equation for P0, which can easily be solved to find for
the Gitmo problem:

P0 = 73.625 or -106.375 degrees.

Now that we've found the great circle on which the two points lie,
we simply need to find the angle (call it B say) between any point
(T,deltaP) on this great circle and east. An easy way to do this is
to note that cos(B) = dot product between a unit vector tangent to
the great circle and a unit vector pointing east. Both of these unit
vectors lie in the plane perpendicular to (x,y,z) given by Eqs.
(1)-(3) in my PDF. The east unit vector is therefore
(-y,x,0)/sqrt(x^2+y^2). The tangential unit vector is seen from the
diagram in my PDF to be (-sin G, cos G cos A, cos G sin A) where
G=gamma and A=alpha are the "great circle" coordinates of the point.
After some minor cleanup, this becomes:

sec(B)=sqrt[1+sin^2(T)*cot^2(P-P0)]

Plug in the given values of T1 and P1 with the above value of P0 to
get the desired B. Carl

ps: Thanks to John Denker for going to the trouble to very nicely
draw and re-explain the concept of transporting a vector around an
area on a sphere.
--
Carl E. Mungan, Asst. Prof. of Physics 410-293-6680 (O) -3729 (F)
U.S. Naval Academy, Stop 9C, Annapolis, MD 21402-5040
mailto:mungan@usna.edu http://usna.edu/Users/physics/mungan/

Carl's result is nice but the formula for B above is manifestly
positive because of the sqrt() function. This means it won't work
correctly for heading angles that are obtuse (i.e. westerly oriented
headings that have a negative cos(B) value). Also it doesn't
discriminate between northerly headings (positive B) and southerly
headings (negative B) because cos(B) = cos(-B).

The formula I prefer for the heading angle B (north of east) at
point (1) for this problem is:

cos(B) = cos(T2)*sin(D)/sqrt(1 - X^2)

where X = sin(T1)*sin(T2) + cos(T1)*cos(T2)*cos(D) is the cosine of
the geodesic distance between endpoints (1) & (2) in units of the
sphere's radius (i.e. X is the cosine of central angle subtended by
these 2 endpoints) and D is the longitude difference P2 - P1 (mod
2*[pi] such that -[pi] <= D <= [pi]) between the endpoints. This
version has the benefit of automatically giving the geodesic
distance between the points as part of the calculation. Also it
gets the westerly headings correct. Because it calculates B in
terms of a cosine it still doesn't discriminate between northerly
and southerly headings. But this can easily be fixed by noting
that if tan(T2) > tan(T1)*cos(D) then the B angle is positive (i.e.
northerly), but if tan(T2) < tan(T1)*cos(D) then the B angle is
negative (i.e. southerly).

David Bowman