geodeticConversion¶
Defines
-
_USE_MATH_DEFINES¶
Functions
-
Eigen::Vector3d PCI2PCPF(Eigen::Vector3d pciPosition, double J20002Pfix[3][3])¶
Collection of utility functions for converting in/out of planet-centric reference frames.
The geodeticConversion library contains simple transformations between inertial coordinates and planet-fixed coordinates in a general way.
No support is provided for non-spherical bodies. Transformations are scripted from Vallado.
Converts from a planet-centered inertial position (i.e., J2000 ECI) to a planet-centered, planet-fixed position given a rotation matrix.
- Parameters
pciPosition – : [m] Position vector in PCI coordinates
J20002Pfix – : [-] 3x3 rotation matrix representing the rotation between PCPF and ECI frames
- Returns
pcpfPosition: [m] Position vector in PCPF coordinates
-
Eigen::Vector3d PCPF2LLA(Eigen::Vector3d pciPosition, double planetRadius)¶
Converts from a planet-centered, planet-fixed coordinates to latitutde/longitude/altitude (LLA) coordinates given a planet radius.
- Parameters
pcpfPosition – : [m] Position vector in PCPF coordinates
planetRad – : [m] Planetary radius, assumed to be constant (i.e., spherical)
- Returns
llaPosition: Final position in latitude/longitude/altitude coordinates [0] : [rad] latitude above planetary equator [1] : [rad] longitude across planetary meridian [2] : [alt] altitude above planet radius
-
Eigen::Vector3d PCI2LLA(Eigen::Vector3d pciPosition, double J20002Pfix[3][3], double planetRad)¶
Converts from a planet-centered inertial coordinates to latitutde/longitude/altitude (LLA) coordinates given a planet radius and rotation matrix.
- Parameters
pciPosition – : [m] Position vector in PCPF coordinates
J20002Pfix – : planet DCM
planetRad – : [m] Planetary radius, assumed to be constant (i.e., spherical)
- Returns
llaPosition: Final position in latitude/longitude/altitude coordinates [0] : [rad] latitude above planetary equator [1] : [rad] longitude across planetary meridian [2] : [alt] altitude above planet radius
-
Eigen::Vector3d LLA2PCPF(Eigen::Vector3d llaPosition, double planetRad)¶
Converts from a Lat/Long/Altitude coordinates to planet-centered,planet-fixed coordinates given a planet radius.
- Parameters
llaPosition – : [m] Position vector in PCPF coordinates
planetRad – : [m] Planetary radius, assumed to be constant (i.e., spherical)
- Returns
pcpfPosition: [m] Final position in the planet-centered, planet-fixed frame.
-
Eigen::Vector3d PCPF2PCI(Eigen::Vector3d pcpfPosition, double J20002Pfix[3][3])¶
Converts from a Lat/Long/Altitude coordinates to planet-centered inertialcoordinates given a planet radius and rotation matrix.
- Parameters
pcpfPosition – : [m] Position vector in planet centered, planet fixed coordinates
J20002Pfix – : [-] Rotation between inertial and pcf coordinates.
- Returns
pciPosition: [m] Final position in the planet-centered inertial frame.
-
Eigen::Vector3d LLA2PCI(Eigen::Vector3d llaPosition, double J20002Pfix[3][3], double planetRad)¶
Converts from a planet-centered inertial coordinates to latitutde/longitude/altitude (LLA) coordinates given a planet radius and rotation matrix.
- Parameters
llaPosition – Final position in latitude/longitude/altitude coordinates [0] : [rad] latitude above planetary equator [1] : [rad] longitude across planetary meridian [2] : [alt] altitude above planet radius
J20002Pfix – : rotation matrix between inertial and PCPF frames
planetRad – : [m] Planetary radius, assumed to be constant (i.e., spherical)
- Returns
pciPosition : [m] Position in inertial coordinates.
-
Eigen::Matrix3d C_PCPF2SEZ(double lat, double longitude)¶