GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: phylmd/rrtm/suphy0.F90 Lines: 276 293 94.2 %
Date: 2023-06-30 12:56:34 Branches: 9 44 20.5 %

Line Branch Exec Source
1
2
!OPTIONS XOPT(NOEVAL)
3
1
SUBROUTINE SUPHY0(KULOUT)
4
5
!**** *SUPHY0*   - Initialize common YOMPHY0 physics atmospheric
6
!                  constants
7
8
!     Purpose.
9
!     --------
10
!           Initialize YOMPHY0, the common that contains the parameters
11
!           for the atmospheric part of the physics of the model.
12
13
!**   Interface.
14
!     ----------
15
!        *CALL* *SUPHY0(KULOUT)
16
17
!        Explicit arguments :
18
!        --------------------
19
!        KULOUT : Logical unit for the output
20
21
!        Implicit arguments :
22
!        --------------------
23
!        COMMON YOMPHY0
24
25
!     Method.
26
!     -------
27
!        See documentation
28
29
!     Externals.
30
!     ----------
31
32
!     Reference.
33
!     ----------
34
!        Documentation ARPEGE
35
36
!     Author.
37
!     -------
38
!        J.-F. Geleyn .
39
40
!     Modifications.
41
!     --------------
42
!        Original : 90-9-1
43
!        Ajout de GWDAMP (J.-F. Geleyn) : 91-2-2
44
!        Modified by Michel Deque 91-04-01 (param. for convect. clouds)
45
!        Ajout de HOBST, NPCLO1/2, XNBMAX et REVGSL, remplacement de
46
!           GWDCOE par GWDSE (J.-F. Geleyn, M. Deque, L. Labbe) : 92-4-8
47
!        Ajout de VZ0CM (E. Bazile) : 92-3-27
48
!        Modified by C. Castejon and E. Gerard 92-02-28 (stat. clouds)
49
!        Modified by R. EL Khatib : 93-04-02 Set-up defaults controled by LECMWF
50
!        Modified by M. Deque : 95-03-20 (USURIC and USUPRC)
51
!        Modified by J.F. Geleyn C. Bossuet : 95-12-20 (GWDBC)
52
!        Modified by Luc Gerard: 97-02-26 (entrainement de la qte de mvt horizontale).
53
!        Modified by J.M. Piriou: 97-02-28 (schema de nebulosite ACNEBN).
54
!        Modified by J.M. Piriou: 97-04-17 (valeurs par defaut).
55
!        Modified by J.L. Ricard : seuil (SCO) sur les precip. conv.
56
!                                  modif de la turbulence residuelle
57
!        Modified by J.M. Piriou: 97-08-21 (introduce Xu-Randall cloudiness).
58
!        Modified by M. Deque   : 97-10-21 (introduce GWD lift).
59
!        Modified by M. Deque   : 98-02-21 (new mixing length profile).
60
!        Modified by V. Lorant  : 98-08-05 (new mixing length profile).
61
!        Modified by J.M. Piriou: 98-02-11 (introduce downdrafts tuning parameters).
62
!        Modified by J.M. Piriou: 98-03-10 (introduce GRCVPP)
63
!        Modified by L. Gerard  : 98-11-30 (TUDGP, TDDGP, GCOMOD)
64
!        Modified by R. EL Khatib :98-12-14 Remove LRDSPIL
65
!        Modified by J.M. Piriou: 99-01-04 (introduce GCVADS, GCVBETA)
66
!        Modified by J.M. Piriou: 99-06-18 (introduce GCVPSI, GCVALFA, USURICL AND USURICE.
67
!                                 Change default value for GDDEVA).
68
!        Modified by J.M. Piriou: 2000-08-23 (new use of the Richardson critical number (USURID)).
69
!        Modified by J.M. Piriou: 2000-08-23 (cloud core buoyancy as a fraction of an undilute plume (GCVNU)).
70
!        Modified by J.M. Piriou: 2000-10-06 (exponent USURIDE).
71
!        Modified by E. Bazile  : 2000-12-12 CYCORA's default value.
72
!        Modified by J.M. Piriou: 2001-04-05 (introduce GCVMLT).
73
!        Modified by Y. Bouteloup:2002-06-14 (introduce RCVEVAP).
74
!        Modified by F. Bouyssel: 2002-06-25 (introduce UTILGUST, RRGAMMA, RRSCALE).
75
!        Modified by J.M. Piriou: 2002-08-19 (introduce GPBLH*).
76
!        Modified by D. Banciu:   2002-12-09 (introduce GCVPSIE).
77
!        R. El Khatib : 2001-08-07 Pruning options
78
!        J.M. Piriou  : 2002-01-10 set default values to operational ones.
79
!        03-06, move rnlcurv rnegat into yomphy0 (F. Bouyssel, C. Fischer)
80
!        E. Bazile : 2004-02-24 (introduce EDK).
81
!        M.Hamrud      01-Oct-2003 CY28 Cleaning
82
!        E. Bazile : 2004-06-30 (inroduces XKLM).
83
!        R. Brozkova : 2004-11 modifs for Xue-Randall cloud. scheme
84
!        P. Marquet & F.Bouyssel : 2004-08-18 (Lopez)
85
!        F.Bouyssel : 2005-07-18 (new defaults and new parameters for Lopez)
86
!        F.Bouyssel : 2006-01-25 (new defaults for Lopez!)
87
!        F. Vana    : 2006-01-30 tunables for pTKE.
88
!        R.Brozkova : 2006-03-03 : tuning constants for mixing lengths and Charnock formulae
89
!        A.Alias    : 2006-03-10 renaming KDN in RKDN
90
!        Modified by GMGEC/EAC  : 2006-05 list of modif.
91
!                    V. Lorant  : 99-01-05 (new mixing length profile).
92
!                    M. Deque   : 00-03-21 (new entrainment rate VL  ).
93
!                    P. Marquet : 2002-11-05 TRENTRVL=0. if not ACPBLH
94
!                    P. Marquet : 2004-05-27 TFVR and TFVS for ADVPRC.
95
!                    P. Marquet : 2004-10-13 RAUTEFR for snow (ACMICRO).
96
!                    P. Marquet : 2004-10-14 RAUTSBET for snow (ACMICRO).
97
!                    A. Alias   : 2005-06-23 (param. for ACCVIMPGDY)
98
!        E. Bazile & P. Marquet : 2006-04-11 AGRE1,AGRERICR,AJBUMIN,RCOFLM
99
!                                  for LPBLE.
100
!        F.Bouyssel : 2006-10-30 RQLCV,RQICVMAX,RQICVMIN,RHEVAP
101
!        M. Bellus  : 03-Oct-2006 : ALARO-0 phasing (defaults for prognostic
102
!                                   convection, pTKE and PIL microphysics)
103
!        A.Alias     : 2006-07   FEVAPC added for ACCVIMPGY (JF Gueremy)
104
! ------------------------------------------------------------------------
105
106
USE PARKIND1  ,ONLY : JPIM     ,JPRB
107
USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
108
109
! Ce qui concerne NULNAM commente par MPL le 15.04.09
110
!USE YOMLUN   , ONLY : NULNAM
111
USE YOMCT0B  , ONLY : LECMWF
112
USE YOMSIMPHL, ONLY : LSIMPH   ,LSMOOTHD ,LSMOOTHA
113
USE YOMPHY   , ONLY : LCVCAS   ,LCVLIS   ,LCVRA    ,LMPHYS   ,LCONDWT  ,&
114
 & LPROCLD  ,LNEBCO   ,LNEBR    ,LECT     ,LNEBGR   ,LCVRAV3 ,LPIL
