--- trunk/phylmd/FCTTRE.f 2014/09/17 10:08:00 109 +++ trunk/phylmd/FCTTRE.f 2019/02/06 15:58:03 324 @@ -13,8 +13,6 @@ implicit none - LOGICAL, PARAMETER:: thermcep = .TRUE. - contains elemental REAL function FOEEW(T, ICE) @@ -34,7 +32,7 @@ !****************************************** - REAL function FOEDE(T, ICE, P5ARG, QS, PCOARG) + pure REAL function FOEDE(T, ICE, P5ARG, QS, PCOARG) use yoethf_m, only: R4LES, R4IES @@ -48,62 +46,4 @@ end function FOEDE - !****************************************** - - elemental REAL function qsats(t) - - REAL, intent(in):: T - - !----------------------- - - qsats = 100. * 0.622 & - * 10.**(2.07023 - 0.00320991 * t - 2484.896 / t + 3.56654 * LOG10(t)) - - end function qsats - - !****************************************** - - elemental REAL function qsatl(t) - - REAL, intent(in):: T - - !----------------------- - - qsatl = 100. * 0.622 * 10.**(23.8319 - 2948.964 / t & - - 5.028 * LOG10(t) - 29810.16 * EXP(- 0.0699382 * t) & - + 25.21935 * EXP(- 2999.924 / t)) - - end function qsatl - - !****************************************** - - REAL function dqsats(t, qs) - - use SUPHEC_M, only: RLVTT, rcpd - - REAL, intent(in):: T, qs - - !----------------------- - - dqsats = RLVTT / RCPD * qs * (3.56654/t & - +2484.896*LOG(10.)/t**2 - 0.00320991*LOG(10.)) - - end function dqsats - - !****************************************** - - REAL function dqsatl(t, qs) - - use SUPHEC_M, only: RLVTT, rcpd - - REAL, intent(in):: T, qs - - !----------------------- - - dqsatl = RLVTT / RCPD * qs * LOG(10.) * (2948.964 / t**2 - 5.028 & - / LOG(10.) / t + 25.21935 * 2999.924 / t**2 * EXP(- 2999.924 / t) & - + 29810.16 * 0.0699382 * EXP(- 0.0699382 * t)) - - end function dqsatl - end module FCTTRE