astrodynx.twobody.nmax_by_periapsis#
- astrodynx.twobody.nmax_by_periapsis(rp_min=0.97, r1=1.0, r2=1.0, tof=3.141592653589793, mu=1)[source]#
Returns the maximum number of revolutions that can occur between two points in an orbit, given the minimum periapsis radius.
- Parameters:
- Return type:
- Returns:
The maximum number of revolutions that can occur between the two points.
Notes
The maximum number of revolutions is calculated using the formula:
\[ N_{max} = \left\lfloor \frac{T}{2\pi} \sqrt{\frac{\mu}{a_{min}^3}} \right\rfloor \]where \(N_{max}\) is the maximum number of revolutions, \(T\) is the time of flight, \(\mu\) is the gravitational parameter, and \(a_{min}\) is the minimum semimajor axis:\[ a_{min} = \frac{1}{2} \left( \max(r_1, r_2) + r_{p_{min}} \right) \]where \(r_1\) and \(r_2\) are the radii at the two points, and \(r_{p_{min}}\) is the minimum periapsis radius.References
Battin, 1999, pp.184.
Examples
A simple example:
>>> import jax.numpy as jnp >>> import astrodynx as adx >>> rp_min = 0.97 >>> r1 = 1.0 >>> r2 = 1.0 >>> tof = jnp.pi >>> mu = 1.0 >>> adx.twobody.nmax_by_periapsis(rp_min, r1, r2, tof, mu) Array(0., dtype=float32, weak_type=True)