Class astrea::astro::Geodetic¶
ClassList > astrea > astro > Geodetic
Class representing a Geodetic state vector in astrodynamics.More...
#include <Geodetic.hpp>
Public Functions¶
| Type | Name |
|---|---|
| Geodetic (Unitless scale=0.0 *astrea::detail::unitless) Default constructor for Geodetic . |
|
| Geodetic (const Angle & latitude, const Angle & longitude, const Distance & altitude) Constructor for Geodetic with latitude, longitude, and altitude. |
|
| Geodetic (const RadiusVector< frames::earth::icrf > & r, const Date & date, const CelestialBody * parent) Constructor for Geodetic with position and velocity vectors. |
|
| Geodetic (const RadiusVector< frames::earth::earth_fixed > & r, const CelestialBody * parent) Constructor for Geodetic with position and velocity vectors. |
|
| Geodetic (const T & elements, const AstrodynamicsSystem & sys, const Date & date) Constructor for Geodetic from orbital elements. |
|
| Geodetic (const Geodetic & other) Copy constructor for Geodetic . |
|
| Geodetic (Geodetic && other) noexcept Move constructor for Geodetic . |
|
| const Distance & | get_altitude () const Get the altitude of the Geodetic state vector. |
| const Angle & | get_latitude () const Get the latitude of the Geodetic state vector. |
| const Angle & | get_longitude () const Get the longitude of the Geodetic state vector. |
| RadiusVector< frames::earth::earth_fixed > | get_position (const CelestialBody * parent) const Converts the Geodetic state vector to a RadiusVector<frames::earth::earth_fixed>. |
| RadiusVector< frames::earth::icrf > | get_position (const Date & date, const CelestialBody * parent) const Converts the Geodetic state vector to a RadiusVector<frames::earth::icrf>. |
| Geodetic | interpolate (const Time & thisTime, const Time & otherTime, const Geodetic & other, const Time & targetTime) const Interpolates between two Geodetic states at a given time. |
| bool | operator!= (const Geodetic & other) const Compares two Geodetic objects for inequality. |
| Geodetic | operator* (const Unitless & multiplier) const Multiplies the Geodetic state vector by a scalar. |
| Geodetic & | operator*= (const Unitless & multiplier) Multiplies the Geodetic state vector by a scalar. |
| Geodetic | operator+ (const Geodetic & other) const Adds two Geodetic objects. |
| Geodetic & | operator+= (const Geodetic & other) Adds another Geodetic object to the current one. |
| Geodetic | operator- (const Geodetic & other) const Subtracts another Geodetic object from the current one. |
| Geodetic & | operator-= (const Geodetic & other) Subtracts another Geodetic object from the current one. |
| std::vector< Unitless > | operator/ (const Geodetic & other) const Divides the Geodetic state vector by anotherGeodetic object. |
| Geodetic | operator/ (const Unitless & divisor) const Divides the Geodetic state vector by a scalar. |
| Geodetic & | operator/= (const Unitless & divisor) Divides the Geodetic state vector by a scalar. |
| Geodetic & | operator= (Geodetic && other) noexcept Move assignment operator for Geodetic . |
| Geodetic & | operator= (const Geodetic & other) Copy assignment operator for Geodetic . |
| bool | operator== (const Geodetic & other) const Compares two Geodetic objects for equality. |
| ~Geodetic () = default Default destructor for Geodetic . |
Detailed Description¶
This class encapsulates the position and velocity of a vehicle in Geodetic coordinates.
Public Functions Documentation¶
function Geodetic [1/7]¶
Default constructor for Geodetic .
Initializes the Geodetic state vector with zero values.
function Geodetic [2/7]¶
Constructor for Geodetic with latitude, longitude, and altitude.
inline astrea::astro::Geodetic::Geodetic (
const Angle & latitude,
const Angle & longitude,
const Distance & altitude
)
Parameters:
latitudeGeodetic latitudelongitudeLongitudealtitudeAltitude
function Geodetic [3/7]¶
Constructor for Geodetic with position and velocity vectors.
astrea::astro::Geodetic::Geodetic (
const RadiusVector < frames::earth::icrf > & r,
const Date & date,
const CelestialBody * parent
)
Parameters:
rRadius vector in ECI (position)
function Geodetic [4/7]¶
Constructor for Geodetic with position and velocity vectors.
astrea::astro::Geodetic::Geodetic (
const RadiusVector < frames::earth::earth_fixed > & r,
const CelestialBody * parent
)
Parameters:
rRadius vector in ECEF (position)
function Geodetic [5/7]¶
Constructor for Geodetic from orbital elements.
template<IsOrbitalElements T>
inline astrea::astro::Geodetic::Geodetic (
const T & elements,
const AstrodynamicsSystem & sys,
const Date & date
)
Parameters:
elementsOrbital elementssysAstrodynamics system containing celestial body data
function Geodetic [6/7]¶
Copy constructor for Geodetic .
Parameters:
otherAnother Geodetic object
function Geodetic [7/7]¶
Move constructor for Geodetic .
Parameters:
otherAnother Geodetic object
function get_altitude¶
Get the altitude of the Geodetic state vector.
Returns:
const Distance& Reference to the altitude component of the Geodetic state vector.
function get_latitude¶
Get the latitude of the Geodetic state vector.
Returns:
const Angle& Reference to the latitude component of the Geodetic state vector.
function get_longitude¶
Get the longitude of the Geodetic state vector.
Returns:
const Angle& Reference to the longitude component of the Geodetic state vector.
function get_position [1/2]¶
Converts the Geodetic state vector to a RadiusVector<frames::earth::earth_fixed>.
RadiusVector < frames::earth::earth_fixed > astrea::astro::Geodetic::get_position (
const CelestialBody * parent
) const
Returns:
RadiusVector<frames::earth::earth_fixed> The position vector in Geodetic coordinates.
function get_position [2/2]¶
Converts the Geodetic state vector to a RadiusVector<frames::earth::icrf>.
RadiusVector < frames::earth::icrf > astrea::astro::Geodetic::get_position (
const Date & date,
const CelestialBody * parent
) const
Returns:
RadiusVector<frames::earth::icrf> The position vector in Geodetic coordinates.
function interpolate¶
Interpolates between two Geodetic states at a given time.
Geodetic astrea::astro::Geodetic::interpolate (
const Time & thisTime,
const Time & otherTime,
const Geodetic & other,
const Time & targetTime
) const
Parameters:
thisTimeTime of the current stateotherTimeTime of the other stateotherOther Geodetic state to interpolate withsysAstrodynamics system containing celestial body datatargetTimeTarget time for interpolation
Returns:
Geodetic Interpolated Geodetic state at the target time.
function operator!=¶
Compares two Geodetic objects for inequality.
Parameters:
otherAnother Geodetic object
Returns:
true if the two Geodetic objects are not equal
Returns:
false if the two Geodetic objects are equal
function operator*¶
Multiplies the Geodetic state vector by a scalar.
Parameters:
multiplierScalar value to multiply with
Returns:
Resultant Geodetic after multiplication.
function operator*=¶
Multiplies the Geodetic state vector by a scalar.
Parameters:
multiplierScalar value to multiply with
Returns:
Reference to the current Geodetic object after multiplication.
function operator+¶
Adds two Geodetic objects.
Parameters:
otherAnother Geodetic object
Returns:
Resultant Geodetic sum.
function operator+=¶
Adds another Geodetic object to the current one.
Parameters:
otherAnother Geodetic object
Returns:
Reference to the current Geodetic object after addition.
function operator-¶
Subtracts another Geodetic object from the current one.
Parameters:
otherAnother Geodetic object
Returns:
Resultant Geodetic difference.
function operator-=¶
Subtracts another Geodetic object from the current one.
Parameters:
otherAnother Geodetic object
Returns:
Reference to the current Geodetic object after subtraction.
function operator/¶
Divides the Geodetic state vector by anotherGeodetic object.
Parameters:
otherAnother Geodetic object
Returns:
Resultant vector of unitless values after division.
function operator/¶
Divides the Geodetic state vector by a scalar.
Parameters:
divisorScalar value to divide with
Returns:
Resultant Geodetic after division.
function operator/=¶
Divides the Geodetic state vector by a scalar.
Parameters:
divisorScalar value to divide with
Returns:
Reference to the current Geodetic object after division.
function operator=¶
Move assignment operator for Geodetic .
Parameters:
otherAnother Geodetic object
Returns:
Geodetic& Reference to the current object
function operator=¶
Copy assignment operator for Geodetic .
Parameters:
otherAnother Geodetic object
Returns:
Geodetic& Reference to the current object
function operator==¶
Compares two Geodetic objects for equality.
Parameters:
otherAnother Geodetic object
Returns:
true if the two Geodetic objects are equal
Returns:
false if the two Geodetic objects are not equal
function ~Geodetic¶
Default destructor for Geodetic .
The documentation for this class was generated from the following file astrea/astro/astro/state/angular_elements/instances/Geodetic.hpp