sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Charles Karney (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SIS-385) Inaccurate formulas in DistanceUtils
Date Wed, 17 Jan 2018 15:02:00 GMT

    [ https://issues.apache.org/jira/browse/SIS-385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16328858#comment-16328858
] 

Charles Karney commented on SIS-385:
------------------------------------

The issue descriptions don't quite match the two complaints I made on the mailing list. This
one was referring to problems with the computations on a *sphere* (not an *ellipsoid*). Currently
the SIS routines are sub-standard returning results involving arcsine or arccosine which are
subject to large rounding errors in some cases. I recommend following the methodology in the
Wikipedia article, [Great-circle navigation|https://en.wikipedia.org/wiki/Great-circle_navigation],
using the more accurate formulas (involving atan2) where appropriate.

> Inaccurate formulas in DistanceUtils
> ------------------------------------
>
>                 Key: SIS-385
>                 URL: https://issues.apache.org/jira/browse/SIS-385
>             Project: Spatial Information Systems
>          Issue Type: Bug
>          Components: Referencing
>    Affects Versions: 0.1-incubating, 0.2-incubating, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8
>            Reporter: Martin Desruisseaux
>            Priority: Major
>             Fix For: 1.0
>
>
> The {{DistanceUtils}} class has the following problems:
> * Inaccurate formula in {{getPointOnGreatCircle}}.
> * Inaccurate formula in {{getHaversineDistance}}.
> * Misnamed {{getHaversineDistance}} method.
> Charles Karney kindly provided descriptions of the problems [on the developer mailing
list|https://lists.apache.org/thread.html/85ba228a3191f2952f2e37caa489f929daffd491da50484972af4aef@%3Cdev.sis.apache.org%3E],
together with proposed fixes. One possible action is to deprecate {{DistanceUtils}} in favor
of something like the {{GeodeticCalculator}} class [in the Geotk project|http://www.geotoolkit.org/apidocs/org/geotoolkit/referencing/GeodeticCalculator.html].
That class is a port in Java of following Fortran code:
> * ftp://ftp.ngs.noaa.gov/pub/pcsoft/for_inv.3d/source/forward.for subroutine DIRECT1.
> * ftp://ftp.ngs.noaa.gov/pub/pcsoft/for_inv.3d/source/inverse.for subroutines GPNARC
(version 200005.26) and GPNHRI (version 200208.09) written by Robert (Sid) Safford.
> But we may take another source if suitable, for example [https://geographiclib.sourceforge.io/|https://geographiclib.sourceforge.io/].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message