Astro  0.0.0
A C++ library for space dynamics
Loading...
Searching...
No Matches
Astro::OrbitalElements::Quaternionic Struct Reference

Structure container for the quaternionic orbital elements. More...

#include <OrbitalElements.hh>

Public Member Functions

 Quaternionic ()
 Quaternionic (Quaternion const &t_q)
 Quaternionic (Real const t_q_1, Real const t_q_2, Real const t_q_3, Real const t_q_4)
 Quaternionic (Quaternionic const &)=default
 Quaternionic (Quaternionic &&)=default
Quaternionicoperator= (const Quaternionic &)=default
Quaternionicoperator= (Quaternionic &&)=default
Vector4 vector () const
Rotation rotation () const
std::string info () const
void info (std::ostream &os)
void reset ()
bool sanity_check () const

Public Attributes

Quaternion q {NAN_VEC4}

Detailed Description

Structure container for the quaternionic orbital elements, which is made of four quaternionic parameters: \( [q¹, q², q³, q⁴] \).

Note
For more information on the quaternionic orbital elements, refer to "Alternative Set of Nonsingular Quaternionic Orbital Elements", by J. Roa and J. Kasdin, Journal of Guidance, Control, and Dynamics, Vol. 40, No. 11, November 2017.

Constructor & Destructor Documentation

◆ Quaternionic() [1/5]

Astro::OrbitalElements::Quaternionic::Quaternionic ( )
inline

Structure constructor for the quaternionic orbital elements.

◆ Quaternionic() [2/5]

Astro::OrbitalElements::Quaternionic::Quaternionic ( Quaternion const & t_q)
inline

Structure constructor for the quaternionic orbital elements.

Parameters
[in]t_qThe quaternionic orbital elements.

◆ Quaternionic() [3/5]

Astro::OrbitalElements::Quaternionic::Quaternionic ( Real const t_q_1,
Real const t_q_2,
Real const t_q_3,
Real const t_q_4 )
inline

Structure constructor for the quaternionic orbital elements.

Parameters
[in]t_q_1The first quaternionic orbit parameter.
[in]t_q_2The second quaternionic orbit parameter.
[in]t_q_3The third quaternionic orbit parameter.
[in]t_q_4The fourth quaternionic orbit parameter.

◆ Quaternionic() [4/5]

Astro::OrbitalElements::Quaternionic::Quaternionic ( Quaternionic const & )
default

Enable the default quaternionic orbital elements copy constructor.

◆ Quaternionic() [5/5]

Astro::OrbitalElements::Quaternionic::Quaternionic ( Quaternionic && )
default

Enable the default quaternionic orbital elements move constructor.

Member Function Documentation

◆ info() [1/2]

std::string Astro::OrbitalElements::Quaternionic::info ( ) const
inline

Print the quaternionic orbital elements on a string.

Returns
The quaternionic orbital elements string.

◆ info() [2/2]

void Astro::OrbitalElements::Quaternionic::info ( std::ostream & os)
inline

Print the quaternionic orbital elements on a stream.

Parameters
[in,out]osOutput stream.

◆ operator=() [1/2]

Quaternionic & Astro::OrbitalElements::Quaternionic::operator= ( const Quaternionic & )
default

Enable the default quaternionic orbital elements assignment operator.

◆ operator=() [2/2]

Quaternionic & Astro::OrbitalElements::Quaternionic::operator= ( Quaternionic && )
default

Enable the default quaternionic orbital elements move assignment operator.

◆ reset()

void Astro::OrbitalElements::Quaternionic::reset ( )
inline

Reset the quaternionic orbital elements to NaN.

◆ rotation()

Rotation Astro::OrbitalElements::Quaternionic::rotation ( ) const
inline

Get the rotation matrix from the quaternionic orbital elements.

Returns
The rotation matrix.

◆ sanity_check()

bool Astro::OrbitalElements::Quaternionic::sanity_check ( ) const
inline

Check if the quaternionic orbital elements are valid, i.e., finite.

Returns
True if the quaternionic orbital elements are valid, false otherwise.

◆ vector()

Vector4 Astro::OrbitalElements::Quaternionic::vector ( ) const
inline

Get the quaternionic orbital elements as a vector.

Returns
The vector of quaternionic orbital elements \( [q¹, q², q³, q⁴]^\top \).

Member Data Documentation

◆ q

Quaternion Astro::OrbitalElements::Quaternionic::q {NAN_VEC4}

Quaternionic orbital elements.


The documentation for this struct was generated from the following file: