mom_eos_unesco module reference

The equation of state using the Jackett and McDougall fits to the UNESCO EOS.

More…

Data Types

unesco_eos

The EOS_base implementation of the UNESCO equation of state.

Functions/Subroutines

density_elem_unesco()

In situ density as fit by Jackett and McDougall, 1995 [kg m-3].

density_anomaly_elem_unesco()

In situ density anomaly as fit by Jackett and McDougall, 1995 [kg m-3].

spec_vol_elem_unesco()

In situ specific volume as fit by Jackett and McDougall, 1995 [m3 kg-1].

spec_vol_anomaly_elem_unesco()

In situ specific volume anomaly as fit by Jackett and McDougall, 1995 [m3 kg-1].

calculate_density_derivs_elem_unesco()

Calculate the partial derivatives of density with potential temperature and salinity using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

calculate_density_second_derivs_elem_unesco()

Calculate second derivatives of density with respect to temperature, salinity, and pressure, using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995)

calculate_specvol_derivs_elem_unesco()

Calculate the partial derivatives of specific volume with temperature and salinity using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

calculate_compress_elem_unesco()

Compute the in situ density of sea water (rho) and the compressibility (drho/dp == C_sound^-2) at the given salinity, potential temperature and pressure using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

eos_fit_range_unesco()

Return the range of temperatures, salinities and pressures for which Jackett and McDougall (1995) refit the UNESCO equation of state has been fitted to observations.

Detailed Description

The equation of state using the Jackett and McDougall fits to the UNESCO EOS.

Type Documentation

type mom_eos_unesco/unesco_eos

The EOS_base implementation of the UNESCO equation of state.

Type fields:
  • % density_elem [procedure,private] :: Implementation of the in-situ density as an elemental function [kg m-3].

  • % density_anomaly_elem [procedure,private] :: Implementation of the in-situ density anomaly as an elemental function [kg m-3].

  • % spec_vol_elem [procedure,private] :: Implementation of the in-situ specific volume as an elemental function [m3 kg-1].

  • % spec_vol_anomaly_elem [procedure,private] :: Implementation of the in-situ specific volume anomaly as an elemental function [m3 kg-1].

  • % calculate_density_derivs_elem [procedure,private] :: Implementation of the calculation of derivatives of density.

  • % calculate_density_second_derivs_elem [procedure,private] :: Implementation of the calculation of second derivatives of density.

  • % calculate_specvol_derivs_elem [procedure,private] :: Implementation of the calculation of derivatives of specific volume.

  • % calculate_compress_elem [procedure,private] :: Implementation of the calculation of compressibility.

  • % eos_fit_range [procedure,private] :: Implementation of the range query function.

Function/Subroutine Documentation

function mom_eos_unesco/density_elem_unesco(this, T, S, pressure) [elemental]

In situ density as fit by Jackett and McDougall, 1995 [kg m-3].

This is an elemental function that can be applied to any combination of scalar and array inputs.

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

function mom_eos_unesco/density_anomaly_elem_unesco(this, T, S, pressure, rho_ref) [elemental]

In situ density anomaly as fit by Jackett and McDougall, 1995 [kg m-3].

This is an elemental function that can be applied to any combination of scalar and array inputs.

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • rho_ref :: [in] A reference density [kg m-3]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

function mom_eos_unesco/spec_vol_elem_unesco(this, T, S, pressure) [elemental]

In situ specific volume as fit by Jackett and McDougall, 1995 [m3 kg-1].

This is an elemental function that can be applied to any combination of scalar and array inputs.

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

function mom_eos_unesco/spec_vol_anomaly_elem_unesco(this, T, S, pressure, spv_ref) [elemental]

In situ specific volume anomaly as fit by Jackett and McDougall, 1995 [m3 kg-1].

This is an elemental function that can be applied to any combination of scalar and array inputs.

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • spv_ref :: [in] A reference specific volume [m3 kg-1]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

subroutine mom_eos_unesco/calculate_density_derivs_elem_unesco(this, T, S, pressure, drho_dT, drho_dS)

Calculate the partial derivatives of density with potential temperature and salinity using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • drho_dt :: [out] The partial derivative of density with potential temperature [kg m-3 degC-1]

  • drho_ds :: [out] The partial derivative of density with salinity, in [kg m-3 PSU-1]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

subroutine mom_eos_unesco/calculate_density_second_derivs_elem_unesco(this, T, S, pressure, drho_ds_ds, drho_ds_dt, drho_dt_dt, drho_ds_dp, drho_dt_dp)

Calculate second derivatives of density with respect to temperature, salinity, and pressure, using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995)

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature referenced to 0 dbar [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • drho_ds_ds :: [inout] Partial derivative of beta with respect to S [kg m-3 PSU-2]

  • drho_ds_dt :: [inout] Partial derivative of beta with respect to T [kg m-3 PSU-1 degC-1]

  • drho_dt_dt :: [inout] Partial derivative of alpha with respect to T [kg m-3 degC-2]

  • drho_ds_dp :: [inout] Partial derivative of beta with respect to pressure [kg m-3 PSU-1 Pa-1] = [s2 m-2 PSU-1]

  • drho_dt_dp :: [inout] Partial derivative of alpha with respect to pressure [kg m-3 degC-1 Pa-1] = [s2 m-2 degC-1]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

subroutine mom_eos_unesco/calculate_specvol_derivs_elem_unesco(this, T, S, pressure, dSV_dT, dSV_dS)

Calculate the partial derivatives of specific volume with temperature and salinity using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • dsv_dt :: [inout] The partial derivative of specific volume with potential temperature [m3 kg-1 degC-1]

  • dsv_ds :: [inout] The partial derivative of specific volume with salinity [m3 kg-1 PSU-1]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

subroutine mom_eos_unesco/calculate_compress_elem_unesco(this, T, S, pressure, rho, drho_dp)

Compute the in situ density of sea water (rho) and the compressibility (drho/dp == C_sound^-2) at the given salinity, potential temperature and pressure using the UNESCO (1981) equation of state, as refit by Jackett and McDougall (1995).

Parameters:
  • this :: [in] This EOS

  • t :: [in] Potential temperature relative to the surface [degC]

  • s :: [in] Salinity [PSU]

  • pressure :: [in] Pressure [Pa]

  • rho :: [out] In situ density [kg m-3]

  • drho_dp :: [out] The partial derivative of density with pressure (also the inverse of the square of sound speed) [s2 m-2]

Call to:

r00 r01 r02 r03 r04 r05 r10 r11 r12 r13 r14 r20 r60 r61 r62 s000 s001 s002 s010 s011 s012 s020 s021 s022 s030 s031 s040 s100 s101 s102 s110 s111 s112 s120 s121 s122 s130 s600 s601 s610 s620

subroutine mom_eos_unesco/eos_fit_range_unesco(this, T_min, T_max, S_min, S_max, p_min, p_max)

Return the range of temperatures, salinities and pressures for which Jackett and McDougall (1995) refit the UNESCO equation of state has been fitted to observations. Care should be taken when applying this equation of state outside of its fit range.

Parameters:
  • this :: [in] This EOS

  • t_min :: [out] The minimum potential temperature over which this EoS is fitted [degC]

  • t_max :: [out] The maximum potential temperature over which this EoS is fitted [degC]

  • s_min :: [out] The minimum practical salinity over which this EoS is fitted [PSU]

  • s_max :: [out] The maximum practical salinity over which this EoS is fitted [PSU]

  • p_min :: [out] The minimum pressure over which this EoS is fitted [Pa]

  • p_max :: [out] The maximum pressure over which this EoS is fitted [Pa]