115
USE YOMPHY0  , ONLY : TYM      ,NPCLO1   ,NPCLO2   ,AERCS1   ,AERCS3   ,&
116
 & AERCS5   ,ALMAV    ,BEDIFV   ,ECMNP    ,EDB      ,EDC      ,&
117
 & EDD      ,EVAP     ,FONT     ,GALP     ,GCCSV    ,GCOMOD   ,&
118
 & GCVADS   ,GCVALFA  ,GCVBETA  ,GCVPSI   ,GDDEVA   ,GDDSDE   ,&
119
 & GRCVPP   ,GWDAMP   ,GWDBC    ,GWDCCO   ,GWDCD    ,GWDLT    ,&
120
 & AHCLPV   ,GWDSE    ,HOBST    ,HUCOE    ,HUCOE2   ,HUTIL    ,&
121
 & HUTIL1   ,HUTIL2   ,&
122
 & QSSC     ,QSMIN    ,QSNEBC   ,QSNEBS   ,QSSUSC   ,QSSUSS   ,&
123
 & QXRAL    ,QXRDEL   ,QXRR     ,REVGSL   ,RTCAPE   ,SCO      ,&
124
 & SENSL    ,SNNBCO   ,SPNBCO   ,SXNBCO   ,TCA      ,TCT      ,&
125
 & TCW      ,TENTR    ,TENTRX   ,TDDGP    ,TUDGP    ,TURB     ,&
126
 & TVF      ,UHDIFV   ,USDMLT   ,USUPRC   ,USURIC   ,USURID   ,&
127
 & USURIDE  ,USURICE  ,USURICL  ,VCHRNK   ,VKARMN   ,VZ0CM    ,&
128
 & XNBMAX   ,RICRLM   ,XBLM     ,XMINLM   ,XMAXLM   ,XWSALM   ,&
129
 & XWSBLM   ,GCVNU    ,GCVMLT   ,RCVEVAP  ,GPBLHK0  ,GPBLHRA  ,&
130
 & UTILGUST ,RRGAMMA  ,RRSCALE  ,GCVPSIE  ,QSUSXC   ,QSUSXS   ,&
131
 & ETACUT   ,RNEGAT   ,RNLCURV  ,QSSUSV   ,QXRHX    ,GCISMIN  ,&
132
 & GWDPROF  ,GWDVALI  ,RCIN     ,EDK      ,XKLM     ,RPHI0    ,&
133
 & RPHIR    ,QXRTGH   ,ADISE    ,ADISI    ,AECLS3   ,AECLS4   ,&
134
 & AKN      ,ALD      ,ALPHAE   ,ALPHAT   ,ECTMIN   ,UCWSTAR  ,&
135
 & UDECT    ,USHEARM  ,UPRETMIN ,UPRETMAX ,ARSCH    ,ARSCQ    ,&
136
 & ARSC1    ,ARSB2    ,ACBRPHIM ,ALMAVE   ,RICRET   ,STTBMIN  ,&
137
 & AGREKE   ,RDTFAC   ,RAUTEFS  ,RNINTR   ,RNINTS   ,RQLCR    ,&
138
 & RQICRMAX ,RQICRMIN ,RACCEF   ,RRIMEF   ,RHCRIT1  ,RHCRIT2  ,&
139
 & RETAMIN  ,TFVR     ,TFVS     ,RAUTEFR  ,RAUTSBET ,GRHCMOD  ,&
140
 & RQICRT1  ,RQICRT2  ,RQICRSN  ,RQCRNS   ,RFACNSM  ,RAGGEF   ,&
141
 & RQLCV    ,RQICVMAX ,RQICVMIN ,RHEVAP   ,&
142
 & AGRE1    ,AGRERICR ,AJBUMIN  ,RCOFLM   ,&
143
 & A0ML_AU  ,A0ML_AT  ,A0ML_BU  ,A0ML_BT  ,VZIUSTAR0,&
144
 & TENTRVL  ,TRENTRV  ,UETEPS   ,UPRECLP  ,&
145
 & ARSC2    ,ARSCT    ,AGRE2    ,AGREF    ,&
146
 & AJ1PEPS  ,AJ1MEPS  ,NAJITER  ,&
