A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
Re: Two-body fix caveat
From: George Huxtable
Date: 2009 Nov 4, 11:19 -0000
From: George Huxtable
Date: 2009 Nov 4, 11:19 -0000
Peter Hakel and I have been discussing John Karl's book. "Celestial Navigation in the GPS age", and his set of equations 7.5a to 7.5e,on pages 78-79, which provides an analytical solution to determining position from simultaneous altitudes of two bodies. Peter has confirmed that he, like me, has the first edition (2007), so we're both singing from the same hymn-sheet. Things may have been clarified in a later edition: if any listmember has an edition later than 2007, it would be helpful to discover details of those pages. Although we're discussing here details of a difficulty which is not well explained on those pages, and a few other problems occur elsewhere, it is in general a really good text, which I recommend. The second edition, if it's anppeared yet, should be an improvement on the first (as most second editions are) in addressing a few of those difficulties. Now for Karl's equations 7.5 , of which the difficulties appear when we get to 7.5d and 7.5e. 7.5d is stated as- sin lat = sin d1 sin H1 + cos di cos H1 cos (A-B) this provides one solution to the ship's latitude from the 2-body fix. However, the 2-body fix always has two such solutions, the two crossing points of the position circles centred on the GPs of the two bodies being sighted. Unfortunately, that isn't made clear within equation 7.5d itself, but a note down the page states that "the other fix would be selected by using (A +B) for the cosine argument." That alternative solution would be given by- sin lat = sin d1 sin H1 + cos di cos H1 cos (A+B) So, there's an ambiguity in determining position. It's not related to John Karl's procedure; it applies to any way of tackling such a 2-body fix. There is no way to distinguish between those solutions from the information given with a 2-body fix (the two simultaneous altitudes). To do so, other information is needed. Indeed, once the two longitudes, corresponding to those latitudes, are known, the choice of the correct solution is usually obvious, if the observer has even a rough idea which part of the ocean he is in, or if he checks on the azimuth of either body. That decision becomes difficult only when the alternative solutions get close together, which happens if the azimuths of the two bodies are nearly the same, or opposite. That is the degenerate case, which mariners know to avoid. From each of those two latitudes, the navigator must next determine the appropriate longitude, so fixing the ship's position in one of those two possible places. He can choose either of those observed bodies; (Karl chooses body1), and determine the local hour angle of that body, taking the appropriate latitude, together with observed altitude of that body, and its declination, using the celestial-triangle formula 7.5e. cos LHA1 = (sin H1 - sin d1 sin lat) / cos d1 cos lat and then using that to determine ship's longitude by 7.5f Lon = LHA1 - GHA1. This presents some difficulties, as Peter Hakel and I have discovered. The trouble is, that as the local hour angle is determined from its cosine, there's no way to tell whether it's to the East, or the West, of the meridian line, so the question arises: should LHA1 be taken as a positive or negative quantity in 7.5f? Indeed, if it's well away from the North-South line, that will be obvious to a navigator (if not to a computer). But if body1 is anywhere near due North, or South, as might quite legitimately be the case, it might not be obvious at all, and so there are two possible answers. This is an EXTRA layer of ambiguity, on top of the unavoidable ambiguity between two possible fix positions, that we discussed above. Fortunately, this one can be resolved, and Peter has shown one way to do that, though I think there may be a better way. The other problem, associated with calculaing LHA from its cosine, for a body near due-North or due-South, is the IMPRECISION of that calculation. It becomes very dependent on the precision of the altitude observation and the declination, because of the way the cosine function changes so slowly with angle, around zero and 180 degrees. To put it another way, no navigator with any common sense would try to deduce his longitude by observing a star to his North or South. In that, lies the answer to both the imprecision problem and the ambiguity in longitude. He would work it from the other body instead. As described above, John Karl happened to choose body1 for deducing longitude, once he had deduced a pair of possible latitudes. But, if body1 happened to be near due North, or South, he could have just as well worked from body2 instead. In that situation, we know that body2 can't be near the North-South line, because if it was, we would be in the degenerate situation where the bodies are at similar or opposite azimuths, and then we know the method won't work anyway. A human navigator can use his commonsense about choosing the appropriate body, from which to work his longitude. Common sense a computer lacks, so it has to be given rules to follow. Here are suggestions for those rules. Start with either one of those deduced latitudes. The other can follow later. Taking body1 first, deduce a pair of longitudes, using positive and negative values for LHA1, and also note the spread between them. Now take body 2, and do the same. We now have four possible longitudes. Two of those four solutions will closely correspond; discard the others. From that nearly-equal pair, choose the solution which was given by the body with the widest spread as the resulting longitude, to go with that first deduced latitude. Next, take the other deduced latitude, and obtain a corresponding longitude, in just the same way. That may not be elegant, but I think it will arrive at a foolproof answer, even for a computer. The computer won't mind making unnecessary computations, just to be discarded. All this stuff does mess up the apparent simplicity of John Karl's analytic solution. I hope he's found a way to improve the explanation, in the second edition. George. contact George Huxtable, at email@example.com or at +44 1865 820222 (from UK, 01865 820222) or at 1 Sandy Lane, Southmoor, Abingdon, Oxon OX13 5HX, UK. . contact George Huxtable, at firstname.lastname@example.org or at +44 1865 820222 (from UK, 01865 820222) or at 1 Sandy Lane, Southmoor, Abingdon, Oxon OX13 5HX, UK. ----- Original Message ----- From: "P H"
To: Sent: Tuesday, November 03, 2009 8:05 PM Subject: [NavList 10414] Two-body fix caveat I finally had some time to look more closely at Eqs. 7.5 in John Karl's book (page 79), which provide a straightforward and elegant solution to the two-body fix problem without St. Hilaire. This is a very nice alternative to the van Allen's approach (that uses 3-D geometry), and other methods. After a brief off-list discussion with John, I'd like to comment on Eq. 7.5e, which yields LHA1. Generally, there are two distinct solutions to that equation, while the inverse cosine function yields only one of them (let's call it C). I relay John's comment, that the navigator must select C, if the ship is east of GP1, and 360-C, if the ship is west of GP1. John also writes that "the body that's to the west should always be labeled #1." A difficulty can arise if the ship and GP1 are almost on the same meridian. Another problem occurs if these equations are to be implemented in a computer program, which does not have the above-mentioned human insight into the relative positions of the ship and the two bodies. In these cases I propose to evaluate the zenith distance to GP2 from both candidate positions, and accept the one that matches (within the machine's numerical accuracy) the ZD2 = 90 - Ho2 given on input. For illustration I attach two pages with a simple example, in which the correct solution is given by LHA1 = 360 - C, not by C=arccos(...). Peter Hakel --~--~---------~--~----~------------~-------~--~----~ NavList message boards: www.fer3.com/arc Or post by email to: NavList@fer3.com To unsubscribe, email NavListemail@example.com -~----------~----~----~----~------~----~------~--~---