GIS::Distance::Haversine - Exact spherical distance calculations.
This is the default distance calculation for GIS::Distance as it keeps a good balance between speed and accuracy.
A faster (XS) version of this formula is available as GIS::Distance::Fast::Haversine.
Normally this module is not used directly. Instead GIS::Distance is used which in turn interfaces with the various formula classes.
dlon = lon2 - lon1 dlat = lat2 - lat1 a = (sin(dlat/2))^2 + cos(lat1) * cos(lat2) * (sin(dlon/2))^2 c = 2 * atan2( sqrt(a), sqrt(1-a) ) d = R * c