sea_level_equation

  • Solves the sea level equation with the option of including polar motion feedback

Calling Sequence

from gravity_toolkit.associated_legendre import plm_holmes
from gravity_toolkit.sea_level_equation import sea_level_equation
PLM, dPLM = plm_holmes(LMAX, np.cos(th))
Ylms = sea_level_equation(loadClm, loadSlm, lon, lat, land_function,
    LMAX=LMAX, PLM=PLM, LOVE=(hl,kl,ll), ITERATIONS=6, POLAR=True)

Source code

gravity_toolkit.sea_level_equation(loadClm, loadSlm, glon, glat, land_function, LMAX=0, LOVE=None, BODY_TIDE_LOVE=0, FLUID_LOVE=0, DENSITY=1.0, POLAR=True, ITERATIONS=6, PLM=None, FILL_VALUE=0, ASTYPE=<class 'numpy.longdouble'>, SCALE=1e-280, **kwargs)[source]

Solves the sea level equation with the option of including polar motion feedback [20, 35, 45]

Uses a Clenshaw summation to calculate the spherical harmonic summation [26, 70]

Parameters:
loadClm: np.ndarray

Cosine spherical harmonic coefficients

loadSlm: np.ndarray

Sine spherical harmonic coefficients

glon: np.ndarray

longitude of the land-sea mask

glat: np.ndarray

latitude of the land-sea mask

land_function: np.ndarray

land-sea mask with land=1

LMAX: int, default 0

Maximum spherical harmonic degree

LOVE: tuple or NoneType, default None

Load Love numbers up to degree LMAX (hl, kl, ll)

BODY_TIDE_LOVE: int, default 0

Treatment of the body tide Love number

  • 0: [77] and [78] values from PREM

  • 1: [19] values from Gutenberg-Bullen oceanic mantle model

  • list or tuple: custom values (k2b,h2b)

FLUID_LOVE: int, default 0

Treatment of the fluid Love number

  • 0: [22] fluid love number

  • 1: [47] secular love number

  • 2: [47] fluid love number

  • 3: [37] fluid love number

  • list or tuple: custom value (klf)

DENSITY: float, default 1.0

Density of water [g/cm3]

POLAR: bool, default True

Include polar feedback

ITERATIONS: int, default 6

Maximum number of iterations for the solver

PLM: np.ndarray or NoneType, default None

Legendre polynomials

FILL_VALUE: float, default 0

Invalid value used over land points

ASTYPE: np.dtype, default np.longdouble

Floating point precision for calculating Clenshaw summation

SCALE: float, default 1e-280

Scaling factor to prevent underflow in Clenshaw summation

Returns:
sea_level: np.ndarray

spatial field calculated using sea level solver