polaris.tasks.ocean.seamount.init_utils.compute_target_density

polaris.tasks.ocean.seamount.init_utils.compute_target_density(config: PolarisConfigParser, z_mid: DataArray) → DataArray[source]

Compute the target Beckmann and Haidvogel stratification, either the linear profile of their eqn 15 or the exponential profile of their eqn 16.

These are the two stratifications that are prescribed as a density. The linear_pressure stratification prescribes temperature directly and so has no target density to compute; see compute_tracers_linear_in_pressure().

The profile is a potential density referenced to the surface. Under the linear equation of state, which has no pressure dependence, that is the same thing as the density; under a nonlinear equation of state it is not, and reading it as in-situ density would be unphysical – TEOS-10 in-situ density at 5000 m is near 1050 kg m-3 from compression alone, well outside the range this profile spans.

Parameters:
Returns:

xarray.DataArray – The target potential density (kg m-3) at the layer midpoints.