147
 & ALFX     ,TCTC     ,TVFC     ,GAMAP1   ,RKDN      ,&
148
 & VVN      ,VVX      ,FENTRT   ,HCMIN    ,FQLIC    ,FNEBC    ,&
149
 & NUPTKE   ,GAMTKE   ,RCOLL    ,RFALLL   ,TDDBU    ,&
150
 & TDDFR    ,TUDBU    ,TUDFR    ,GCVACHI  ,GCVALMX  ,GCVADMW  ,&
151
 & GCVBEE   ,GCVEEX   ,ECMNPI   ,GFRIC    ,GCVSQDN  ,GCVSQDR  ,&
152
 & GCVSQDCX ,GRRINTE  ,GRRMINA  ,GDDBETA  ,GDDEVF   ,GDDWPF   ,&
153
 & TENTRD   ,RDPHIC   ,GWBFAUT  ,RWBF1    ,RWBF2    ,RAUITN   ,&
154
 & RAUITX   ,RAUIUSTE ,RSMDNEBX ,RSMDTX   ,NSMTPA   ,NSMTPB   ,&
155
 & FEVAPC
156
157
158
IMPLICIT NONE
159
160
INTEGER(KIND=JPIM),INTENT(IN)    :: KULOUT
161
REAL(KIND=JPRB) :: ZHOOK_HANDLE
162
163
#include "abor1.intfb.h"
164
#include "posnam.intfb.h"
165
#include "surhcri.intfb.h"
166
167
#include "namphy0.h"
168
169
!     ------------------------------------------------------------------
170
171
!*       1.    Set default values.
172
!              -------------------
173
174
!        1.1 Set implicit default values
175
176
1
IF (LHOOK) CALL DR_HOOK('SUPHY0',0,ZHOOK_HANDLE)
177
1
A0ML_AU=4.5_JPRB
178
1
A0ML_AT=5.0_JPRB
179
1
A0ML_BU=3.0_JPRB
180
1
A0ML_BT=0.8_JPRB
181
1
AERCS1=0.2726_JPRB
182
1
AERCS3=-0.4239_JPRB
183
1
AERCS5=0.3595_JPRB
184
1
ALMAV=300._JPRB
185
1
BEDIFV=0.05_JPRB
186
1
ECMNP=3000._JPRB
187
1
EDB=5._JPRB
188
1
EDC=5._JPRB
189
1
EDD=5._JPRB
190
1
EDK=1.0_JPRB
191
1
ETACUT=1.0_JPRB
192
1
EVAP=4.8E+06_JPRB
193
1
FONT=2.4E+04_JPRB
194
1
GALP=0.53_JPRB
195
1
GCISMIN=6.7E-05_JPRB
196
1
GCCSV=0._JPRB
197
1
GCOMOD=1._JPRB
198
1
GCVADS=0.8_JPRB
199
1
GCVALFA=4.5E-05_JPRB
200
1
GCVBETA=0.2_JPRB
201
1
GCVMLT=0.00016_JPRB
202
1
GCVNU=2.5E-05_JPRB
203
1
GCVPSI=0.5_JPRB
204
1
GCVPSIE=0.0_JPRB
205
1
GDDEVA=0.25_JPRB
206
1
GDDSDE=0.5_JPRB
207
1
GPBLHK0=0.25_JPRB
208
1
GPBLHRA=4._JPRB
209
1
GRCVPP=1._JPRB
210
1
GWDAMP=0.6_JPRB
211
1
GWDBC=2._JPRB
212
1
GWDCCO=1._JPRB
213
1
GWDCD=6._JPRB
214
1
GWDLT=0._JPRB
215
1
GWDSE=3.5E-03_JPRB
216
1
GWDPROF=1._JPRB
217
1
GWDVALI=0._JPRB
218
1
HOBST=3._JPRB
219
1
HUCOE=2._JPRB
220
1
HUCOE2=0.4_JPRB
221
1
HUTIL=1.8_JPRB
222
1
HUTIL1=-0.6_JPRB
223
1
HUTIL2=1.1_JPRB
224
1
NPCLO1=1
225
1
NPCLO2=1
226
1
QSSC=1600._JPRB
227
1
QSMIN=1.E-4_JPRB
228
1
QSNEBC=26000._JPRB
229
1
QSNEBS=0.7_JPRB
230
1
QSSUSC=1._JPRB
231
1
QSSUSS=0.25_JPRB
232
1
QSSUSV=0._JPRB
233
1
QSUSXC=3.3E-05_JPRB
234
1
QSUSXS=3.3E-05_JPRB
235
1
RPHI0=0._JPRB
236
1
RPHIR=1750._JPRB
237
1
QXRAL=10000._JPRB
238
1
QXRDEL=0._JPRB
239
1
QXRHX=1._JPRB
240
1
QXRR=0.5_JPRB
241
1
QXRTGH=3.5_JPRB
242
1
RCIN=0._JPRB
243
1
RCVEVAP=0._JPRB
244
1
REVGSL=80._JPRB
245
1
RTCAPE=10800._JPRB
246
1
SCO=-20._JPRB
247
1
SENSL=1._JPRB
248
1
SNNBCO=0._JPRB
249
1
SPNBCO=3000._JPRB
250
1
SXNBCO=0.5_JPRB
251
1
TCA=1._JPRB
252
1
TCT=1.E-4_JPRB
253
1
TCW=8.E-4_JPRB
254
1
TENTR=2.5E-06_JPRB
255
1
TENTRX=8.E-05_JPRB
256
1
TDDGP=0.8_JPRB
257
1
TUDGP=0.8_JPRB
258
1
TURB=1._JPRB
259
1
TVF=1._JPRB
260
1
TYM(1)=0.92_JPRB
261
1
TYM(2)=0.74_JPRB
262
1
TYM(3)=16.6_JPRB
263
1
TYM(4)=10.1_JPRB
264
1
TYM(5)=0.08_JPRB
265
1
UHDIFV=8.E-04_JPRB
266
1
USDMLT=1.25E+04_JPRB
267
1
USUPRC=0.0_JPRB
268
1
USURIC=1.0_JPRB
269
1
USURID=0.035_JPRB
270
1
USURIDE=1.0_JPRB
271
1
USURICE=0.5_JPRB
272
1
USURICL=4._JPRB
273
1
UTILGUST=0.125_JPRB
274
1
VCHRNK=0.021_JPRB
275
1
VKARMN=0.4_JPRB
276
1
VZ0CM=1.5E-04_JPRB
277
1
VZIUSTAR0=0._JPRB
278
1
XNBMAX=1._JPRB
279
1
AHCLPV=1000._JPRB
280
1
RICRLM=0.5_JPRB
281
1
RRGAMMA=0.8_JPRB
282
1
RRSCALE=1.15E-4_JPRB
283
1
XBLM=6.5_JPRB
284
1
XKLM=1.0_JPRB
285
1
XMAXLM=3000._JPRB
286
1
XMINLM=500._JPRB
287
1
XWSALM=0.1_JPRB
288
1
XWSBLM=7.0_JPRB
289
1
RNEGAT = -7.E-05_JPRB
290
1
RNLCURV = 7.E+04_JPRB
291
292
!     - - - - - - - - - - - - - -
293
!     The old Convective scheme :
294
!     - - - - - - - - - - - - - -
295
1
TRENTRV=1._JPRB
296
1
TENTRVL=-1.0_JPRB
297
298

