MOM6
mom_tfreeze::calculate_tfreeze_millero Interface Reference

Detailed Description

Compute the freezing point potential temperature [degC] from salinity [PSU] and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar).

Definition at line 27 of file MOM_TFreeze.F90.

Private functions

subroutine calculate_tfreeze_millero_scalar (S, pres, T_Fr)
 This subroutine computes the freezing point potential temperature [degC] from salinity [ppt], and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar). More...
 
subroutine calculate_tfreeze_millero_array (S, pres, T_Fr, start, npts)
 This subroutine computes the freezing point potential temperature [degC] from salinity [ppt], and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar). More...
 

Functions and subroutines

◆ calculate_tfreeze_millero_array()

subroutine mom_tfreeze::calculate_tfreeze_millero::calculate_tfreeze_millero_array ( real, dimension(:), intent(in)  S,
real, dimension(:), intent(in)  pres,
real, dimension(:), intent(out)  T_Fr,
integer, intent(in)  start,
integer, intent(in)  npts 
)
private

This subroutine computes the freezing point potential temperature [degC] from salinity [ppt], and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar).

Parameters
[in]sSalinity [PSU].
[in]presPressure [Pa].
[out]t_frFreezing point potential temperature [degC].
[in]startThe starting point in the arrays.
[in]nptsThe number of values to calculate.

Definition at line 106 of file MOM_TFreeze.F90.

106  real, dimension(:), intent(in) :: S !< Salinity [PSU].
107  real, dimension(:), intent(in) :: pres !< Pressure [Pa].
108  real, dimension(:), intent(out) :: T_Fr !< Freezing point potential temperature [degC].
109  integer, intent(in) :: start !< The starting point in the arrays.
110  integer, intent(in) :: npts !< The number of values to calculate.
111 
112  ! Local variables
113  real, parameter :: cS1 = -0.0575, cs3_2 = 1.710523e-3, cs2 = -2.154996e-4
114  real, parameter :: dTFr_dp = -7.75e-8
115  integer :: j
116 
117  do j=start,start+npts-1
118  t_fr(j) = s(j)*(cs1 + (cs3_2 * sqrt(max(s(j),0.0)) + cs2 * s(j))) + &
119  dtfr_dp*pres(j)
120  enddo
121 

◆ calculate_tfreeze_millero_scalar()

subroutine mom_tfreeze::calculate_tfreeze_millero::calculate_tfreeze_millero_scalar ( real, intent(in)  S,
real, intent(in)  pres,
real, intent(out)  T_Fr 
)
private

This subroutine computes the freezing point potential temperature [degC] from salinity [ppt], and pressure [Pa] using the expression from Millero (1978) (and in appendix A of Gill 1982), but with the of the pressure dependence changed from 7.53e-8 to 7.75e-8 to make this an expression for potential temperature (not in situ temperature), using a value that is correct at the freezing point at 35 PSU and 5e6 Pa (500 dbar).

Parameters
[in]sSalinity in PSU.
[in]presPressure [Pa].
[out]t_frFreezing point potential temperature [degC].

Definition at line 87 of file MOM_TFreeze.F90.

87  real, intent(in) :: S !< Salinity in PSU.
88  real, intent(in) :: pres !< Pressure [Pa].
89  real, intent(out) :: T_Fr !< Freezing point potential temperature [degC].
90 
91  ! Local variables
92  real, parameter :: cS1 = -0.0575, cs3_2 = 1.710523e-3, cs2 = -2.154996e-4
93  real, parameter :: dTFr_dp = -7.75e-8
94 
95  t_fr = s*(cs1 + (cs3_2 * sqrt(max(s,0.0)) + cs2 * s)) + dtfr_dp*pres
96 

The documentation for this interface was generated from the following file: