mom_eos_teos10 module reference

The equation of state using the TEOS10 expressions.

More…

Functions/Subroutines

calculate_density_scalar_teos10()

This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]), and pressure [Pa].

calculate_density_array_teos10()

This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]), and pressure [Pa].

calculate_spec_vol_scalar_teos10()

This subroutine computes the in situ specific volume of sea water (specvol in [m3 kg-1]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]) and pressure [Pa], using the TEOS10 equation of state.

calculate_spec_vol_array_teos10()

This subroutine computes the in situ specific volume of sea water (specvol in [m3 kg-1]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]) and pressure [Pa], using the TEOS10 equation of state.

calculate_density_derivs_array_teos10()

For a given thermodynamic state, calculate the derivatives of density with conservative temperature and absolute salinity, using the TEOS10 expressions.

calculate_density_derivs_scalar_teos10()

For a given thermodynamic state, calculate the derivatives of density with conservative temperature and absolute salinity, using the TEOS10 expressions.

calculate_specvol_derivs_teos10()

For a given thermodynamic state, calculate the derivatives of specific volume with conservative temperature and absolute salinity, using the TEOS10 expressions.

calculate_density_second_derivs_scalar_teos10()

Calculate the 5 second derivatives of the equation of state for scalar inputs.

calculate_density_second_derivs_array_teos10()

Calculate the 5 second derivatives of the equation of state for scalar inputs.

calculate_compress_teos10()

This subroutine computes the in situ density of sea water (rho in [kg m-3]) and the compressibility (drho/dp = C_sound^-2) (drho_dp [s2 m-2]) from absolute salinity (sal in g/kg), conservative temperature (T [degC]), and pressure [Pa].

Detailed Description

The equation of state using the TEOS10 expressions.

Function/Subroutine Documentation

subroutine mom_eos_teos10/calculate_density_scalar_teos10(T, S, pressure, rho, rho_ref)

This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]), and pressure [Pa]. It uses the expression from the TEOS10 website.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1].

  • pressure :: [in] pressure [Pa].

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

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

Call to

calculate_density_array_teos10

subroutine mom_eos_teos10/calculate_density_array_teos10(T, S, pressure, rho, start, npts, rho_ref)

This subroutine computes the in situ density of sea water (rho in [kg m-3]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]), and pressure [Pa]. It uses the expression from the TEOS10 website.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1]

  • pressure :: [in] pressure [Pa].

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

  • start :: [in] the starting point in the arrays.

  • npts :: [in] the number of values to calculate.

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

Call to

pa2db

Called from

calculate_density_scalar_teos10

subroutine mom_eos_teos10/calculate_spec_vol_scalar_teos10(T, S, pressure, specvol, spv_ref)

This subroutine computes the in situ specific volume of sea water (specvol in [m3 kg-1]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]) and pressure [Pa], using the TEOS10 equation of state. If spv_ref is present, specvol is an anomaly from spv_ref.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1]

  • pressure :: [in] pressure [Pa].

  • specvol :: [out] in situ specific volume [m3 kg-1].

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

Call to

calculate_spec_vol_array_teos10

subroutine mom_eos_teos10/calculate_spec_vol_array_teos10(T, S, pressure, specvol, start, npts, spv_ref)

This subroutine computes the in situ specific volume of sea water (specvol in [m3 kg-1]) from absolute salinity (S [g kg-1]), conservative temperature (T [degC]) and pressure [Pa], using the TEOS10 equation of state. If spv_ref is present, specvol is an anomaly from spv_ref.

Parameters
  • t :: [in] Conservative temperature relative to the surface [degC].

  • s :: [in] salinity [g kg-1].

  • pressure :: [in] pressure [Pa].

  • specvol :: [out] in situ specific volume [m3 kg-1].

  • start :: [in] the starting point in the arrays.

  • npts :: [in] the number of values to calculate.

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

Call to

pa2db

Called from

calculate_spec_vol_scalar_teos10

subroutine mom_eos_teos10/calculate_density_derivs_array_teos10(T, S, pressure, drho_dT, drho_dS, start, npts)

