File Exchange

image thumbnail

Compute the Great Circle Distance between two points

version 1.0.0.0 (1.78 KB) by Steve Ratts
compute the great circle distance between two points given lat and long.

5 Downloads

Updated 18 Feb 2009

View License

This function will compute the great circle distance between two points on a sphere of uniform radius using the Vincenty formula. At minimum, four inputs are required: lat1, long1, lat2, long2. Optionally, a fifth parameter (r) can be specified. If this parameter isn't specified it's assumed to be the mean radius of the earth in km.

INPUTS:
phi_s = latitude of the standpoint (base)
lambda_s = longitude of the standpoint (base)
phi_f = latitude of the forepoint (destination)
lambda_f = longitude of the forepoint (destination)
r = radius of the sphere [units determine units of d]

OUTPUT:
d = great circle distance from standpoint to forepoint

Note that the Vincenty equation requires the latitude and longitude to be specified in radians. This function will accept either radians, DMS or DM. If the input angles are scalar, they are assumed to be radians. If they are structures or they are not scalars, then they are assumed to be either DMS or DM and are converted to radians as needed.

See http://en.wikipedia.org/wiki/Great-circle_distance

Cite As

Steve Ratts (2019). Compute the Great Circle Distance between two points (https://www.mathworks.com/matlabcentral/fileexchange/23026-compute-the-great-circle-distance-between-two-points), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (1)

This function seems to be based on the assumption that a and b, the major and minor radii of the Earth, are the same. This allows a simplification, as can be seen in the wiki linked above, but it is not the full Vincenty.

A full implimentation would require an iterative appproach.

MATLAB Release Compatibility
Created with R2008a
Compatible with any release
Platform Compatibility
Windows macOS Linux