1
IF ( LCONDWT.AND.LPROCLD ) THEN
299
  RDTFAC=0.5_JPRB
300
ELSE
301
1
  RDTFAC=1.0_JPRB
302
ENDIF
303
304
!        - - - - - - - - - -
305
!        Lopez Microphysics :
306
!        - - - - - - - - - -
307
1
RAUTEFR=1.E-03_JPRB
308
1
RAUTEFS=1.E-03_JPRB
309
1
RAUTSBET=0.025_JPRB
310
1
RNINTR=8.E+06_JPRB
311
1
RNINTS=2.E+06_JPRB
312
1
RQLCR=2.E-04_JPRB
313
1
RQICRMAX=0.3E-04_JPRB
314
1
RQICRMIN=0.2E-06_JPRB
315
1
RQLCV=2.E-04_JPRB
316
1
RQICVMAX=0.3E-04_JPRB
317
1
RQICVMIN=0.2E-06_JPRB
318
1
RQICRT1=-80._JPRB
319
1
RQICRT2=30._JPRB
320
1
RQICRSN=0.5_JPRB
321
1
RQCRNS=0.03_JPRB
322
1
RACCEF=1._JPRB
323
1
RAGGEF=0.2_JPRB
324
1
RRIMEF=1._JPRB
325
1
RHEVAP=0.0_JPRB
326
1
RHCRIT1=0.5_JPRB
327
1
RHCRIT2=0.91_JPRB
328
1
RETAMIN=0.4_JPRB
329
1
RFACNSM=1.4_JPRB
330
1
TFVR=5.0_JPRB
331
1
TFVS=0.6_JPRB
332
1
GRHCMOD=0.3_JPRB
333
334
335
!--------------------------
336
! PIL MICROPHYSICS
337
!--------------------------
338
1
RDPHIC=10000._JPRB
339
1
GWBFAUT=15._JPRB
340
! two constants for ACPLUIE_PROG:
341
1
RWBF1=300._JPRB
342
1
RWBF2=4._JPRB
343
!
344
1
RAUITN=233.15_JPRB
345
1
RAUITX=263.15_JPRB
346
1
RAUIUSTE=0.025_JPRB
347
1
RSMDNEBX=0.2_JPRB
348
1
RSMDTX=1.0_JPRB
349
1
NSMTPA=2
350
1
NSMTPB=3
351
1
RCOLL=6.9E-03_JPRB
352
1
RFALLL=1.0_JPRB
353
!--------------------------
354
! Prognostic convection physical parameters
355
!--------------------------
356
1
TUDBU=0.5_JPRB
357
1
TDDBU=0.5_JPRB
358
1
TUDFR=0.0012_JPRB
359
1
TDDFR=0.0006_JPRB
360
1
GCVALMX=0.95_JPRB
361
! Pas d'activite historique: defaut tres haut,
362
! pour que KUO joue tout seul:
363
1
GCVACHI=1.E9_JPRB
364
1
GCVADMW =0
365
! Explicit entrainment:
366
1
GCVBEE=0._JPRB ! 0.2_JPRB
367
1
GCVEEX=1._JPRB
368
1
ECMNPI=3000._JPRB
369
1
GFRIC=-1.0_JPRB !1.E-3_JPRB
370
! Sqeezing:
371
1
GCVSQDN=0.01_JPRB
372
1
GCVSQDR=0.8_JPRB
373
1
GCVSQDCX=1.0_JPRB ! No squeezing
374
! PRECIPITATING AREA PARAMETERS (aplpar):
375
1
GRRINTE=2._JPRB
376
1
GRRMINA=1.E-5_JPRB
377
! DD explicit detrainment:
378
1
GDDBETA=0.2_JPRB
379
! ACMODO DD PARAMETERS:
380
1
GDDEVF=0.5_JPRB
381
1
GDDWPF=0._JPRB
382
! DD ENTRAINMENT RATE:
383
1
TENTRD=1.E-4_JPRB
384
385
!     - - - - - - - -
386
!     For TKE scheme :
387
!     - - - - - - - -
388
1
ADISE=-0.5_JPRB
389
1
ADISI=1.5_JPRB
390
1
AECLS3=3.75_JPRB
391
1
AECLS4=0.3_JPRB
392
1
AKN=0.2_JPRB
393
1
ALD=1.4_JPRB
394
1
ALPHAE=1.0_JPRB
395
1
ALPHAT=1.0_JPRB
396
1
ECTMIN=1.E-10_JPRB
397
398
1
UCWSTAR=1.0_JPRB/3._JPRB
399
1
UDECT=5._JPRB
400
1
USHEARM=1.E-04_JPRB
401
1
UPRETMIN=60000._JPRB
402
1
UPRETMAX=97500._JPRB
403
1
ARSCH=4._JPRB
404
1
ARSCQ=1.2_JPRB
405
1
ARSC1=2.0_JPRB/(3._JPRB*ARSCH*ARSCQ)
406
1
ARSB2=3._JPRB*ARSCH*ARSC1/2.0_JPRB
407
1
ACBRPHIM=2.2_JPRB
408
1
ALMAVE=0._JPRB
409
1
RICRET=0.195_JPRB
410
411
1
STTBMIN=SQRT(3._JPRB)
412
! A minimum value for the adimentional jump in boyancy : d(Theta)/Theta
413
1
AJBUMIN=0.005_JPRB
414
! The "Master Length" is equal to "RCOFLM*Z_PBL"
415
1
RCOFLM=0.085_JPRB
416
417
418
! TKE (P.Marquet)
419
1
UETEPS=1.0_JPRB
420
421
!     - - - - - - - - - - - - - - - -
422
!     For dry conv. adjustment scheme :
423
!     - - - - - - - - - - - - - - - -
424
1
AJ1MEPS=0.99_JPRB
425
1
AJ1PEPS=10.0_JPRB
426
1
NAJITER=30
427
428
!     - - - - - - - - - - - - - - - - - - - - - - -
429
!     For Grenier (2000) top-PBL entrainment scheme :
430
!     - - - - - - - - - - - - - - - - - - - - - - -
431
1
AGRE1=0.16_JPRB
432
1
AGRE2=15._JPRB
433
1
AGREF=0.8_JPRB
434
1
AGREKE=5.0_JPRB
435
1
AGRERICR=50._JPRB
436
437
! Pseudo prognostic TKE scheme
438
1
NUPTKE=0.52_JPRB
439
1
GAMTKE=0.5_JPRB
440
441
442
443
!     - - - - - - -
444
!     For ACCVIMPGY :
445
!     - - - - - - -
446
1
ALFX=10.E-02_JPRB
447
1
TCTC=1.60E-04_JPRB
448
1
TVFC=1._JPRB
449
1
GAMAP1=1.5_JPRB
450
1
RKDN=30.E-06_JPRB
451
1
VVN=0.0_JPRB
452
1
VVX=-45._JPRB
453
1
FENTRT=2.5_JPRB
454
1
HCMIN=0.0_JPRB
455
1
FQLIC=2.5_JPRB
456
1
FNEBC=25.0_JPRB
457
1
FEVAPC=3.5_JPRB
458
459
!        1.2 Modify default values according to LECMWF
460
461
IF (LECMWF) THEN
462
ELSE
463
ENDIF
464
465
!     ------------------------------------------------------------------
466
467
!*       2.    Modify default values.
468
!              ----------------------
469
470
! Ce qui concerne NAMPHY0 commente par MPL le 15.04.09
471
!CALL POSNAM(NULNAM,'NAMPHY0')
472
!READ(NULNAM,NAMPHY0)
473
474


