Normal Gravity Field (pygeoid.reduction.normal)¶
Gravity field and geometry of the level ellipsoid.
-
class
pygeoid.reduction.normal.
Centrifugal
(omega=<Quantity 7.292115e-05 rad / s>)[source]¶ Centrifugal potential and its derivatives.
Parameters: omega (float) – Angular rotation rate of the body, in rad/s. Default value is the angular speed of Earth’s rotation 7292115e-11 rad/s -
potential
(lat: Unit("deg"), radius: Unit("m")) -> Unit("m2 / s2")[source]¶ Return centrifugal potential.
Parameters: - lat (Quantity) – Spherical (geocentric) latitude.
- radius (Quantity) – Radius.
-
r_derivative
(lat: Unit("deg"), radius: Unit("m"))[source]¶ Return radial derivative.
Parameters: - lat (Quantity) – Spherical (geocentric) latitude.
- radius (Quantity) – Radius.
-
-
class
pygeoid.reduction.normal.
LevelEllipsoid
(ellps=None, **kwargs)[source]¶ Class represents the gravity field of the level ellipsoid.
This class intialize Ellipsoid class from pygeoid.coordinates.ellipsoid, so all geometrical methods and parameters are available too.
Parameters: ellps ({'GRS80', 'WGS84', 'PZ90', 'GSK2011'}, optional) – Ellipsoid name. Default is ‘GRS80’. -
j2
¶ Return dynamic form factor J2.
-
gm
¶ Return geocentric gravitational constant.
-
omega
¶ Return angular velocity, in radians.
-
m
¶ Auxiliary constant.
Notes
\[m = \frac{{\omega}^2 a^2 b}{GM}.\]
-
surface_potential
¶ Return normal gravity potential on the ellipsoid.
Value of the normal gravity potential on the ellipsoid, or on the equipotential surface U(x, y, z) = U_0.
-
gravitational_potential
(rlat: Unit("deg"), u_ax: Unit("m")) -> Unit("m2 / s2")[source]¶ Return normal gravitational potential V.
Calculate normal gravitational potential from the rigorous formula.
Parameters: - rlat (Quantity) – Reduced latitude.
- u_ax (Quantity) – Polar axis of the ellipsoid passing through the point.
Returns: Normal gravitational potential.
Return type: Quantity
-
gravity_potential
(rlat: Unit("deg"), u_ax: Unit("m")) -> Unit("m2 / s2")[source]¶ Return normal gravity potential U.
Calculate normal gravity potential from the rigorous formula.
Parameters: - rlat (Quantity) – Reduced latitude.
- u_ax (Quantity) – Polar axis of the ellipsoid passing through the point.
Returns: Normal gravity potential.
Return type: Quantity
-
equatorial_normal_gravity
¶ Return normal gravity at the equator.
-
polar_normal_gravity
¶ Return normal gravity at the poles.
-
mean_normal_gravity
¶ Return mean normal gravity over ellipsoid.
-
gravity_flattening
¶ Return gravity flattening.
f* = (gamma_p - gamma_e) / gamma_e
-
conventional_gravity_coeffs
()[source]¶ Return coefficients for the conventional gravity formula.
gamma_0 = gamma_e*(1 + beta*sin(lat)**2 - beta1*sin(2*lat)**2)
-
surface_normal_gravity
(lat: Unit("deg")) -> Unit("m / s2")[source]¶ Return normal gravity on the ellipsoid.
Calculate normal gravity value on the level ellipsoid by the rigorous formula of Somigliana.
Parameters: lat (Quantity) – Geodetic latitude. Returns: Normal gravity on the ellipsoid. Return type: Quantity
-
surface_vertical_normal_gravity_gradient
(lat: Unit("deg"))[source]¶ Return the vertical gravity gradient on the ellipsoid.
Vertical gradient of the normal gravity at the reference ellipsoid.
Parameters: lat (Quantity) – Geodetic latitude.
-
height_correction
(lat: Unit("deg"), height: Unit("m")) -> Unit("m / s2")[source]¶ Return height correction.
Second-order approximation formula is used instead of -0.3086*height.
Parameters: - lat (Quantity) – Geodetic latitude.
- height (Quantity) – Geodetic height.
-
normal_gravity
(rlat: Unit("deg"), u_ax: Unit("m")) -> Unit("m / s2")[source]¶ Return normal gravity.
Calculate normal gravity value at any arbitrary point by the rigorous closed formula.
Parameters: - rlat (Quantity) – Reduced latitude.
- u_ax (Quantity) – Polar axis of the ellipsoid passing through the point.
Returns: Normal gravity.
Return type: Quantity
-
j2n
(n: int) -> Unit(dimensionless)[source]¶ Return even zonal coefficients J with a degree of 2*n.
If n = 0, the function will return -1. If n = 1, the function will return J2 (dynamic form factor). If n = 2, the function will return J4. If n = 3, the function will return J6. If n = 4, the function will return J8.
Parameters: n (int) – Degree of the J coefficient.
-
gravitational_potential_sph
(lat: Unit("deg"), radius: Unit("m"), n_max: int = 4) -> Unit("m2 / s2")[source]¶ Return normal gravitational potential V.
Calculate normal gravitational potential from spherical approximation.
Parameters: - lat (Quantity) – Spherical (geocentric) latitude.
- radius (Quantity) – Radius, in metres.
- n_max (int) – Maximum degree.
-
gravity_potential_sph
(lat: Unit("deg"), radius: Unit("m"), n_max: int = 4) -> Unit("m2 / s2")[source]¶ Return normal gravitational potential V.
Calculate normal gravitational potential from spherical approximation.
Parameters: - lat (Quantity) – Spherical (geocentric) latitude.
- radius (Quantity) – Radius, in metres.
- n_max (int) – Maximum degree.
-
-
pygeoid.reduction.normal.
surface_normal_gravity_clairaut
(lat: Unit("deg"), model: str = None) -> Unit("m / s2")[source]¶ Return normal gravity from the first Clairaut formula.
Parameters: - lat (Quantity) – Geodetic latitude.
- model ({'helmert', 'helmert_14mGal', '1930', '1930_14mGal', '1967', '1980'}) – Which gravity formula will be used.