Earth Gravity Models¶
Spherical-harmonic Earth gravity (Montenbruck & Gill 2000, ยง3.2, Eq. 3.33) from the ICGEM coefficient files (Ince et al. 2019) of EGM96 (Lemoine et al. 1998), JGM-2 (Nerem et al. 1994), JGM-3 (Tapley et al. 1996) and ITU_GRACE16 (Akyilmaz et al. 2016).
gravmodel
¶
Earth gravity models available for use
For details, see: http://icgem.gfz-potsdam.de/
jgm3
class-attribute
¶
The "JGM3" gravity model (zero-tide C20).
Combining a zero-tide model with tidemodel.solid_step1 (which
includes the permanent tide) double-counts the permanent tide; use
egm96 with tides on, or tidemodel.none with this model.
jgm2
class-attribute
¶
The "JGM2" gravity model (tide-free C20, like egm96).
egm96
class-attribute
¶
The "EGM96" gravity model (tide-free C20). Default for the orbit
propagator, and the model to use with tidemodel.solid_step1.
itugrace16
class-attribute
¶
The ITU GRACE16 gravity model (zero-tide C20; see jgm3).
gravity(pos, **kwargs)
¶
Return acceleration due to Earth gravity at the input position
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
pos
|
list[float] | itrfcoord | ArrayLike[float]
|
Position as ITRF coordinate or numpy 3-vector representing ITRF position in meters |
required |
Other Parameters:
| Name | Type | Description |
|---|---|---|
model |
gravmodel
|
The gravity model to use. Default is gravmodel.egm96 |
degree |
int
|
Maximum degree of gravity model to use. Default is 6, maximum is 40 |
order |
int
|
Maximum order of gravity model to use. Default is same as degree |
Returns:
| Type | Description |
|---|---|
NDArray[float64]
|
acceleration in m/s^2 in the International Terrestrial Reference Frame (ITRF) |
Notes
- For details of calculation, see Chapter 3.2 of: "Satellite Orbits: Models, Methods, Applications", O. Montenbruck and E. Gill, Springer, 2000 (https://doi.org/10.1007/978-3-642-58351-3).
gravity_and_partials(pos, **kwargs)
¶
Gravity and partial derivatives of gravity with respect to Cartesian coordinates
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
pos
|
itrfcoord | ArrayLike[float]
|
Position as ITRF coordinate or numpy 3-vector representing ITRF position in meters |
required |
Other Parameters:
| Name | Type | Description |
|---|---|---|
model |
gravmodel
|
The gravity model to use. Default is gravmodel.egm96 |
degree |
int
|
Maximum degree of gravity model to use. Default is 6, maximum is 40 |
order |
int
|
Maximum order of gravity model to use. Default is same as degree |
Returns:
| Type | Description |
|---|---|
tuple[NDArray[float64], NDArray[float64]]
|
acceleration in m/s^2 and partial derivative of acceleration with respect to ITRF Cartesian coordinate in m/s^2 / m |
For details of calculation, see Chapter 3.2 of: "Satellite Orbits: Models, Methods, Applications", O. Montenbruck and E. Gill, Springer, 2000 (https://doi.org/10.1007/978-3-642-58351-3).