Coverage for src/flexfrac1d/lib/disprel.py: 100%
10 statements
« prev ^ index » next coverage.py v7.4.1, created at 2024-06-28 17:20 +0200
« prev ^ index » next coverage.py v7.4.1, created at 2024-06-28 17:20 +0200
1import numpy as np
3from ..model.model import Ice, Ocean
6def free_surface(wavenumber, depth):
7 return wavenumber * np.tanh(wavenumber * depth)
10def elas_mass_surface(
11 wavenumbers: np.ndarray, ice: Ice, ocean: Ocean, gravity: float
12) -> np.ndarray:
13 l4 = ice.flex_rigidity / (ocean.density * gravity)
14 draft = ice.density / ocean.density * ice.thickness
15 dud = ocean.depth - draft
16 k_tanh_kdud = wavenumbers * np.tanh(wavenumbers * dud)
18 return (l4 * wavenumbers**4 + 1) / (1 + draft * k_tanh_kdud) * k_tanh_kdud