Python code for heave and spice decomposition of temperature and salinity using Lorenz reference density
Authors/Creators
Contributors
Supervisor:
Description
This Python code suite provides tools for the decomposition of oceanographic temperature and salinity profiles into passive and dynamic heave and spice components using the Lorenz Reference Density (LRD). The code leverages several subroutines to compute the decomposition and is designed to process temperature and salinity data in NetCDF format.
The primary functionalities are within heave_spice_decomposition.py, including:
-
compute_heave_spice: Decomposes temperature or salinity profiles into heave and spice components based on Lorenz Reference Density (LRD). It computes isopycnal mean temperature profiles, reference position, and other associated outputs from temperature and salinity data. -
process_decomposition: Processes multiple timesteps based oncompute_heave_spice, producing stacked arrays for heave, spice, reference temperature profile, and reference position. -
separate_heave: Further decomposes the heave component into passive heave and dynamic heave using time smoothing.
The subroutines are imported from the following Python scripts:
lrs_target.py: Computes target depth levels using an analytical vertical profile function.lrs_lorenz_ref_state_top_down.py: Computes the Lorenz reference state using a top-down approach.gsw_gammat_empirical_CT_fast.py: Computes thermodynamic neutral density from a time-dependent LRD profile.lrs_iso_mean_sr_ct.py: Computes isopycnal mean temperature profiles from a time-dependent LRD profile.
Dependencies:
numpynetCDF4gsw(TEOS-10 toolbox)