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

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

#include <OrbitalElements.hxx>

Public Member Functions

 Cartesian ()
 
 Cartesian (Vector3 const &t_r, Vector3 const &t_v)
 
 Cartesian (Real r_x, Real r_y, Real r_z, Real v_x, Real v_y, Real v_z)
 
 Cartesian (Cartesian const &)=default
 
 Cartesian (Cartesian &&)=default
 
Cartesianoperator= (const Cartesian &)=default
 
Cartesianoperator= (Cartesian &&)=default
 
std::string info () const
 
void info (std::ostream &os)
 
void reset ()
 
bool sanity_check () const
 
Vector3 h () const
 

Public Attributes

Vector3 r {NAN_VEC3}
 
Vector3 v {NAN_VEC3}
 

Detailed Description

Structure container for the cartesian orbital elements, which are:

  • the position vector \( \mathbf{r} \) (UA),
  • the velocity vector \( \mathbf{v} \) (UA/day).
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.

Constructor & Destructor Documentation

◆ Cartesian() [1/5]

Astro::OrbitalElements::Cartesian::Cartesian ( )
inline

Structure constructor for Cartesian orbital elements.

◆ Cartesian() [2/5]

Astro::OrbitalElements::Cartesian::Cartesian ( Vector3 const & t_r,
Vector3 const & t_v )
inline

Structure constructor for Cartesian orbital elements.

Parameters
[in]t_rPosition vector \( \mathbf{r} \).
[in]t_vVelocity vector \( \mathbf{v} \).

◆ Cartesian() [3/5]

Astro::OrbitalElements::Cartesian::Cartesian ( Real r_x,
Real r_y,
Real r_z,
Real v_x,
Real v_y,
Real v_z )
inline

Structure constructor for Cartesian orbital elements.

Parameters
[in]r_xPosition vector \( x \)-axis component.
[in]r_yPosition vector \( y \)-axis component.
[in]r_zPosition vector \( z \)-axis component.
[in]v_xVelocity vector \( x \)-axis component.
[in]v_yVelocity vector \( y \)-axis component.
[in]v_zVelocity vector \( z \)-axis component.

◆ Cartesian() [4/5]

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

Enable the default Cartesian orbital elements copy constructor.

◆ Cartesian() [5/5]

Astro::OrbitalElements::Cartesian::Cartesian ( Cartesian && )
default

Enable the default Cartesian orbital elements move constructor.

Member Function Documentation

◆ h()

Vector3 Astro::OrbitalElements::Cartesian::h ( ) const
inline

Compute the orbital momentum vector \( \mathbf{h} = \mathbf{r} \times \mathbf{v} \) (UA^2/day).

Returns
The orbital momentum vector \( \mathbf{h} \).

◆ info() [1/2]

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

Print the cartesian orbital elements on a string.

Returns
The cartesian orbital elements string.

◆ info() [2/2]

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

Print the cartesian orbital elements on a stream.

Parameters
[in,out]osOutput stream.

◆ operator=() [1/2]

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

Enable the default Cartesian orbital elements move assignment operator.

◆ operator=() [2/2]

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

Enable the default Cartesian orbital elements assignment operator.

◆ reset()

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

Reset the cartesian orbital elements to NaN.

◆ sanity_check()

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

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

Member Data Documentation

◆ r

Vector3 Astro::OrbitalElements::Cartesian::r {NAN_VEC3}

Position vector \( \mathbf{r} \) (UA).

◆ v

Vector3 Astro::OrbitalElements::Cartesian::v {NAN_VEC3}

Velocity vector \( \mathbf{v} \) (UA/day).


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