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.
- Return
pcpfPosition: [m] Position vector in PCPF coordinates
- Parameters
pciPosition
: : [m] Position vector in PCI coordinatesJ20002Pfix
: : [-] 3x3 rotation matrix representing the rotation between PCPF and ECI frames
-
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.
- Return
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
- Parameters
pcpfPosition
: : [m] Position vector in PCPF coordinatesplanetRad
: : [m] Planetary radius, assumed to be constant (i.e., spherical)
-
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.
- Return
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
- Parameters
pciPosition
: : [m] Position vector in PCPF coordinatesJ20002Pfix
: : planet DCMplanetRad
: : [m] Planetary radius, assumed to be constant (i.e., spherical)
-
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.
- Return
pcpfPosition: [m] Final position in the planet-centered, planet-fixed frame.
- Parameters
llaPosition
: : [m] Position vector in PCPF coordinatesplanetRad
: : [m] Planetary radius, assumed to be constant (i.e., spherical)
-
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.
- Return
pciPosition: [m] Final position in the planet-centered inertial frame.
- Parameters
pcpfPosition
: : [m] Position vector in planet centered, planet fixed coordinatesJ20002Pfix
: : [-] Rotation between inertial and pcf coordinates.
-
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.
- Return
pciPosition : [m] Position in inertial coordinates.
- 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 radiusJ20002Pfix
: : rotation matrix between inertial and PCPF framesplanetRad
: : [m] Planetary radius, assumed to be constant (i.e., spherical)
-
Eigen::Matrix3d
C_PCPF2SEZ
(double lat, double longitude)¶