For a given thermodynamic state, calculate the derivatives of density with conservative temperature and absolute salinity, using the TEOS10 expressions.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1].

  • pressure :: [in] pressure [Pa].

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

  • drho_ds :: [out] The partial derivative of density with absolute salinity, [kg m-3 (g/kg)-1].

  • start :: [in] The starting point in the arrays.

  • npts :: [in] The number of values to calculate.

Call to

pa2db

subroutine mom_eos_teos10/calculate_density_derivs_scalar_teos10(T, S, pressure, drho_dT, drho_dS)

For a given thermodynamic state, calculate the derivatives of density with conservative temperature and absolute salinity, using the TEOS10 expressions.

Parameters
  • t :: [in] Conservative temperature [degC]

  • s :: [in] Absolute Salinity [g kg-1]

  • pressure :: [in] pressure [Pa].

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

  • drho_ds :: [out] The partial derivative of density with absolute salinity, [kg m-3 (g/kg)-1].

Call to

pa2db

subroutine mom_eos_teos10/calculate_specvol_derivs_teos10(T, S, pressure, dSV_dT, dSV_dS, start, npts)

For a given thermodynamic state, calculate the derivatives of specific volume with conservative temperature and absolute salinity, using the TEOS10 expressions.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1].

  • pressure :: [in] pressure [Pa].

  • dsv_dt :: [out] The partial derivative of specific volume with conservative temperature [m3 kg-1 degC-1].

  • dsv_ds :: [out] The partial derivative of specific volume with absolute salinity [m3 kg-1 (g/kg)-1].

  • start :: [in] The starting point in the arrays.

  • npts :: [in] The number of values to calculate.

Call to

pa2db

subroutine mom_eos_teos10/calculate_density_second_derivs_scalar_teos10(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP)

Calculate the 5 second derivatives of the equation of state for scalar inputs.

Parameters
  • t :: [in] Conservative temperature [degC]

  • s :: [in] Absolute Salinity [g kg-1]

  • pressure :: [in] pressure [Pa].

  • drho_ds_ds :: [out] Partial derivative of beta with respect to S

  • drho_ds_dt :: [out] Partial derivative of beta with resepct to T

  • drho_dt_dt :: [out] Partial derivative of alpha with respect to T

  • drho_ds_dp :: [out] Partial derivative of beta with respect to pressure

  • drho_dt_dp :: [out] Partial derivative of alpha with respect to pressure

Call to

pa2db

subroutine mom_eos_teos10/calculate_density_second_derivs_array_teos10(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts)

Calculate the 5 second derivatives of the equation of state for scalar inputs.

Parameters
  • t :: [in] Conservative temperature [degC]

  • s :: [in] Absolute Salinity [g kg-1]

  • pressure :: [in] pressure [Pa].

  • drho_ds_ds :: [out] Partial derivative of beta with respect to S

  • drho_ds_dt :: [out] Partial derivative of beta with resepct to T

  • drho_dt_dt :: [out] Partial derivative of alpha with respect to T

  • drho_ds_dp :: [out] Partial derivative of beta with respect to pressure

  • drho_dt_dp :: [out] Partial derivative of alpha with respect to pressure

  • start :: [in] The starting point in the arrays.

  • npts :: [in] The number of values to calculate.

Call to

pa2db

subroutine mom_eos_teos10/calculate_compress_teos10(T, S, pressure, rho, drho_dp, start, npts)

This subroutine computes the in situ density of sea water (rho in [kg m-3]) and the compressibility (drho/dp = C_sound^-2) (drho_dp [s2 m-2]) from absolute salinity (sal in g/kg), conservative temperature (T [degC]), and pressure [Pa]. It uses the subroutines from TEOS10 website.

Parameters
  • t :: [in] Conservative temperature [degC].

  • s :: [in] Absolute salinity [g kg-1].

  • 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].

  • start :: [in] The starting point in the arrays.

  • npts :: [in] The number of values to calculate.

Call to

pa2db