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)
- 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
- FLUID_LOVE: int, default 0
Treatment of the fluid Love number
- 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