1
IF(.NOT.(LNEBCO.AND.(LNEBR.OR.LNEBGR.OR.LECT)) .AND.LCVRAV3) THEN
475
  WRITE(UNIT=KULOUT,FMT='(A)') ' '
476
  WRITE(UNIT=KULOUT,FMT='(A)') ' !'
477
  WRITE(UNIT=KULOUT,FMT='(A)') ' ! TENTRVL is set to 0. in SUPHY0  !!'
478
  WRITE(UNIT=KULOUT,FMT='(A)') ' !'
479
  WRITE(UNIT=KULOUT,FMT='(A)') ' '
480
  TENTRVL = 0.0_JPRB
481
ENDIF
482
!     ------------------------------------------------------------------
483
484
!*       3.    Print final values.
485
!              -------------------
486
487
1
WRITE(UNIT=KULOUT,FMT='('' COMMON YOMPHY0 '')')
488
WRITE(UNIT=KULOUT,FMT='('' AERCS1 = '',E11.4,'' AERCS3 = '',E11.4 &
489
 & ,'' AERCS5 = '',E11.4,'' ALMAV = '',E11.4,'' ECMNP = '',E11.4 &
490
 & ,'' EDB = '',E11.4,/,'' EDC = '',E11.4,'' EDD = '',E11.4 &
491
 & ,'' EDK = '',E11.4,'' ETACUT = '',E11.4 &
492
 & ,'' EVAP = '',E11.4,'' FONT = '',E11.4,'' GWDAMP = '',E11.4 &
493
 & ,'' GWDSE = '',E11.4,'' GWDBC = '',E11.4,/&
494
 & ,'' GWDCD = '',E11.4,/&
495
 & ,'' GWDPROF = '',E11.4,'' GWDVALI = '',E11.4,/&
496
 & ,'' HUCOE = '',E11.4,'' HUTIL = '',E11.4 ,'' HUTIL1 = '',E11.4 ,'' HUTIL2 = '',E11.4 &
497
 & ,'' VCHRNK = '',E11.4,'' VKARMN = '',E11.4 &
498
 & ,'' SNNBCO = '',E11.4,/,'' SPNBCO = '',E11.4 &
499
 & ,'' SXNBCO = '',E11.4,'' HOBST = '',E11.4,'' NPCLO1 = '',I4 &
500
 & ,'' NPCLO2 = '',I4,'' RCIN = '',E11.4,'' RCVEVAP = '',E11.4 &
501
 & ,'' REVGSL = '',E11.4,/&
502
 & ,'' RTCAPE= '',E11.4,'' GCOMOD= '',E11.4,/&
503
 & ,'' UHDIFV = '',E11.4,'' VZ0CM = '',E11.4,'' VZIUSTAR0 = '',E11.4 &
504
 & ,'' XNBMAX = '',E11.4,'' GALP = '',E11.4,'' SENSL = '',E11.4 &
505
 & ,'' TCA = '',E11.4,/,'' TCT = '',E11.4,'' TCW = '',E11.4 &
506
 & ,'' TURB = '',E11.4,'' TVF = '',E11.4,/&
507
 & ,'' TYM = '',5E11.4,'' QSMIN = '',E11.4,/&
508
 & ,'' QSSC = '',E11.4,'' RPHI0 = '',E11.4,'' RPHIR = '',E11.4 &
509
 & ,'' BEDIFV = '',E11.4,'' SCO = '',E11.4 &
510
 & ,'' USDMLT = '',E11.4,/&
511
 & ,'' GDDEVA = '',E11.4,'' GDDSDE = '',E11.4,/&
512
 & ,'' GWDCCO = '',E11.4 &
513
 & ,'' HUCOE2 = '',E11.4,/&
514
 & ,'' TENTR = '',E11.4,'' TENTRX = '',E11.4 &
515
 & ,'' TUDGP = '',E11.4,'' TDDGP = '',E11.4 &
516
 & ,'' GRCVPP = '',E11.4 &
517
 & )')&
