# mom_isopycnal_slopes module reference¶

Calculations of isoneutral slopes and stratification.

More…

## Functions/Subroutines¶

 calc_isoneutral_slopes() Calculate isopycnal slopes, and optionally return other stratification dependent functions such as N^2 and dz*S^2*g-prime used, or calculable from factors used, during the calculation. vert_fill_ts() Returns tracer arrays (nominally T and S) with massless layers filled with sensible values, by diffusing vertically with a small but constant diffusivity.

## Detailed Description¶

Calculations of isoneutral slopes and stratification.

## Function/Subroutine Documentation¶

subroutine mom_isopycnal_slopes/calc_isoneutral_slopes(G, GV, US, h, e, tv, dt_kappa_smooth, slope_x, slope_y, N2_u, N2_v, dzu, dzv, dzSxN, dzSyN, halo, OBC)

Calculate isopycnal slopes, and optionally return other stratification dependent functions such as N^2 and dz*S^2*g-prime used, or calculable from factors used, during the calculation.

Parameters
• g :: [in] The ocean’s grid structure

• gv :: [in] The ocean’s vertical grid structure

• us :: [in] A dimensional unit scaling type

• h :: [in] Layer thicknesses [H ~> m or kg m-2]

• e :: [in] Interface heights [Z ~> m] or units given by 1/eta_to_m)

• tv :: [in] A structure pointing to various thermodynamic variables

• dt_kappa_smooth :: [in] A smoothing vertical diffusivity times a smoothing timescale [Z2 ~> m2].

• slope_x :: [inout] Isopycnal slope in i-dir [Z L-1 ~> nondim]

• slope_y :: [inout] Isopycnal slope in j-dir [Z L-1 ~> nondim]

• n2_u :: [inout] Brunt-Vaisala frequency squared at

• n2_v :: [inout] Brunt-Vaisala frequency squared at

• dzu :: [inout] Z-thickness at u-points [Z ~> m]

• dzv :: [inout] Z-thickness at v-points [Z ~> m]

• dzsxn :: [inout] Z-thickness times zonal slope contribution to

• dzsyn :: [inout] Z-thickness times meridional slope contrib. to

• halo :: [in] Halo width over which to compute

• obc :: Open boundaries control structure.

Call to

vert_fill_ts

Called from

mom_lateral_mixing_coeffs::calc_slope_functions

subroutine mom_isopycnal_slopes/vert_fill_ts(h, T_in, S_in, kappa_dt, T_f, S_f, G, GV, halo_here, larger_h_denom)

Returns tracer arrays (nominally T and S) with massless layers filled with sensible values, by diffusing vertically with a small but constant diffusivity.

Parameters
• g :: [in] The ocean’s grid structure

• gv :: [in] The ocean’s vertical grid structure

• h :: [in] Layer thicknesses [H ~> m or kg m-2]

• t_in :: [in] Input temperature [degC]

• s_in :: [in] Input salinity [ppt]

• kappa_dt :: [in] A vertical diffusivity to use for smoothing times a smoothing timescale [Z2 ~> m2].

• t_f :: [out] Filled temperature [degC]

• s_f :: [out] Filled salinity [ppt]

• halo_here :: [in] Number of halo points to work on, 0 by default

• larger_h_denom :: [in] Present and true, add a large enough minimal thickness in the denominator of the flux calculations so that the fluxes are never so large as eliminate the transmission of information across groups of massless layers.

Called from