astro.classical_2_state_p#

hohmannpy.astro.classical_2_state_p(sl_rectum, eccentricity, raan, argp, inclination, true_anomaly, grav_param=398600441800000.0)#

Parabolic version of classical_2_state() which takes in the semi-latus rectum instead of the semi-major axis.

For a parabolic orbit the semi-major axis is infinite. As a result computing the semi-latus rectum (and hence the orbital radius) from these is impossible and instead to define a parabolic orbit the semi-latus rectum must be defined directly. Note that for parabolic orbits only this is equivalent to the radius of periapsis.

Parameters:
  • sl_rectum (float) – Semi-latus rectum.

  • eccentricity (float) – Eccentricity.

  • raan (float) – Right ascension (longitude) of the ascending node.

  • argp (float) – Argument of periapsis.

  • inclination (float) – Inclination.

  • true_anomaly (float) – True anomaly.

  • grav_param (float) – Gravitational parameter of the central body (defaults to that of the Earth in \(\text{m}^3/\text{s}^2\)).

Returns:

  • position (np.ndarray) – Position of the satellite in planet-centered inertial coordinates.

  • velocity (np.ndarray) – Velocity of the satellite in planet-centered inertial coordinates.

See also

classical_2_state()

Standard version of this function which use the semi-major axis instead of the semi-latus rectum.

Notes

The semi-latus rectum \(p\) is computed from the eccentricity \(e\) and semi-major axis \(a\) via

\[p = a (1 - e^2)\]

For a parabolic orbit this results in the indeterminate form \(p = \infty (0)\) from which the semi-latus rectum can not be recovered.