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.
lat_derivative(lat: Unit("deg"), radius: Unit("m"))[source]

Return latitude derivative.

Parameters:
  • lat (Quantity) – Spherical (geocentric) latitude.
  • radius (Quantity) – Radius.
gradient(lat: Unit("deg"), radius: Unit("deg")) -> Unit("m / s2")[source]

Return centrifugal force.

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.