New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added parabolic region approach #394

Merged
merged 4 commits into from Jun 29, 2018

Conversation

2 participants
@nikita-astronaut
Copy link
Contributor

nikita-astronaut commented Jun 27, 2018

Hello! I added parabolic region approach and tests to it. Seems like everything works.

However, in hyperbolic region, if we take their initial guess, it fails for high ecc.

So, it indeed works faster for small eccs, but for ecc like 3200, Newton can not converge with their initial guess. SO I decided not to add it, at least for now.

nikita-astronaut added some commits Jun 27, 2018

@codecov

This comment has been minimized.

Copy link

codecov bot commented Jun 27, 2018

Codecov Report

Merging #394 into master will increase coverage by 0.41%.
The diff coverage is 100%.

Impacted file tree graph

@@           Coverage Diff            @@
##           master   #394      +/-   ##
========================================
+ Coverage   83.59%    84%   +0.41%     
========================================
  Files          34     34              
  Lines        1774   1776       +2     
  Branches      143    140       -3     
========================================
+ Hits         1483   1492       +9     
+ Misses        252    248       -4     
+ Partials       39     36       -3
Impacted Files Coverage Δ
src/poliastro/twobody/propagation.py 91.57% <100%> (-0.26%) ⬇️
src/poliastro/twobody/angles.py 100% <100%> (ø) ⬆️
src/poliastro/plotting.py 86.25% <0%> (+0.48%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7f675d7...acffb84. Read the comment docs.

@Juanlu001
Copy link
Member

Juanlu001 left a comment

I added one very minor comment, but I gave a look and it looks good to me!

Note
-----
Taken from the paper <<Robust resolution of Kepler’s equation in all eccentricity regimes>>,

This comment has been minimized.

@Juanlu001

Juanlu001 Jun 27, 2018

Member

Could you change the citation style here to something more standard? For example (taken from scholar.google.com, Chicago style):

.. [1] Farnocchia, Davide, Davide Bracali Cioci, and Andrea Milani.
   "Robust resolution of Kepler’s equation in all eccentricity regimes."
   Celestial Mechanics and Dynamical Astronomy 116, no. 1 (2013): 21-34.

(as explained in https://numpydoc.readthedocs.io/en/latest/format.html#sections, section 13)

This comment has been minimized.

@Juanlu001

Juanlu001 Jun 27, 2018

Member

Also, rename Note to Notes (and adjust the -----).

@nikita-astronaut

This comment has been minimized.

Copy link
Contributor Author

nikita-astronaut commented Jun 28, 2018

Hello! Thanks for the review)

I added initial guess from the paper for hyperbolic region, but for non-high eccenricies. Weens like for ecc = 3200, their initial guess fails, but ours is robust, stable and works. But for smaller eccs, their initial guess works faster, so I added it. The threshold of 10 is chosen at random)

@Juanlu001

This comment has been minimized.

Copy link
Member

Juanlu001 commented Jun 28, 2018

Now there are some convergence failures though

@nikita-astronaut

This comment has been minimized.

Copy link
Contributor Author

nikita-astronaut commented Jun 28, 2018

With their initial guess, there are always tests not converging. The problem is with large \Delta t and ecc, cause it was not included into the paper tests. So, our initial guess, as compared to the paper, is around 1 iteration slower, but at least stable.

@Juanlu001

This comment has been minimized.

Copy link
Member

Juanlu001 commented Jun 29, 2018

I think this is good to go!

@Juanlu001 Juanlu001 merged commit 20a805b into poliastro:master Jun 29, 2018

6 checks passed

ci/circleci Your tests passed on CircleCI!
Details
codeclimate Approved by Juan Luis Cano Rodríguez.
Details
codecov/patch 100% of diff hit (target 83.59%)
Details
codecov/project 84% (+0.41%) compared to 7f675d7
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@nikita-astronaut nikita-astronaut deleted the nikita-astronaut:paper_features branch Jun 29, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment