Class NEDGravityEstimator
java.lang.Object
com.irurueta.navigation.inertial.estimators.NEDGravityEstimator
Calculates acceleration due to gravity resolved about north, east
and down axes of a NED frame.
This implementation is based on the equations defined in "Principles of GNSS, Inertial, and Multisensor
Integrated Navigation Systems, Second Edition" and on the companion software available at:
https://github.com/ymjdz/MATLAB-Codes/blob/master/Gravity_NED.m
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final double
Earth eccentricity as defined on the WGS84 ellipsoid.static final double
The equatorial radius of WGS84 ellipsoid (6378137 m) defining Earth's shape.static final double
The flattening of WGS84 ellipsoid (1 / 298.257223563).static final double
WGS84 Earth gravitational constant expressed in m^3 * s^-2static final double
The polar radius of WGS84 ellipsoid (6356752.31425 m) defining Earth's shape.static final double
Earth rotation rate expressed in radians per second (rad/s). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static double
convertAngle
(com.irurueta.units.Angle angle) Converts angle to radians.private static double
convertDistance
(com.irurueta.units.Distance distance) Converts distance to meters.void
estimate
(double latitude, double height, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.void
estimate
(com.irurueta.navigation.frames.NEDFrame frame, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.void
estimate
(com.irurueta.navigation.frames.NEDPosition position, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.void
estimate
(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.estimateAndReturnNew
(double latitude, double height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.estimateAndReturnNew
(com.irurueta.navigation.frames.NEDFrame frame) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.estimateAndReturnNew
(com.irurueta.navigation.frames.NEDPosition position) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.estimateAndReturnNew
(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static void
estimateGravity
(double latitude, double height, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static void
estimateGravity
(com.irurueta.navigation.frames.NEDFrame frame, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static void
estimateGravity
(com.irurueta.navigation.frames.NEDPosition position, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static void
estimateGravity
(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height, NEDGravity result) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static NEDGravity
estimateGravityAndReturnNew
(double latitude, double height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static NEDGravity
estimateGravityAndReturnNew
(com.irurueta.navigation.frames.NEDFrame frame) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static NEDGravity
estimateGravityAndReturnNew
(com.irurueta.navigation.frames.NEDPosition position) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.static NEDGravity
estimateGravityAndReturnNew
(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.
-
Field Details
-
EARTH_EQUATORIAL_RADIUS_WGS84
public static final double EARTH_EQUATORIAL_RADIUS_WGS84The equatorial radius of WGS84 ellipsoid (6378137 m) defining Earth's shape.- See Also:
-
EARTH_POLAR_RADIUS_WGS84
public static final double EARTH_POLAR_RADIUS_WGS84The polar radius of WGS84 ellipsoid (6356752.31425 m) defining Earth's shape.- See Also:
-
EARTH_ECCENTRICITY
public static final double EARTH_ECCENTRICITYEarth eccentricity as defined on the WGS84 ellipsoid.- See Also:
-
EARTH_FLATTENING_WGS84
public static final double EARTH_FLATTENING_WGS84The flattening of WGS84 ellipsoid (1 / 298.257223563).- See Also:
-
EARTH_GRAVITATIONAL_CONSTANT
public static final double EARTH_GRAVITATIONAL_CONSTANTWGS84 Earth gravitational constant expressed in m^3 * s^-2- See Also:
-
EARTH_ROTATION_RATE
public static final double EARTH_ROTATION_RATEEarth rotation rate expressed in radians per second (rad/s).- See Also:
-
-
Constructor Details
-
NEDGravityEstimator
public NEDGravityEstimator()
-
-
Method Details
-
estimateAndReturnNew
Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.- Parameters:
latitude
- latitude expressed in radians (rad).height
- height expressed in meters (m).- Returns:
- a new gravity instance containing estimated acceleration due to gravity.
-
estimateAndReturnNew
public NEDGravity estimateAndReturnNew(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.- Parameters:
latitude
- latitude.height
- height.- Returns:
- a new gravity instance containing estimated acceleration due to gravity.
-
estimateGravityAndReturnNew
Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.- Parameters:
latitude
- latitude expressed in radians (rad).height
- height expressed in meters (m).- Returns:
- a new gravity instance containing estimated acceleration due to gravity.
-
estimateGravityAndReturnNew
public static NEDGravity estimateGravityAndReturnNew(com.irurueta.units.Angle latitude, com.irurueta.units.Distance height) Estimates acceleration due to gravity resolved about NED for a given position expressed in NED coordinates.- Parameters:
latitude
- latitude.height
- height.- Returns:
- a new gravity instance containing estimated acceleration due to gravity.
-
convertAngle
private static double convertAngle(com.irurueta.units.Angle angle) Converts angle to radians.- Parameters:
angle
- angle to be converted.- Returns:
- converted angle expressed in radians.
-
convertDistance
private static double convertDistance(com.irurueta.units.Distance distance) Converts distance to meters.- Parameters:
distance
- distance to be converted.- Returns:
- converted distance expressed in meters.