LMDZ
fcttre.h
Go to the documentation of this file.
1 !*
2 ! ------------------------------------------------------------------
3 #ifdef DOC
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 ! Two sets of functions are available. In the first set only the
12 ! cases water or ice are distinguished by temperature. This set
13 ! consists of the functions FOEDELTA,FOEEW,FOEDE and FOELH.
14 ! The second set considers, besides the two cases water and ice
15 ! also a mix of both for the temperature range RTICE < T < RTWAT.
16 ! This set contains FOEALFA,FOEEWM,FOEDEM,FOELDCPM and FOELHM.
17 
18 ! Depending on the consideration of mixed phases either the first
19 ! set (e.g. surface, post-processing) or the second set
20 ! (e.g. clouds, condensation, convection) should be used.
21 
22 ! ------------------------------------------------------------------
23 ! *****************************************************************
24 
25 ! NO CONSIDERATION OF MIXED PHASES
26 
27 ! *****************************************************************
28 #endif
30 REAL_B :: PTARE
31 FOEDELTA (PTARE) = MAX (_ZERO_,SIGN(_ONE_,PTARE-RTT))
32 #ifdef DOC
33 
34 ! FOEDELTA = 1 water
35 ! FOEDELTA = 0 ice
36 
37 ! THERMODYNAMICAL FUNCTIONS .
38 
39 ! Pressure of water vapour at saturation
40 ! INPUT : PTARE = TEMPERATURE
41 #endif
43 FOEEW ( PTARE ) = R2ES*EXP (&
44  &(R3LES*FOEDELTA(PTARE)+R3IES*(_ONE_-FOEDELTA(PTARE)))*(PTARE-RTT)&
45 &/ (PTARE-(R4LES*FOEDELTA(PTARE)+R4IES*(_ONE_-FOEDELTA(PTARE)))))
46 
47 FOEDE ( PTARE ) = &
48  &(FOEDELTA(PTARE)*R5ALVCP+(_ONE_-FOEDELTA(PTARE))*R5ALSCP)&
49 &/ (PTARE-(R4LES*FOEDELTA(PTARE)+R4IES*(_ONE_-FOEDELTA(PTARE))))**2
50 
51 FOEDESU ( PTARE ) = &
52  &(FOEDELTA(PTARE)*R5LES+(_ONE_-FOEDELTA(PTARE))*R5IES)&
53 &/ (PTARE-(R4LES*FOEDELTA(PTARE)+R4IES*(_ONE_-FOEDELTA(PTARE))))**2
54 
55 FOELH ( PTARE ) =&
56  &FOEDELTA(PTARE)*RLVTT + (_ONE_-FOEDELTA(PTARE))*RLSTT
57 
58 FOELDCP ( PTARE ) = &
59  &FOEDELTA(PTARE)*RALVDCP + (_ONE_-FOEDELTA(PTARE))*RALSDCP
60 #ifdef DOC
61 
62 ! *****************************************************************
63 
64 ! CONSIDERATION OF MIXED PHASES
65 
66 ! *****************************************************************
67 
68 ! FOEALFA is calculated to distinguish the three cases:
69 
70 ! FOEALFA=1 water phase
71 ! FOEALFA=0 ice phase
72 ! 0 < FOEALFA < 1 mixed phase
73 
74 ! INPUT : PTARE = TEMPERATURE
75 #endif
76 REAL_B :: FOEALFA
77 FOEALFA (PTARE) = MIN(_ONE_,((MAX(RTICE,MIN(RTWAT,PTARE))-RTICE)&
78  &/(RTWAT-RTICE))**2)
79 
80 #ifdef DOC
81 
82 ! Pressure of water vapour at saturation
83 ! INPUT : PTARE = TEMPERATURE
84 #endif
86 FOEEWM ( PTARE ) = R2ES *&
87  &(FOEALFA(PTARE)*EXP(R3LES*(PTARE-RTT)/(PTARE-R4LES))+&
88  &(_ONE_-FOEALFA(PTARE))*EXP(R3IES*(PTARE-RTT)/(PTARE-R4IES)))
89 
90 FOEDEM ( PTARE ) = FOEALFA(PTARE)*R5ALVCP*(_ONE_/(PTARE-R4LES)**2)+&
91  &(_ONE_-FOEALFA(PTARE))*R5ALSCP*(_ONE_/(PTARE-R4IES)**2)
92 
93 FOELDCPM ( PTARE ) = FOEALFA(PTARE)*RALVDCP+&
94  &(_ONE_-FOEALFA(PTARE))*RALSDCP
95 
96 FOELHM ( PTARE ) =&
97  &FOEALFA(PTARE)*RLVTT+(_ONE_-FOEALFA(PTARE))*RLSTT
98 #ifdef DOC
99 ! ------------------------------------------------------------------
100 ! *****************************************************************
101 
102 ! CONSIDERATION OF DIFFERENT MIXED PHASE FOR CONV
103 
104 ! *****************************************************************
105 
106 ! FOEALFCU is calculated to distinguish the three cases:
107 
108 ! FOEALFCU=1 water phase
109 ! FOEALFCU=0 ice phase
110 ! 0 < FOEALFCU < 1 mixed phase
111 
112 ! INPUT : PTARE = TEMPERATURE
113 #endif
114 REAL_B :: FOEALFCU
115 FOEALFCU (PTARE) = MIN(_ONE_,((MAX(RTICECU,MIN(RTWAT,PTARE))&
116 &-RTICECU)/(RTWAT-RTICECU))**2)
117 
118 #ifdef DOC
119 
120 ! Pressure of water vapour at saturation
121 ! INPUT : PTARE = TEMPERATURE
122 #endif
123 REAL_B :: FOEEWMCU,FOEDEMCU,FOELDCPMCU,FOELHMCU
124 FOEEWMCU ( PTARE ) = R2ES *&
125  &(FOEALFCU(PTARE)*EXP(R3LES*(PTARE-RTT)/(PTARE-R4LES))+&
126  &(_ONE_-FOEALFCU(PTARE))*EXP(R3IES*(PTARE-RTT)/(PTARE-R4IES)))
127 
128 FOEDEMCU ( PTARE )=FOEALFCU(PTARE)*R5ALVCP*(_ONE_/(PTARE-R4LES)**2)+&
129  &(_ONE_-FOEALFCU(PTARE))*R5ALSCP*(_ONE_/(PTARE-R4IES)**2)
130 
131 FOELDCPMCU ( PTARE ) = FOEALFCU(PTARE)*RALVDCP+&
132  &(_ONE_-FOEALFCU(PTARE))*RALSDCP
133 
134 FOELHMCU ( PTARE ) =&
135  &FOEALFCU(PTARE)*RLVTT+(_ONE_-FOEALFCU(PTARE))*RLSTT
136 ! ------------------------------------------------------------------
137 #ifdef DOC
138 
139 ! Pressure of water vapour at saturation
140 ! This one is for the WMO definition of saturation, i.e. always
141 ! with respect to water.
142 #endif
143 REAL_B :: FOEEWMO
144 FOEEWMO( PTARE ) = R2ES*EXP(R3LES*(PTARE-RTT)/(PTARE-R4LES))
#define _ONE_
Definition: tsmbkind.h:56
!$Id mode_top_bound COMMON comconstr r
Definition: comconst.h:7
!$Id mode_top_bound COMMON comconstr g
Definition: comconst.h:7
!$Id R5LES
Definition: YOETHF.h:17
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOELDCPM
Definition: fcttre.h:85
!$Id assuming the!partial pressure of water vapour is given by a first order!Taylor expansion of Qs(T) w.r.t.to Temperature
!$Id R5IES REAL RHOH2O REAL RTBERCU REAL RTICE
Definition: YOETHF.h:17
!$Id R5IES REAL RHOH2O REAL RALVDCP
Definition: YOETHF.h:17
!$Id klon initialisation mois suivants day_rain itap ENDIF!Calcul fin de nday_rain calcul nday_rain itap DO i
Definition: calcul_divers.h:24
real, dimension(:,:), pointer, save w
!$Id R5IES REAL RHOH2O REAL RALSDCP
Definition: YOETHF.h:17
!$Id vert_prof_dissip LOGICAL lstardis INTEGER niterh integer vert_prof_dissip!vertical profile of horizontal dissipation!Allowed function of pressure
Definition: comdissnew.h:13
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOELHM FOEDEMCU
Definition: fcttre.h:123
!$Id RNAVO!A1 Astronomical constants REAL ROMEGA!A1 bis Constantes concernant l orbite de la R_incl!A1 Geoide REAL R1SA!A1 Radiation!REAL RI0 REAL RSIGMA!A1 Thermodynamic gas phase REAL RCVV REAL RETV Thermodynamic solid phases REAL RCS!A1 Thermodynamic transition of phase REAL RLSTT
Definition: YOMCST.h:11
!$Id R5IES REAL RHOH2O REAL RTWAT
Definition: YOETHF.h:17
!$Id R3LES
Definition: YOETHF.h:17
!$Id R4LES
Definition: YOETHF.h:17
!$Id R5IES REAL RHOH2O REAL R5ALVCP
Definition: YOETHF.h:17
real clouds
Definition: VARdCP.F90:17
*REAL_B::FOEDELTA REAL_B::PTARE FOEDESU
Definition: fcttre.h:42
!$Id R4IES
Definition: YOETHF.h:17
!$Id R3IES
Definition: YOETHF.h:17
!$Id R5IES REAL RHOH2O REAL R5ALSCP
Definition: YOETHF.h:17
!$Id R5IES REAL RHOH2O REAL RTBERCU REAL RKOOP2 COMMON YOETHF R5IES
Definition: YOETHF.h:17
!$Id R5IES REAL RHOH2O REAL RTBERCU REAL RTICECU
Definition: YOETHF.h:17
subroutine convection(KLON, KLEV, KIDIA, KFDIA, KBDIA, KTDIA, PDTCONV, ODEEP, OSHAL, OREFRESH_ALL, ODOWN, KICE, OSETTADJ, PTADJD, PTADJS, KENSM, PPABS, PZZ, PDXDY, PT, PRV, PRC, PRI, PU, PV, PW, KCOUNT, PTTEN, PRVTEN, PRCTEN, PRITEN, PPRTEN, PPRSTEN, PUMF, PDMF, PPRLFLX, PPRSFLX, PCAPE, KCLTOP, KCLBAS, OCHTRANS, KCH1, PCH1, PCH1TEN)
Definition: CVAmnh.f90:12
!$Id RNAVO!A1 Astronomical constants REAL ROMEGA!A1 bis Constantes concernant l orbite de la R_incl!A1 Geoide REAL R1SA!A1 Radiation!REAL RI0 REAL RSIGMA!A1 Thermodynamic gas phase REAL RCVV REAL RETV Thermodynamic solid phases REAL RCS!A1 Thermodynamic transition of phase REAL RLVTT
Definition: YOMCST.h:11
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOEEW(PTARE)
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOELHM FOEEWM(PTARE)
type(fft_type), pointer t
Definition: tpm_fft.F90:14
real(kind=8), dimension(8, 3), parameter at
!$Id R5IES REAL RHOH2O REAL RTBERCU REAL RKOOP2 COMMON YOETHF R2ES
Definition: YOETHF.h:17
!$Id RNAVO!A1 Astronomical constants REAL ROMEGA!A1 bis Constantes concernant l orbite de la R_incl!A1 Geoide REAL R1SA!A1 Radiation!REAL RI0 REAL RSIGMA!A1 Thermodynamic gas phase REAL RCVV REAL RETV Thermodynamic solid phases REAL RCS!A1 Thermodynamic transition of phase REAL RTT
Definition: YOMCST.h:11
*REAL_B::FOEDELTA REAL_B::PTARE FOEDELTA(PTARE)
*REAL_B::FOEDELTA REAL_B::PTARE FOEDE
Definition: fcttre.h:42
*REAL_B::FOEDELTA REAL_B::PTARE FOELH
Definition: fcttre.h:42
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOELHM FOELDCPMCU
Definition: fcttre.h:123
#define _ZERO_
Definition: tsmbkind.h:54
*REAL_B::FOEDELTA REAL_B::PTARE FOELDCP FOEDEM
Definition: fcttre.h:85
INTERFACE subroutine only
Definition: suhlph.intfb.h:3