reckon - Point at specified azimuth, range on sphere or ellipsoid

Syntax

[latout, lonout] = reckon(lat, lon, rng, az)
[latout, lonout] = reckon(lat, lon, rng, az, units)
[latout, lonout] = reckon(lat, lon, rng, az, ellipsoid)
[latout, lonout] = reckon(lat, lon, rng, az, ellipsoid, units)
[latout, lonout] = reckon(track,...)

[latout, lonout] = reckon(lat, lon, rng, az), for scalar inputs, calculates a position (latout, lonout) at a given range rng and azimuth az along a great circle from a starting point defined by lat and lon. lat and lon are in degrees. The range is in degrees of arc length on a sphere. The input azimuth is in degrees, measured clockwise from due north. reckon calculates multiple positions when given four non-scalar inputs of matching size.

[latout, lonout] = reckon(lat, lon, rng, az, units), where units is any valid angle units string, specifies the angular units of the inputs and outputs, including rng. The default value is 'degrees'.

[latout, lonout] = reckon(lat, lon, rng, az, ellipsoid) calculates positions along a geodesic on an ellipsoid, as specified by the two-element vector ellipsoid. The range, rng, is in linear distance units matching the units of the semimajor axis of the ellipsoid (the first element of ellipsoid).

[latout, lonout] = reckon(lat, lon, rng, az, ellipsoid, units) calculates positions on the specified ellipsoid with lat, lon, az, latout, and lonout in the specified angle units.

[latout, lonout] = reckon(track,...) calculates positions on great circles (or geodesics) if track is 'gc' and along rhumb lines if track is 'rh'. The default value is 'gc'.

Examples

What are the coordinates of the point 600 nautical miles northwest of London, UK (51.5ºN,0º), in a great circle sense?

dist = nm2deg(600)  % convert nm distance to degrees

dist =
    9.9933

pt1 = reckon(51.5,0,dist,315)  % northwest is 315 degrees

pt1 =
   57.8999  -13.3507

Now, where would a plane taking off from London and traveling on a constant northwesterly course for 600 nautical miles end up?

pt2 = reckon('rh',51.5,0,dist,315)

pt2 =
   58.5663  -12.3699

How far apart are these points (distance in great circle sense)?

separation = distance('gc',pt1,pt2)

separation =
    0.8430

nmsep = deg2nm(separation)  % convert answer to nautical miles

nmsep =
   50.6156

Over 50 nautical miles separate the two points.

See Also

azimuth, distance, distance, km2deg, dreckon, track, track1, track2

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS