Distance calculation using Haversine formula
Updated 26 Aug 2014
This program calculates the distance between two locations (latitude and longitude) using the Haversine formula. The Haversine formula gives the shortest distance between two points over the earth's surface, ignoring elevation, hills, etc...
The program accepts two inputs that can be locations specified as either degrees, minutes, and seconds or by decimal degrees. The output is the distance in km, n.mi, and miles.
haversine('53 08 50N, 001 50 58W', '52 12 16N, 000 08 26E') returns 170.2547
haversine([53.1472 -1.8494], '52 12.16N, 000 08.26E') returns 170.2508
haversine([53.1472 -1.8494], [52.2044 0.1406]) returns 170.2563
Josiah Renfree (2023). Distance calculation using Haversine formula (https://www.mathworks.com/matlabcentral/fileexchange/27785-distance-calculation-using-haversine-formula), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
- AI, Data Science, and Statistics > Statistics and Machine Learning Toolbox >
- Mathematics and Optimization > Mapping Toolbox > Coordinate Reference Systems >
- Radar > Mapping Toolbox > Coordinate Reference Systems >
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Removed use of the deg2rad function, which required the Mapping toolbox. The conversion is now done by simply multiplying degrees by pi/180.
Clarified in the help section that the first element in LOC is latitude and the second is longitude.