/[lmdze]/trunk/libf/phylmd/FCTTRE.f90
ViewVC logotype

Contents of /trunk/libf/phylmd/FCTTRE.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3 - (show annotations)
Wed Feb 27 13:16:39 2008 UTC (16 years, 2 months ago) by guez
File size: 2600 byte(s)
Initial import
1 module FCTTRE
2
3 ! From phylmd/FCTTRE.inc,v 1.2 2004/06/22 11:45:32
4
5 ! This COMDECK includes the Thermodynamical functions for the cy39
6 ! ECMWF Physics package.
7 ! Consistent with YOMCST Basic physics constants, assuming the
8 ! partial pressure of water vapour is given by a first order
9 ! Taylor expansion of Qs(T) w.r.t. to Temperature, using constants
10 ! in YOETHF
11
12 implicit none
13
14 LOGICAL, PARAMETER:: thermcep=.TRUE.
15
16 contains
17
18 REAL function FOEEW ( PTARG,PDELARG )
19
20 use yoethf, only: R3LES, R3IES, R4LES, R4IES
21 use YOMCST, only: rtt
22
23 REAL, intent(in):: PTARG, PDELARG
24
25 !-----------------------
26
27 FOEEW = EXP ((R3LES*(1.-PDELARG)+R3IES*PDELARG) * (PTARG-RTT) &
28 / (PTARG-(R4LES*(1.-PDELARG)+R4IES*PDELARG)) )
29
30 end function FOEEW
31
32 !******************************************
33
34 REAL function FOEDE(PTARG,PDELARG,P5ARG,PQSARG,PCOARG)
35
36 use yoethf, only: R4LES, R4IES
37
38 REAL, intent(in):: PTARG, PDELARG
39 real, intent(in):: P5ARG, PQSARG, PCOARG
40
41 !-----------------------
42
43 FOEDE = PQSARG*PCOARG*P5ARG / (PTARG-(R4LES*(1.-PDELARG)+R4IES*PDELARG))**2
44
45 end function FOEDE
46
47 !******************************************
48
49 REAL function qsats(ptarg)
50
51 REAL, intent(in):: PTARG
52
53 !-----------------------
54
55 qsats = 100.0 * 0.622 * 10.0 &
56 ** (2.07023 - 0.00320991 * ptarg &
57 - 2484.896 / ptarg + 3.56654 * LOG10(ptarg))
58
59 end function qsats
60
61 !******************************************
62
63 REAL function qsatl(ptarg)
64
65 REAL, intent(in):: PTARG
66
67 !-----------------------
68
69 qsatl = 100.0 * 0.622 * 10.0 &
70 ** (23.8319 - 2948.964 / ptarg &
71 - 5.028 * LOG10(ptarg) &
72 - 29810.16 * EXP( - 0.0699382 * ptarg) &
73 + 25.21935 * EXP( - 2999.924 / ptarg))
74
75 end function qsatl
76
77 !******************************************
78
79 REAL function dqsats(ptarg,pqsarg)
80
81 use YOMCST, only: RLVTT, rcpd
82
83 REAL, intent(in):: PTARG, pqsarg
84
85 !-----------------------
86
87 dqsats = RLVTT/RCPD*pqsarg * (3.56654/ptarg &
88 +2484.896*LOG(10.)/ptarg**2 &
89 -0.00320991*LOG(10.))
90
91 end function dqsats
92
93 !******************************************
94
95 REAL function dqsatl(ptarg,pqsarg)
96
97 use YOMCST, only: RLVTT, rcpd
98
99 REAL, intent(in):: PTARG, pqsarg
100
101 !-----------------------
102
103 dqsatl = RLVTT/RCPD*pqsarg*LOG(10.)* &
104 (2948.964/ptarg**2-5.028/LOG(10.)/ptarg &
105 +25.21935*2999.924/ptarg**2*EXP(-2999.924/ptarg) &
106 +29810.16*0.0699382*EXP(-0.0699382*ptarg))
107
108 end function dqsatl
109
110 end module FCTTRE

  ViewVC Help
Powered by ViewVC 1.1.21