13 |
|
|
14 |
implicit none |
implicit none |
15 |
|
|
|
LOGICAL, PARAMETER:: thermcep = .TRUE. |
|
|
|
|
16 |
contains |
contains |
17 |
|
|
18 |
elemental REAL function FOEEW(T, ICE) |
elemental REAL function FOEEW(T, ICE) |
46 |
|
|
47 |
end function FOEDE |
end function FOEDE |
48 |
|
|
|
!****************************************** |
|
|
|
|
|
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 |
|
|
|
|
49 |
end module FCTTRE |
end module FCTTRE |