518
1
 & AERCS1,AERCS3,AERCS5,ALMAV,ECMNP,EDB,EDC,EDD,EDK,ETACUT,EVAP,FONT,&
519
1
 & GWDAMP,GWDSE,GWDBC,GWDCD,GWDPROF,GWDVALI,&
520
1
 & HUCOE,HUTIL,HUTIL1,HUTIL2,VCHRNK,VKARMN,SNNBCO,SPNBCO,SXNBCO,HOBST,&
521
1
 & NPCLO1,NPCLO2,RCIN,RCVEVAP,REVGSL,RTCAPE,GCOMOD,&
522
1
 & UHDIFV,VZ0CM,VZIUSTAR0,XNBMAX,GALP,SENSL,TCA,TCT,TCW,&
523
1
 & TURB,TVF,TYM,QSMIN,QSSC,RPHI0,RPHIR,BEDIFV,SCO,USDMLT,&
524
1
 & GDDEVA,GDDSDE,GWDCCO,&
525
1
 & HUCOE2,&
526
2
 & TENTR,TENTRX,TUDGP,TDDGP,GRCVPP
527
WRITE(UNIT=KULOUT,FMT='('' USUPRC = '',E11.4,'' USURIC = '',E11.4 &
528
 & ,'' QSNEBC = '',E11.4,'' QSNEBS = '',E11.4 &
529
 & ,'' QSSUSC = '',E11.4,'' QSSUSS = '',E11.4,'' QSSUSV = '',E11.4 &
530
 & ,'' QSUSXC = '',E11.4,'' QSUSXS = '',E11.4 &
531
 & ,'' GCCSV  = '',E11.4,/&
532
 & ,'' QXRAL  = '',E11.4,'' QXRDEL = '',E11.4 &
533
 & ,'' QXRHX  = '',E11.4,'' QXRR   = '',E11.4,'' QXRTGH = '',E11.4,/&
534
 & ,'' GWDLT  = '',E11.4,'' AHCLPV = '',E11.4,/&
535
 & ,'' GCVADS = '',E11.4,'' GCVBETA= '',E11.4 &
536
 & ,'' RICRLM = '',E11.4,'' XBLM   = '',E11.4,'' XKLM = '',E11.4 &
537
 & ,'' XMINLM = '',E11.4,'' XMAXLM = '',E11.4 &
538
 & )')&
539
1
 & USUPRC,USURIC,QSNEBC,QSNEBS,QSSUSC,QSSUSS,QSSUSV,QSUSXC,QSUSXS,GCCSV,QXRAL &
540
1
 & ,QXRDEL,QXRHX,QXRR,QXRTGH,GWDLT,AHCLPV,GCVADS,GCVBETA,RICRLM,XBLM,XKLM,XMINLM &
541
2
 & ,XMAXLM
542
WRITE(UNIT=KULOUT,FMT='('' XWSALM = '',E11.4,'' XWSBLM = '',E11.4 &
543
 & ,'' GCVALFA= '',E11.4,'' GCVPSI = '',E11.4,'' GCVPSIE = '',E11.4 &
544
 & ,'' USURICL= '',E11.4,'' USURICE= '',E11.4,/ &
545
 & ,'' USURID= '',E11.4,'' USURIDE= '',E11.4,'' GCVNU= '',E11.4 &
546
 & ,'' GCVMLT= '',E11.4,'' GPBLHK0= '',E11.4,'' GPBLHRA = '',E11.4 &
547
 & ,'' UTILGUST= '',E11.4,'' RRGAMMA= '',E11.4,'' RRSCALE = '',E11.4 &
548
 & )')&
549
1
 & XWSALM,XWSBLM,GCVALFA,GCVPSI,GCVPSIE,USURICL,USURICE,USURID,USURIDE,GCVNU,GCVMLT,GPBLHK0 &
550
2
 & ,GPBLHRA,UTILGUST,RRGAMMA,RRSCALE
551
WRITE(UNIT=KULOUT,FMT='('' RNEGAT == '',E11.4,'' RNLCURV = '',E11.4 &
552
1
 & )') RNEGAT,RNLCURV
553
1
WRITE(UNIT=KULOUT,FMT='('' RDTFAC == '',E11.4 )') RDTFAC
554
1
WRITE(UNIT=KULOUT,FMT='(9(5(A,E11.4),/))') 'GCISMIN=',GCISMIN
555
WRITE(UNIT=KULOUT,FMT='('' A0ML_AU == '',E11.4,'' A0ML_AT == '',E11.4 &
556
1
 &,'' A0ML_BU == '',E11.4,'' A0ML_BT == '',E11.4 )') A0ML_AU,A0ML_AT&
557
2
 &,A0ML_BU,A0ML_BT
558
559
!     - - - - - - - -
560
!     For TKE scheme :
561
!     - - - - - - - -
562
! WRITE(UNIT=KULOUT,FMT='( '' ADISE   = '',E11.4,'' ADISI   = '',E11.4,/ &
563
!  &,'' AECLS3  = '',E11.4,'' AECLS4  = '',E11.4,'' AKN     = '',E11.4,/ &
564
!  &,'' ALD     = '',E11.4,'' ALPHAE  = '',E11.4,'' ALPHAT  = '',E11.4,/ &
565
!  &,'' ECTMIN  = '',E11.4,'' UCWSTAR = '',E11.4,'' UDECT   = '',E11.4,/ &
566
!  &,'' USHEARM = '',E11.4,/ &
567
!  &,'' UPRETMIN= '',E11.4,'' UPRETMAX= '',E11.4,'' ARSCH   = '',E11.4,/ &
568
!  &,'' ARSCQ   = '',E11.4,'' ARSC1   = '',E11.4,/ &
569
!  &,'' ARSB2   = '',E11.4,'' STTBMIN = '',E11.4,/ &
570
!  &,'' ACBRPHIM= '',E11.4,'' ALMAVE  = '',E11.4,'' RICRET  = '',E11.4,/ &
571
!  &,'' UETEPS  = '',E11.4,/ &
572
!  &,'' ABJUMIN = '',E11.4,'' RCOFLM  = '',E11.4,&
573
!      &)')&
574
   WRITE(UNIT=KULOUT,FMT=*) &
575
1
  &ADISE,ADISI,AECLS3,AECLS4,AKN,ALD,ALPHAE,ALPHAT,ECTMIN,UCWSTAR,UDECT,&
576
1
  &USHEARM,UPRETMIN,UPRETMAX,ARSCH,ARSCQ,ARSC1,ARSB2,STTBMIN,&
577
2
  &ACBRPHIM,ALMAVE,RICRET,UETEPS,AJBUMIN,RCOFLM
578
579
580
!       - - - - - - - - - -
581
!       Lopez Microphysics :
582
!       - - - - - - - - - -
583
1
WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - - - - '')')
584
1
WRITE(UNIT=KULOUT,FMT='(''  Microphysics scheme  '')')
585
1
WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - - - - '')')
586
WRITE(UNIT=KULOUT,FMT='( '' RAUTEFR = '',E11.4   &
587
 &,'' RAUTEFS = '',E11.4,'' RAUTSBET= '',E11.4,/ &
588
 &,'' RNINTR  = '',E11.4,'' RNINTS  = '',E11.4,/ &
589
 &,'' RQLCR   = '',E11.4,'' RQCRNS  = '',E11.4,/ &
590
 &,'' RQICRMIN= '',E11.4,'' RQICRMAX= '',E11.4,/ &
591
 &,'' RQLCV   = '',E11.4 &
592
 &,'' RQICVMIN= '',E11.4,'' RQICVMAX= '',E11.4,/ &
593
 &,'' RQICRT1 = '',E11.4,'' RQICRT2 = '',E11.4,/ &
594
 &,'' RQICRSN = '',E11.4,'' RACCEF  = '',F11.4,/ &
595
 &,'' RAGGEF  = '',F11.4,'' RRIMEF  = '',F11.4,/ &
596
 &,'' RHCRIT1 = '',F11.6,'' RHCRIT2 = '',F11.6,/ &
597
 &,'' RETAMIN = '',F11.6,'' RFACNSM = '',F11.6,/ &
598
 &,'' TFVR    = '',F11.6,'' TFVS    = '',F11.6,/ &
599
 &,'' GRHCMOD = '',F11.6,'' RHEVAP  = '',F11.6,/ &
600
 &    )') &
601
1
 &RAUTEFR,RAUTEFS,RAUTSBET,RNINTR,RNINTS,RQLCR,RQCRNS,RQICRMIN,RQICRMAX, &
602
1
 &RQLCV,RQICVMIN,RQICVMAX,RQICRT1,RQICRT2,RQICRSN,RACCEF,RAGGEF,RRIMEF, &
603
2
 &RHCRIT1,RHCRIT2,RETAMIN,RFACNSM,TFVR,TFVS,GRHCMOD,RHEVAP
604
605
!     - - - - - - - - - - -
606
!     For Grenier scheme :
607
!     - - - - - - - - - - -
608
!WRITE(UNIT=KULOUT,FMT='('' AGRE1   = '',E11.4,'' AGRE2   = '',E11.4,'' AGREF   = '',E11.4,/ &
609
! & ,'' AGRERICR= '',E11.4,'' AGREKE  = '',E11.4, &
610
! & )')&
611
WRITE(UNIT=KULOUT,FMT=*) &
612
1
 & AGRE1,    AGRE2,   AGREF,      AGRERICR, AGREKE
613
614
!     - - - - - - - - - - - - - - - -
615
!     For dry conv. adjustment scheme :                                -
616
!     - - - - - - - - - - - - - - - -
617
WRITE(UNIT=KULOUT,FMT='(&
618
 & '' AJ1PEPS = '',E11.4,'' AJ1MEPS = '',E11.4,'' NAJITER = '',I3,8X &
619
 & )')&
620
1
 & AJ1PEPS, AJ1MEPS, NAJITER
621
622
!     - - - - - - -
623
!     For ACCVIMPGY :
624
!     - - - - - - -
625
WRITE(UNIT=KULOUT,FMT='( '' ALFX    = '',E11.4  &
626
 &,'' TCTC    = '',E11.4,'' TVFC    = '',F11.6,/ &
627
 &,'' GAMAP1  = '',F11.6,'' RKDN    = '',E11.4,/ &
628
 &,'' VVN     = '',F11.6,'' VVX     = '',F11.6,/ &
629
 &,'' FENTRT  = '',F11.6,'' HCMIN   = '',F11.6  &
630
 &,'' FQLIC   = '',F11.6,'' FNEBC   = '',F11.6,/ &
631
 &,'' FEVAPC  = '',F11.6)')&
