NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
Re: Destination from course and distance
From: Doug Royer
Date: 2005 Mar 9, 16:09 -0800
From: Doug Royer
Date: 2005 Mar 9, 16:09 -0800
Thank you George for providing this. I too was interested in what was asked but had no idea how to get Lat2 and lon2 as for the reasons you state that Bowditch and Dutton aren't set up to do it that way. After posting what I did I went and pulled my copy of vol. II,Bowditch and saw that every explaination wouldn't allow me(or him or anyone)to solve for Lat2 + Lon2. Being that I have only enough mathamatical understanding to be dangerous I waited and hoped someone would explain it so I could try it too. I've now "hard copied" this explaination by you and will play around with it when I get a chance. 1 question: w = 90*(1-SGN............ What does SGN mean? Thanks again. To find the destination, lat2 and long2, after leaving the departure point lat1, long1, initially starting in the direction course1, and travelling a distance m nautical miles. Conventions: (it's useful to specify these very clearly) ----------- All angles are expressed in degrees, so the computer must calculate in degrees rather than radians (or convert). lat1 and lat2 are positive for North, negative for South. Courses are in degrees clockwise, 0 to 360 from true North. The initial course is course1. Longitudes are always measured in degrees Westwards from Greenwich (which I refer to as "Westitude" to emphasise that convention) and similarly changes in longitude are measured Westwards (which I call "Westing"). An Easterly long. from Greenwich of, say 10 degrees E, can be expressed as a Westitude of 350 deg, or of -10 deg, which is exactly the same thing. Let's start- d = miles / 60 (this puts the great-circle distance into degrees) then, for the resulting latitude lat2 : lat2 = ASN ( (COS d * SIN lat1) + (SIN d * COS lat1 * COS course1)) and for the westing w : x = SIN d * SIN course1 IF x = 0 THEN w = 90 * (1 - SGN (cos d)) (this traps out infinities) ELSE w = 180 + (90 * SGN x) - ATN(((SIN lat1 * COS course1) - (TAN (90 - D) * COS lat1)) / SIN course1) ENDIF This gives the Westing as an angle w, 0 to 360 degrees, to add to the initial Westitude long1, to give the resulting Westitude long2. If the sum exceeds 360, subtract 360. ================= Two factors make the above bit of code somewhat more complicated than you would initially expect- 1. The ATN (arc-tan or inverse tan) function provides an angle always in the range -90 to +90, whereas the result is needed in the correct quadrant 0 to +360 degrees. Perhaps, if the function, usually named POL or ATAN2, and used for conversion to polar coordinates, is available, then the code could be simplified, because that function automatically chooses the quadrant. 2. Under some circumstances ( if D = 0 or course1 = 0) then an infinity arises part way though the calculation, which may cause an upset. Those special cases are therefore trapped out beforehand. On test, the above expressions appear to give the right answers. However, I usually prefer to subject such code to more prolonged use before offering it; which hasn't happened in this case. So it's somewhat tentative: if anyone sees any snags or finds any errors or suggests any improvements then I hope they will be posted to Nav-l. =================== The next step that's needed is the one that Jeff Schroeder didn't ask for, but perhaps should have; the final course that should be being-steered at the end of a great-circle leg of a voyage. Here, I presume that a long great-circle path has been split up into legs, where the legs join smoothly together. The final course of a leg is useful for two reasons- 1. It gives a clue as to how a vessel's course should be gradually adjusted over each great-circle leg of a voyage. from the initial-course to the final-course. This is useful only if legs are kept reasonably short, say a thousand miles or so. 2. The final course at the end of a leg becomes the initial course at the start of the next leg, and the starting position for that next leg is the calculated lat and long resulting from the first leg. In this way a series of waypoints and courses can be readily established along a smooth and continuous great-circle path. Perhaps someone else would like to have a go at that problem; finding the appropriate value for course2 at the end of a great-circle leg of m miles, setting off in a direction course1 from a position lat1, long1. It's a straightforward exercise in spherical geometry (I think).