Structure container for the (modified) Keplerian orbital elements.
More...
#include <OrbitalElements.hxx>
Structure container for the (modified) Keplerian orbital elements, which are:
- the semi-major axis \( a \) (UA),
- the eccentricity \( e \in [0, 1] \) (-),
- the inclination \( i \) (rad),
- the right ascension of the ascending node \( \Omega \) (rad),
- the argument of periapsis \( \omega \) (rad). Singular at \( e = 0 \), or \( 1 \), \( i = 0 \), or \( \pi \).
- Note
- For more information on orbital elements, refer to "Survey of Orbital Elements", by G. R. Hintz, Journal of Guidance, Control, and Dynamics, Vol. 31, No. 3, May-June 2008.
◆ Keplerian() [1/4]
Astro::OrbitalElements::Keplerian::Keplerian |
( |
| ) |
|
|
inline |
Structure constructor for the (modified) Keplerian orbital elements.
◆ Keplerian() [2/4]
Astro::OrbitalElements::Keplerian::Keplerian |
( |
Real | t_a, |
|
|
Real | t_e, |
|
|
Real | t_i, |
|
|
Real | t_Omega, |
|
|
Real | t_omega ) |
|
inline |
Structure constructor for the (modified) Keplerian orbital elements.
- Parameters
-
[in] | t_a | The semi-major axis \( a \). |
[in] | t_e | The eccentricity \( e \). |
[in] | t_i | The inclination \( i \). |
[in] | t_Omega | The longitude of the ascending node \( \Omega \). |
[in] | t_omega | The argument of periapsis \( \omega \). |
◆ Keplerian() [3/4]
Astro::OrbitalElements::Keplerian::Keplerian |
( |
Keplerian const & | | ) |
|
|
default |
Enable the default Keplerian orbital elements copy constructor.
◆ Keplerian() [4/4]
Astro::OrbitalElements::Keplerian::Keplerian |
( |
Keplerian && | | ) |
|
|
default |
Enable the default Keplerian orbital elements move constructor.
◆ info() [1/2]
std::string Astro::OrbitalElements::Keplerian::info |
( |
| ) |
const |
|
inline |
Print the Keplerian orbital elements on a string.
- Returns
- The Keplerian orbital elements string.
◆ info() [2/2]
void Astro::OrbitalElements::Keplerian::info |
( |
std::ostream & | os | ) |
|
|
inline |
Print the keplerian orbital elements on a stream.
- Parameters
-
◆ is_nonsingular()
Check if the keplerian orbit is singular, i.e., * \( \pi-\varepsilon_i < i < \pi+\varepsilon_i\), and \( e < 1 - \varepsilon_e\).
- Parameters
-
[in] | tol_i | Tolerance \( \varepsilon_i \) for the singularity check on the inclination. |
[in] | tol_e | Tolerance \( \varepsilon_e \) for the singularity check on the eccentricity. |
- Returns
- True if the keplerian orbit is nonsingular, false otherwise.
◆ is_singular()
Check if the keplerian orbit is singular, i.e., * \( i < \pi-\varepsilon_i \), \( i >
\pi+\varepsilon_i\), or \( e \geq 1 - \varepsilon_e\).
- Parameters
-
[in] | tol_i | Tolerance \( \varepsilon_i \) for the singularity check on the inclination. |
[in] | tol_e | Tolerance \( \varepsilon_e \) for the singularity check on the eccentricity. |
- Returns
- True if the keplerian orbit is singular, false otherwise.
◆ operator=() [1/2]
Enable the default Keplerian orbital elements assignment operator.
◆ operator=() [2/2]
Enable the default Keplerian orbital elements move assignment operator.
◆ p()
Real Astro::OrbitalElements::Keplerian::p |
( |
| ) |
const |
|
inline |
Compute the semi-latus rectum \( p = a(1 - e^2) \) (UA).
- Returns
- The semi-latus rectum \( p \).
◆ reset()
void Astro::OrbitalElements::Keplerian::reset |
( |
| ) |
|
|
inline |
◆ sanity_check()
bool Astro::OrbitalElements::Keplerian::sanity_check |
( |
| ) |
const |
|
inline |
Check if the keplerian orbital elements are valid, i.e., finite, and with \( e > 0 \), \( a > 0 \).
- Parameters
-
[in] | tol_i | Tolerance \( \varepsilon_i \) for the singularity check on the inclination. |
[in] | tol_e | Tolerance \( \varepsilon_e \) for the singularity check on the eccentricity. |
- Returns
- True if the keplerian orbital elements are valid, false otherwise.
◆ u()
Real Astro::OrbitalElements::Keplerian::u |
( |
| ) |
const |
|
inline |
Compute the argument of latitude \( u = \omega + \Omega \).
- Returns
- The argument of latitude \( u \).
Semi-major axis \( a \) (UA).
Eccentricity \( e \in [0, 1] \) (-).
Inclination \( i \) (rad).
◆ Omega
Right ascension of the ascending node \( \Omega \) (rad).
◆ omega
Argument of periapsis \( \omega \) (rad).
The documentation for this struct was generated from the following file: