|
Boost : |
Subject: Re: [boost] [gsoc18] Competency task update: Nearly antipodal points distance accuracy improvement
From: Adeel Ahmad (adeelahmad14_at_[hidden])
Date: 2018-03-03 15:50:27
Hello Vissarion,
I have made a pull request adding the changes you pointed out in the "Review 1" issue (https://github.com/adl1995/boost-geometry-proposal/pull/3). Listed below are the tasks I performed:
- Implemented the Vincenty's formula
- Added test for Boost Geometry algorithms. I tested again these policies: vincenty, thomas, and andoyer
- Tested the code against an extensive dataset from (https://zenodo.org/record/32156#.Wpq_DuaYPrf). For now, I have used 150 records
- Used global fixtures to remove code repetitivity
I had to tune the tolerance for each formula. The least accurate was Ellipsoidal project, which makes sense as it's mentioned on its Wikipedia page: "The FCC prescribes the following formulae for distances not exceeding 475 kilometres". The most accurate method was Vincenty's formula. However, I noted that my implementation of the formula was tolerant up to 1e-9, whereas the Boot Geometry implementation was tolerant up till 1e-5. I used the same dataset for all the tests.
Could you please review the pull request and suggest further changes / improvements? I have applied templates to all classes, but they aren't very useful yet. I'm thinking of allowing input in multiple formats e.g. in (degrees, minutes, seconds) and degrees.
Thank you,
Adeel
________________________________
From: Adeel Ahmad <adeelahmad14_at_[hidden]>
Sent: Monday, February 19, 2018 11:55 PM
To: Vissarion Fisikopoulos
Cc: boost_at_[hidden]
Subject: Re: [boost] [gsoc18] Seeking a mentor for Boost.Geometry project 2: Nearly antipodal points distance accuracy improvement
Hello Vissarion,
Thank you for the reply.
I have started implementing the library to compute shortest distance between two given points on the Earth's surface (I've named it GeoLib). For now, I have implemented five methods for computing the geographical distance, namely, the Haversine formula, Spherical Law of Cosines, Equirectangular approximation,
Ellipsoidal approximation, and the Tunnel distance. These methods assume a variety of models of the Earth's surface e.g. flat, spherical, and ellipsoidal.
For testing the above methods, I have used the Boost Test library. All of the test cases are passing. In addition to this, I have added Doxygen documentation to my code. My next step is to introduce the LinestringPointInterpolation method.
I have added you as a collaborator to my repository on GitHub (https://github.com/adl1995/boost-geometry-proposal/invitations). If you have any suggestions / feedback regarding the current implementation or want me to add additional benchmarks for the distance methods, please let me know.
Thank you,
Adeel
________________________________
From: Vissarion Fisikopoulos <fisikop_at_[hidden]>
Sent: Friday, February 16, 2018 2:03 PM
To: boost_at_[hidden]
Cc: Adeel Ahmad
Subject: Re: [boost] [gsoc18] Seeking a mentor for Boost.Geometry project 2: Nearly antipodal points distance accuracy improvement
Hello,
> Congratulations to the Boost community on being selected for GSoC 2018! I recently read through the project ideas listed on the Wiki page, I'm particularly interested in "Boost.Geometry Project 2: Nearly antipodal points distance accuracy improvement".
thank you for your interest in that project.
> I wanted to know if I should implement a particular algorithm for finding the shortest distance between two points? There are many options, such as the Haversine formula, Equirectangular approximation, and Rhumb line. Or, would any of these be fine?
The test description was intentionally left vague to encourage the
student to search for available methods and choose the one that
computes the shortest path. Implement few of them and provide some
simple comparison is also encouraged. There is not a single best
solution to the test but we would like to check your methodology to
attach the problem.
> Additionally, could the mentor please let me know on how to share the code? I was thinking of creating a GitHub repository, this would make it easier for the mentor to provide feedback. Would that be alright?
This is already answered to this list ;) But once more: github is fine.
Best,
Vissarion.
> I was also a participant in GSoC 2017 with the OpenAstronomy organization. My project was to design and create a Python client for Hierarchical Progressive Surveys. It enabled users to view astronomical figures in an interactive environment. More details of the software package can be found here (https://hips.readthedocs.io/en/latest/getting_started.html).
>
>
> I look forward to your reply.
>
> Kind regards,
>
> Adeel
>
>
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk