The file core/sis-referencing/src/main/java/org/apache/sis/distance/DistanceUtils.java
contains a routine getPointOnGreatCircle which includes an expression for lat2 involving an arcsine. This is inaccurate if lat2 is near a pole. Better to use the formula for tan(lat2) given in Note 5 of the Wikipedia article https://en.wikipedia.org/wiki/Great-circle_navigation It also contains a routine getHaversineDistance. This is misnamed; it should be called getGreatCircleDistance. (The so-called Haversine method is a particular, not very good, formula for the distance. It isn't being used in this routine.) The formula used by getHaversineDistance (or getGreatCircleDistance) involves an arccosine. This is inaccurate for short distanaces. Better to use the tangent formula given in Note 2 of the same Wikipedia article. --Charles