632
1
 & ALFX, TCTC, TVFC, GAMAP1, RKDN, VVN, VVX, FENTRT, &
633
2
 & HCMIN, FQLIC, FNEBC, FEVAPC
634
635
636
1
WRITE(UNIT=KULOUT,FMT='(''  Pseudo prognostic TKE scheme  '')')
637
WRITE(UNIT=KULOUT,FMT='( '' NUPTKE = '',E11.4  &
638
1
 &'' GAMTKE = '',E11.4)') NUPTKE,GAMTKE
639
640
1
WRITE(KULOUT,'(/'' PIL MICROPHYSICS : '')')
641
WRITE(UNIT=KULOUT,FMT='('' RAUIUSTE = '',E10.4  &
642
 &,'' RAUITN = '',F8.3,'' RAUITX = '',F8.3  &
643
 &,'' RDPHIC = '',F8.2   &
644
 &,'' GWBFAUT = '',F5.2 &
645
 &,'' RWBF1 = '',F6.2,'' RWBF2 = '',F5.2 &
646
 &,'' RSMDNEBX = '',F5.2 &
647
 &,'' RSMDTX = '',F5.2 &
648
 &,'' NSMTPA = '',I2 &
649
 &,'' NSMTPB = '',I2 &
650
 &,'' RCOLL = '',E11.4 &
651
 &,'' RFALLL = '',E11.4 &
652
 &    )') &
653
1
 &RAUIUSTE,RAUITN,RAUITX,RDPHIC,GWBFAUT,RWBF1,RWBF2,&
654
2
 &RSMDNEBX, RSMDTX, NSMTPA, NSMTPB, RCOLL, RFALLL
655
!----------------------------------------
656
1
WRITE(KULOUT,'(/'' PROGNOSTIC CONVECTION '')')
657
if (1==0) then     !!!!! A REVOIR (MPL)
658
WRITE(KULOUT,&
659
 &'('' TUDBU='',E16.6,'' TUDFR='',E16.6,'' TDDBU='',E16.6,'' TDDFR='', &
660
 & E16.6,&
661
 & '' GCVALMX='',G10.4,'' GCVACHI='',E16.6,&
662
 & '' GCVADMW='',G10.4,&
663
 & '' GCVEEX ='',G10.4,&
664
 & '' GCVBEE ='',G10.4,&
665
 & '' GCVSQDN ='',G10.4,&
666
 & '' GCVSQDR ='',G10.4,&
667
 & '' GCVSQDCX ='',G10.4,&
668
 & '' ECMNPI ='',G10.4,&
669
 & '' GFRIC ='',G10.4&
670
 & )')TUDBU,TUDFR,TDDBU,TDDFR,GCVALMX,GCVACHI,&
671
 &    GCVADMW,GCVEEX,GCVBEE, &
672
 &    GCVSQDN, GCVSQDR, GCVSQDCX, ECMNPI,GFRIC
673
else
674
1
  print*,'>>>>> TOTO1 ', TUDBU,TUDFR,TDDBU,TDDFR,GCVALMX,GCVACHI,&
675
1
 &    GCVADMW,GCVEEX,GCVBEE, &
676
2
 &    GCVSQDN, GCVSQDR, GCVSQDCX, ECMNPI,GFRIC
677
endif
678
WRITE(KULOUT,&
679
 &'('' GDDEVF='',G10.4,'' GDDWPF='',G10.4,'' GDDBETA='',G10.4)')&
680
1
 & GDDEVF, GDDWPF, GDDBETA
681
WRITE(KULOUT,&
682
 & '('' GRRINTE ='',G10.4,'' GRRMINA ='',G10.4&
683
1
 & )') GRRINTE, GRRMINA
684
!     ------------------------------------------------------------------
685
686
!*       4.    Check consistency between logical and real namelist inputs.
687
!              -------------------
688
689
1
IF (LMPHYS) THEN
690
691
  IF(LCVRA.AND.((TUDGP /= 0.0_JPRB.OR.TDDGP /= 0.0_JPRB).AND..NOT.LCVCAS)) THEN
692
    WRITE(UNIT=KULOUT,FMT='(A)') &
693
     & 'INCONSISTENCY BETWEEN TUDGP, TDDGP AND LCVCAS!...'
694
    CALL ABOR1('TUDP<>0. OR TDDGP<>0. IMPLIES LCVCAS=T!...')
695
  ENDIF
696
697
  IF(.NOT.LCVLIS.AND.GCVPSI /= 0.0_JPRB) THEN
698
    WRITE(UNIT=KULOUT,FMT='(A)') 'INCONSISTENCY BETWEEN LCVLIS AND GCVPSI!...'
699
    CALL ABOR1('LCVLIS=F IMPLIES GCVPSI=0.!...')
700
  ENDIF
701
702
ENDIF
703
704
!*  Consistency check for simplified physics keys
705
706


1
IF ((LMPHYS.OR.LSIMPH).AND.(LSMOOTHD.OR.LSMOOTHA)) THEN
707
708
  IF(RNLCURV == 0.0_JPRB) THEN
709
    WRITE(UNIT=KULOUT,FMT='(A)') 'SMOOTHING IN SIM. PH. BUT RNLCURV = ZERO'
710
    CALL ABOR1('PHYSICS AND SMOOTHING IMPLY RNLCURV /= ZERO')
711
  ENDIF
712
713
ENDIF
714
1
IF (LPIL) THEN
715
! Setup RHCRI profile(s)
716
! (for LAM case... GAW set up by suecuv, called before suphy)
717
! (For Not LAM, SULEG called by sugem called before suphy)
718
  CALL SURHCRI(KULOUT)
719
! CALL SULOCST(KULOUT)
720
ENDIF
721
722
1
IF (LHOOK) CALL DR_HOOK('SUPHY0',1,ZHOOK_HANDLE)
723
1
END SUBROUTINE SUPHY0