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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement hyperbolic anomaly conversion functions #275

Juanlu001 opened this Issue Oct 26, 2017 · 2 comments


2 participants

Juanlu001 commented Oct 26, 2017

馃悶 Problem

We should have hyperbolic anomaly conversion functions, in the same way we have elliptic anomaly functions here:

Right now, using nu_to_M for eccentricity values higher than one gives NaN:

In [2]: from poliastro.twobody.angles import *

In [3]: from astropy import units as u

In [4]: nu_to_M(0.1 * u.rad, 1.5 *
/home/juanlu/.miniconda36/envs/py36/lib/python3.6/site-packages/astropy/units/ RuntimeWarning: invalid value encountered in sqrt
  *arrays, **kwargs)
Out[4]: <Quantity nan rad>

馃幆 Goal

This is important since Orbit.sample uses the angle conversion functions to derive appropriate time values for propagation, and right now it doesn't work for hyperbolic orbits.

馃挕 Possible solutions

We should implement these equations:


(from Curtis "Orbital Mechanics for Engineering Students")

See also:

However, there are limitations in the true anomaly values, so care should be taken:

screenshot-2017-10-26 fundamentals of astrodynamics and applications

(from Vallado "Fundamentals of Astrodynamics")

Finding references for validation proved to be a bit difficult, so I posted a question on Physics.SE here

馃搵 Steps to solve the problem

  • Comment below about what you've started working on.
  • Add, commit, push your changes
  • Submit a pull request and add this in comments - Addresses #<put issue number here>
  • Ask for a review in comments section of pull request
  • Celebrate your contribution to this project 馃帀

@Juanlu001 Juanlu001 added this to the 0.8 milestone Oct 26, 2017


This comment has been minimized.


Juanlu001 commented Oct 26, 2017

I'm labeling this as a bug to fix in 0.8.


This comment has been minimized.


anhiga commented Oct 27, 2017

Closed by #276

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