1 | SUBROUTINE SU0PHY(KULOUT) |
---|
2 | |
---|
3 | USE PARKIND1 ,ONLY : JPIM ,JPRB |
---|
4 | USE YOMHOOK ,ONLY : LHOOK, DR_HOOK |
---|
5 | |
---|
6 | !USE YOMLUN , ONLY : NULOUT ,NULNAM MPL 14.04.09 |
---|
7 | USE YOMLUN , ONLY : NULOUT |
---|
8 | ! Ce qui concerne LSLPHY commente par MPL 24.11.08 |
---|
9 | !USE YOMSLPHY , ONLY : LSLPHY |
---|
10 | USE YOMPHY , ONLY : NBITER ,NOIR, NDPSFI, NPHYREP ,LMPHYS ,LREASUR ,& |
---|
11 | & LCAPE ,LCONDWT ,LCVPP ,LCVDD ,LHUNEG ,& |
---|
12 | & LNEIGE ,LRNUMX ,LCLSATUR,L2PHYS ,LCVRA ,LGWD ,& |
---|
13 | & LGWDC ,LHMTO ,LNEBCO ,LNEBN ,LNEBR ,LQXRTGH, LHUCN,& |
---|
14 | & LNEBT ,LND2DIFF ,LOZONE ,LRAY ,LRAYFM ,LRAYFM15 ,& |
---|
15 | & LRRMES ,LSFHYD ,LSNV ,LSOLV ,LFGEL ,& |
---|
16 | & LSRCON ,LSRCONT ,LSLC ,LRRGUST ,LRELAXW ,& |
---|
17 | & LAEROSEA ,LAEROLAN ,LAEROSOO ,LAERODES ,LAEROVOL ,LAEROSUL ,LRELAXT ,& |
---|
18 | & LO3ABC ,LSTRA ,LSTRAS ,LTHERMO ,LVDIF ,& |
---|
19 | & LRAYLU ,LREWS ,LRPROX ,LRMIX ,LRSTAB ,& |
---|
20 | & LRAUTOEV ,LRAYPL ,LCVLIS ,LCVCAS ,LVGSN ,& |
---|
21 | & LNEBNXR ,LFPCOR ,LNOIAS ,CGMIXLEN ,LPRGML ,LGLT ,& |
---|
22 | & LNEWD ,LRTPP ,LRTDL ,LDIFCONS ,LECT ,& |
---|
23 | & LCVPGY ,LPROCLD ,LEVAPP ,LCOLLEC ,LPTKE ,L3MT ,& |
---|
24 | & LCVPRO ,LCDDPRO ,LSCMF ,LVOIGT ,LVFULL ,& |
---|
25 | & LNSMLIS, LPHCDPI ,& |
---|
26 | & NPHY ,JPHYEC ,JPHYMF ,JPHYARO , & |
---|
27 | & LAJUCV ,LPBLE ,LNEBGR ,LNEBGY ,& |
---|
28 | & LBCCOND ,LCVRAV3 ,LZ0HSREL ,LBLVAR ,& |
---|
29 | & LADJCLD ,LAUTONEB ,LSSD ,LCVPPKF ,LECTFL ,& |
---|
30 | & LPIL ,LPHSPSH ,LSMROT ,LSMNIMBT ,& |
---|
31 | & LSMTPS ,L1DRHCRI ,LGWRHCRI ,NSMTBOT , & |
---|
32 | & NSMDNEB ,NPRAG ,NPRAC ,NPRRI ,LSTRAPRO, LNEWSTAT |
---|
33 | USE YOMARPHY , ONLY : LMPA ,LMICRO ,LTURB ,& |
---|
34 | & LMSE ,LKFBCONV ,LKFBD ,LKFBS ,LUSECHEM ,& |
---|
35 | & LORILAM ,LRDUST, LBUFLUX ,CCOUPLING |
---|
36 | USE YOEPHY , ONLY : LEPHYS ,& |
---|
37 | & LECOND ,LECUMF ,LEDCLD ,LEEVAP ,LEGWDG ,& |
---|
38 | & LEOZOC ,LEQNGT ,LERADI ,LERADS ,& |
---|
39 | & LESHCV ,LESICE ,LESURF ,LEVDIF ,& |
---|
40 | & LAGPHY ,LEPCLD ,LECO2DIU ,& |
---|
41 | & LEO3CH ,LBUD23 ,LEMETHOX ,LERA40 ,LECURR ,LVDFTRAC ,& |
---|
42 | & LEOCWA ,LEOCCO ,LEOCSA ,LMFTRAC ,LERAIN ,LE4ALB ,& |
---|
43 | & RTHRFRTI ,NEPHYS_PCFULL, LEMWAVE |
---|
44 | USE YOEWCOU , ONLY : NSTPW ,RSOUTW ,RNORTW ,RDEGREW ,& |
---|
45 | & LWCOU ,LWCOU2W |
---|
46 | ! Ce qui concerne RCLDTOPP commente par MPL 24.11.08 |
---|
47 | !USE YOECLDP , ONLY : RCLDTOPP |
---|
48 | USE YOPHLC , ONLY : ALPHA ,AH0 ,USTARL ,& |
---|
49 | & USTARS ,ALANDZ0 ,ASEAZ0 ,LSPHLC ,LVDFLC ,& |
---|
50 | & LSDRLC ,LCZDEB ,LZMCON ,LKEXP ,LVDFDS ,& |
---|
51 | & LSDRDS |
---|
52 | USE YOMCT0 , ONLY : NCONF ,& |
---|
53 | & LRETCFOU ,LWRTCFOU, LAROME,LFPOS,LPC_FULL |
---|
54 | USE YOMCT0B , ONLY : LECMWF |
---|
55 | ! Tous les YOM* ci-dessous commentes par MPL 24.11.08 |
---|
56 | !USE YOMINI , ONLY : NEINI |
---|
57 | !USE YOMDFI , ONLY : NEDFI |
---|
58 | !USE YOMVRTL , ONLY : L131TL |
---|
59 | !USE YOPHNC , ONLY : LETRAJP ,LETRAJPT ,LERADI2 ,LERADS2 ,& |
---|
60 | ! & LERADSW2 ,LERADN2 ,LERADFL2 ,LEDCLD2 ,LENCLD2 ,& |
---|
61 | ! & LEVAPLS2 ,LEVDIF2 ,LEGWDG2 ,LECUMF2 ,LECUBM2 ,& |
---|
62 | ! & LECOND2 ,LEQNGT2 ,LESURF2 ,LEKPERT ,LTRACLNPH |
---|
63 | !USE YOEPHLI , ONLY : LENOPERT |
---|
64 | !USE YOMNCL , ONLY : LNCLIN ,LREGCL |
---|
65 | USE YOMSIMPHL, ONLY : LSIMPH ,LTRAJPS ,LTRAJPST ,& |
---|
66 | & LSMOOTHD ,LSMOOTHA ,LSMOOTHB ,LCVRASP ,& |
---|
67 | & LGWDSP ,LRAYSP ,LSTRASP ,LVDIFSP ,LRRMESSP ,LCLOUDS |
---|
68 | USE YOMRCOEF , ONLY : LRCOEF ,LTLADDIA ,LGLOBRAD |
---|
69 | !USE YOMIOP , ONLY : NPCKFT95 ,NEXPBT95 |
---|
70 | !USE YOMDYNA , ONLY : LGWADV |
---|
71 | !USE YOMCOAPHY , ONLY : NPHYINT |
---|
72 | |
---|
73 | !**** *SU0PHY* - Initialize common YOxPHY controlling physics |
---|
74 | |
---|
75 | ! Purpose. |
---|
76 | ! -------- |
---|
77 | ! Initialize YOxPHY, the common that includes the |
---|
78 | ! basic switches for the physics of the model. |
---|
79 | |
---|
80 | !** Interface. |
---|
81 | ! ---------- |
---|
82 | ! *CALL* *SU0PHY(KULOUT) from SU0YOMA |
---|
83 | |
---|
84 | ! Explicit arguments : |
---|
85 | ! -------------------- |
---|
86 | ! KULOUT : Logical unit for the output |
---|
87 | |
---|
88 | ! Implicit arguments : |
---|
89 | ! -------------------- |
---|
90 | |
---|
91 | ! Method. |
---|
92 | ! ------- |
---|
93 | ! See documentation |
---|
94 | |
---|
95 | ! Externals. |
---|
96 | ! ---------- |
---|
97 | |
---|
98 | ! Reference. |
---|
99 | ! ---------- |
---|
100 | ! ECMWF Research Department documentation of the IFS |
---|
101 | |
---|
102 | ! or |
---|
103 | |
---|
104 | ! Documentation ARPEGE (depending on which physics will be used) |
---|
105 | |
---|
106 | ! Author. |
---|
107 | ! ------- |
---|
108 | ! J.-J. Morcrette *ECMWF* |
---|
109 | ! J.-F. Geleyn for the ARPEGE rewriting. |
---|
110 | |
---|
111 | ! Modifications. |
---|
112 | ! -------------- |
---|
113 | ! Original : 91-11-12 |
---|
114 | ! Modified 92-02-22 by M. Deque (tests of consistency with *YOMDPHY*) |
---|
115 | ! Modified by R. EL Khatib : 93-04-02 Set-up defaults controled by LECMWF |
---|
116 | ! Modified 94-02-28 by M. Deque : Shallow convection clouds |
---|
117 | ! Modified 93-10-28 by Ph. Dandin : FMR scheme with MF physics |
---|
118 | ! Modified 93-08-24 by D. Giard (test of consistency with digital filter) |
---|
119 | ! Modified by M. Hamrud : 93-06-05 Make use of LECMWF for ECMWF |
---|
120 | ! Modified 95-11-27 by M. Deque (2nd call to APLPAR) |
---|
121 | ! Modified 96-01-10 by M. Janiskova (logical switches for simpl.ph.par.) |
---|
122 | ! Modified 97-02-28 by J.M. Piriou (cloudiness scheme switch LNEBN) |
---|
123 | ! Modified 97-04-17 by J.M. Piriou (default values) |
---|
124 | ! Modified by F. Rabier : 96-09-25 Full physics set-up for 801 job |
---|
125 | ! Modified by G. Hello : 97-07-31 Full MF physics set-up for 801 |
---|
126 | ! Modified by M. Deque : 97-05-25 Frozen FMR |
---|
127 | ! Modified by E.Bazile : 97-11-18 Soil freezing (LFGEL) |
---|
128 | ! Modified by M. Deque : 98-01-05 Cleaning of NDPSFI |
---|
129 | ! Modified by M. Janiskova : 98-11-18 Full MF physics set-up for 131 |
---|
130 | ! : 99-02-21 Set-up for radiation coef. |
---|
131 | ! Modified by C. Jakob : 98-04 Methane oxidation |
---|
132 | ! Modified by T. Bergot : 98-08 Full MF physics set-up for 601 |
---|
133 | ! Modified by E.Bazile : 99-02-12 Superficial soil freezing (LFGELS) |
---|
134 | ! Modified by L. Gerard : 98-12-07 LSRCON |
---|
135 | ! Modified by J.M. Piriou : 99-04-19 Moon radiation |
---|
136 | ! Modified 99-02-17 by K. YESSAD: options LRETCFOU, LWRTCFOU. |
---|
137 | ! Modified by J.M. Piriou : 99-06-18 LCVLIS and LCVCAS |
---|
138 | ! Modified by J.M. Piriou : 99-07-07 Introduce reproductibility in physics (NPHYREP). |
---|
139 | ! Modified by D. Giard : 2000-10-25 LVGSN (snow and vegetation) |
---|
140 | ! Modified by E. Bazile : 2000-11-12 CYCORA's default value. |
---|
141 | ! Modified by F. Bouyssel : 2001-03-03 LRRMESSP |
---|
142 | ! Modified by J.M. Piriou : 2001-11-27 LSRCONT |
---|
143 | ! Modified by J.M. Piriou : 2002-11-15 LNEBNXR |
---|
144 | ! Modified by F. Bouyssel : 2002-06-25 LCVPPLIS and LRRGUST |
---|
145 | ! R. El Khatib : 2001-08-07 Pruning options |
---|
146 | ! J.M. Piriou : 2002-01-10 set default values to operational ones. |
---|
147 | ! Modified by A.Beljaars : 2002-11-12 LECURR (Ocean current) |
---|
148 | ! Modified by Y. Bouteloup : 2002-03-05 LO3ABC |
---|
149 | ! Modified 08-2002 C. Smith : use "w" as prognostic variable in the |
---|
150 | ! semi-lag advection of vertical divergence in the NH model. |
---|
151 | ! Modified by F. Bouyssel : 2002-12-18 Cleaning of LCVPPLIS |
---|
152 | ! Modified by E. Bazile : 2003-02-13 LFPCOR |
---|
153 | ! Modified by E. Bazile : 2003-02-18 LNOIAS |
---|
154 | ! Modified by M. Janiskova : 2003-05 set-up for ECMWF stat.cloud scheme |
---|
155 | ! M.Hamrud 01-Oct-2003 CY28 Cleaning |
---|
156 | ! P. Viterbo ECMWF 03-12-2004 Include user-defined RTHRFRTI |
---|
157 | ! Modified by Y Seity : 2004-11-16 For AROME setup, default values |
---|
158 | ! for namarphy keys,read namarphy, switch off arp/ald physics keys |
---|
159 | ! Modified by R. Brozkova : 2004-11 modifs for Xu-Randall cloud. scheme |
---|
160 | ! P. Marquet and F. Bouyssel : 2004-08-18 (Lopez) |
---|
161 | ! G. Hello : 2005-04-25 Lground initialization (surfex and arome) |
---|
162 | ! Y. Seity : 2005-09-25 LRDUST, LORILAM and LUSECHEM initialisation |
---|
163 | ! for AROME |
---|
164 | ! T. Kovacic : 2006-03-17 LPHCDPI, NPHY, LBUFLUX; for DDH and BUDGET |
---|
165 | ! Modified by F. Bouyssel : 2005-01-25 Change default of LNSMLIS |
---|
166 | ! D.Salmond 22-Nov-2005 Mods for coarser/finer physics |
---|
167 | ! P. Lopez 14-02-2006 Added switch LTRACLNPH for including |
---|
168 | ! tracers in linearized physics |
---|
169 | ! R.Brozkova : pre ALARO 0 modset: mixing lengths computation |
---|
170 | ! Modified by GMGEC/EAC : 2006-03 list of modif. |
---|
171 | ! P. Marquet : 99-01-18 Dry Conv. Adj. (LAJUCV) |
---|
172 | ! P. Marquet : 02-02-14 YOMPHY |
---|
173 | ! P. Marquet : 02-06-18 LBCCOND (Becht/Chab ACCOND) |
---|
174 | ! P. Marquet : 02-08-30 LCVRAV3 (old ACCVIMP_V3) |
---|
175 | ! and new cloud model : 2006-03-03 |
---|
176 | ! Modified by E. Bazile : 2006-04-11 Add LPBLE in case of LECT |
---|
177 | ! Modified by E. Bazile : 2006-04-20 Add LADJCLD,LCVPPKF, LECTFL |
---|
178 | ! JF. Gueremy : LZ0HSREL initialised (used in ACHMT) |
---|
179 | ! Modified by F. Bouyssel : 2006-10-30 Add LAUTONEB, LSSD |
---|
180 | ! Modified by F. Vana : 2006-01-30 LPTKE |
---|
181 | ! Modifed by D. Banciu : 2006-08-31 LND2DIFF |
---|
182 | ! M. Bellus : 28-Sep-2006 ALARO-0 phasing: L3MT,LCVPRO,LCDDPRO,LSCMF, |
---|
183 | ! LVOIGT,LVFULL,LPIL,LPHSPSH,LSMROT,LSMNIMBT,LSMTPS, |
---|
184 | ! L1DRHCRI,LGWRHCRI,NSMTBOT,NSMDNEB,NPRAG,NPRAC,NPRRI, |
---|
185 | ! LSTRAPRO,LNEWSTAT ; removed duplicity in LPBLE |
---|
186 | ! JJMorcrette 20060721 MODIS albedo |
---|
187 | ! ------------------------------------------------------------------ |
---|
188 | |
---|
189 | IMPLICIT NONE |
---|
190 | |
---|
191 | INTEGER(KIND=JPIM),INTENT(IN) :: KULOUT |
---|
192 | |
---|
193 | ! ------------------------------------------------------------------ |
---|
194 | |
---|
195 | INTEGER(KIND=JPIM) :: IERR |
---|
196 | REAL(KIND=JPRB) :: ZHOOK_HANDLE |
---|
197 | |
---|
198 | ! ------------------------------------------------------------------ |
---|
199 | |
---|
200 | #include "abor1.intfb.h" |
---|
201 | #include "posnam.intfb.h" |
---|
202 | #include "suscm.intfb.h" |
---|
203 | |
---|
204 | ! ------------------------------------------------------------------ |
---|
205 | |
---|
206 | #include "namphy.h" |
---|
207 | !#include "namarphy.h" |
---|
208 | #include "naephy.h" |
---|
209 | #include "naphlc.h" |
---|
210 | !#include "namtrajp.h" |
---|
211 | !#include "namsimphl.h" |
---|
212 | !#include "namrcoef.h" |
---|
213 | |
---|
214 | ! ------------------------------------------------------------------ |
---|
215 | print*,'Dans SUOPHY ', KULOUT |
---|
216 | |
---|
217 | IF (LHOOK) CALL DR_HOOK('SU0PHY',0,ZHOOK_HANDLE) |
---|
218 | |
---|
219 | ! ------------------------------------------------------------------ |
---|
220 | |
---|
221 | !* 1. Set default values. |
---|
222 | ! ------------------- |
---|
223 | |
---|
224 | !* 1.1.1 Set default values for Meteo-France physics |
---|
225 | ! ------------------------------------------- |
---|
226 | |
---|
227 | LMPHYS=.FALSE. |
---|
228 | LREASUR=.TRUE. |
---|
229 | |
---|
230 | CGMIXLEN='Z' |
---|
231 | LPRGML=.FALSE. |
---|
232 | LCAPE=.FALSE. |
---|
233 | LCONDWT=.FALSE. |
---|
234 | LCVCAS=.FALSE. |
---|
235 | LCVLIS=.FALSE. |
---|
236 | LCVPP=.FALSE. |
---|
237 | LCVPPKF=.FALSE. |
---|
238 | LCVDD=.FALSE. |
---|
239 | LHUNEG=.TRUE. |
---|
240 | LNEIGE=.TRUE. |
---|
241 | LRNUMX=.FALSE. |
---|
242 | LCLSATUR=.FALSE. |
---|
243 | LVOIGT=.FALSE. |
---|
244 | LVFULL=.FALSE. |
---|
245 | LRRGUST=.FALSE. |
---|
246 | L2PHYS=.FALSE. |
---|
247 | LO3ABC=.FALSE. |
---|
248 | LAEROSEA=.FALSE. |
---|
249 | LAEROLAN=.FALSE. |
---|
250 | LAEROSOO=.FALSE. |
---|
251 | LAERODES=.FALSE. |
---|
252 | LAEROVOL=.FALSE. |
---|
253 | LAEROSUL=.FALSE. |
---|
254 | LRELAXT=.FALSE. |
---|
255 | LRELAXW=.FALSE. |
---|
256 | LE4ALB=.FALSE. |
---|
257 | LGLT=.FALSE. |
---|
258 | LNEWD=.FALSE. |
---|
259 | LDIFCONS=.FALSE. |
---|
260 | LECT=.FALSE. |
---|
261 | LPTKE=.FALSE. |
---|
262 | LECTFL=.FALSE. |
---|
263 | LPBLE=.FALSE. |
---|
264 | LCVPGY=.FALSE. |
---|
265 | L3MT=.FALSE. |
---|
266 | |
---|
267 | LCVRA=.FALSE. |
---|
268 | LGWDC=.FALSE. |
---|
269 | LGWD=.FALSE. |
---|
270 | LHMTO=.FALSE. |
---|
271 | LNEBCO=.FALSE. |
---|
272 | LNEBN=.FALSE. |
---|
273 | LNEBNXR=.FALSE. |
---|
274 | LNEBR=.FALSE. |
---|
275 | LNEBT=.FALSE. |
---|
276 | LND2DIFF=.FALSE. |
---|
277 | LQXRTGH=.FALSE. |
---|
278 | LHUCN=.FALSE. |
---|
279 | LOZONE=.FALSE. |
---|
280 | LRAY=.FALSE. |
---|
281 | LRAYLU=.FALSE. |
---|
282 | LREWS=.FALSE. |
---|
283 | LRPROX=.FALSE. |
---|
284 | LRMIX=.FALSE. |
---|
285 | LRSTAB=.FALSE. |
---|
286 | LRAUTOEV=.FALSE. |
---|
287 | LRTPP=.FALSE. |
---|
288 | LRTDL=.FALSE. |
---|
289 | LRAYPL=.FALSE. |
---|
290 | LRAYFM=.FALSE. |
---|
291 | LRAYFM15=.FALSE. |
---|
292 | LRRMES=.FALSE. |
---|
293 | LSFHYD=.FALSE. |
---|
294 | LSNV=.FALSE. |
---|
295 | LSOLV=.FALSE. |
---|
296 | LFGEL=.FALSE. |
---|
297 | LSRCON=.FALSE. |
---|
298 | LSRCONT=.FALSE. |
---|
299 | LSLC=.FALSE. |
---|
300 | LSTRA=.FALSE. |
---|
301 | LSTRAS=.FALSE. |
---|
302 | LTHERMO=.FALSE. |
---|
303 | LVDIF=.FALSE. |
---|
304 | LVGSN=.FALSE. |
---|
305 | LFPCOR=.FALSE. |
---|
306 | LNOIAS=.FALSE. |
---|
307 | LPHCDPI=.FALSE. |
---|
308 | LBLVAR=.FALSE. |
---|
309 | |
---|
310 | LZ0HSREL=.FALSE. |
---|
311 | |
---|
312 | NBITER=2 |
---|
313 | NDPSFI=0 |
---|
314 | NPHYREP=1 |
---|
315 | NOIR=0 |
---|
316 | |
---|
317 | ! --------------------------------------------------- |
---|
318 | ! ALARO-0 (cloud) |
---|
319 | ! --------------------------------------------------- |
---|
320 | LPIL=.FALSE. |
---|
321 | LSTRAPRO=.FALSE. |
---|
322 | LNEWSTAT=.TRUE. |
---|
323 | LPHSPSH=.FALSE. ! Pseudo Historic Surface Precip Sensible Heat Flux |
---|
324 | LSMROT=.FALSE. |
---|
325 | LSMTPS=.FALSE. |
---|
326 | LSMNIMBT=.FALSE. |
---|
327 | L1DRHCRI=.FALSE. |
---|
328 | LGWRHCRI=.FALSE. |
---|
329 | NSMTBOT=0 ! interpolate |
---|
330 | NSMDNEB=2 ! gradient limitation |
---|
331 | NPRAG=1 |
---|
332 | NPRAC=1 |
---|
333 | NPRRI=1 |
---|
334 | ! --------------------------------------------------- |
---|
335 | ! ALARO-0 (prognostic convection) |
---|
336 | ! --------------------------------------------------- |
---|
337 | LCVPRO=.FALSE. |
---|
338 | LCDDPRO=.FALSE. |
---|
339 | LSCMF=.FALSE. |
---|
340 | |
---|
341 | ! - - - - - - - - - - - - - - - - - - - - - - - - - - |
---|
342 | ! Cloud and precipitation prognostic scheme (Lopez) : |
---|
343 | ! - - - - - - - - - - - - - - - - - - - - - - - - - - |
---|
344 | |
---|
345 | LPROCLD=.FALSE. |
---|
346 | LEVAPP=.TRUE. |
---|
347 | LCOLLEC=.TRUE. |
---|
348 | LNSMLIS=.TRUE. |
---|
349 | LADJCLD=.TRUE. |
---|
350 | LAUTONEB=.FALSE. |
---|
351 | LSSD=.FALSE. |
---|
352 | |
---|
353 | !AROME physics |
---|
354 | LMPA=.FALSE. |
---|
355 | LMICRO=.FALSE. |
---|
356 | LTURB=.FALSE. |
---|
357 | LMSE=.FALSE. |
---|
358 | LKFBCONV=.FALSE. |
---|
359 | LKFBD=.FALSE. |
---|
360 | LKFBS=.FALSE. |
---|
361 | LUSECHEM=.FALSE. |
---|
362 | LORILAM=.FALSE. |
---|
363 | LRDUST=.FALSE. |
---|
364 | LBUFLUX=.TRUE. |
---|
365 | CCOUPLING='E' |
---|
366 | |
---|
367 | ! - - - - - - - - - - - |
---|
368 | ! Module YOMPHY : |
---|
369 | ! - - - - - - - - - - - |
---|
370 | |
---|
371 | LAJUCV=.FALSE. |
---|
372 | LNEBGR=.FALSE. |
---|
373 | LNEBGY=.FALSE. |
---|
374 | LBCCOND=.FALSE. |
---|
375 | |
---|
376 | LCVRAV3=.FALSE. |
---|
377 | |
---|
378 | !* 1.1.2 Set default values for simplified physical parametrization |
---|
379 | ! of Meteo-France |
---|
380 | ! ----------------------------------------------------------------- |
---|
381 | |
---|
382 | LSIMPH=.FALSE. |
---|
383 | LTRAJPS=.FALSE. |
---|
384 | LTRAJPST=.FALSE. |
---|
385 | LSMOOTHD=.FALSE. |
---|
386 | LSMOOTHA=.FALSE. |
---|
387 | LSMOOTHB=.FALSE. |
---|
388 | LCLOUDS=.FALSE. |
---|
389 | |
---|
390 | LCVRASP=.FALSE. |
---|
391 | LGWDSP=.FALSE. |
---|
392 | LRAYSP=.FALSE. |
---|
393 | LSTRASP=.FALSE. |
---|
394 | LVDIFSP=.FALSE. |
---|
395 | LRRMESSP=.FALSE. |
---|
396 | |
---|
397 | LRCOEF=.FALSE. |
---|
398 | LTLADDIA=.FALSE. |
---|
399 | LGLOBRAD=.FALSE. |
---|
400 | |
---|
401 | !* 1.2.1 Set default values for ECMWF physics package |
---|
402 | ! -------------------------------------------- |
---|
403 | |
---|
404 | LEPHYS=.FALSE. |
---|
405 | LAGPHY=.TRUE. |
---|
406 | |
---|
407 | LECOND=.FALSE. |
---|
408 | LEPCLD=.FALSE. |
---|
409 | LECUMF=.FALSE. |
---|
410 | LEDCLD=.FALSE. |
---|
411 | LEEVAP=.TRUE. |
---|
412 | LEGWDG=.FALSE. |
---|
413 | LEOZOC=.FALSE. |
---|
414 | LEQNGT=.FALSE. |
---|
415 | LERADI=.FALSE. |
---|
416 | LERADS=.FALSE. |
---|
417 | LESHCV=.FALSE. |
---|
418 | LESICE=.TRUE. |
---|
419 | LESURF=.FALSE. |
---|
420 | LEVDIF=.FALSE. |
---|
421 | LEOCWA=.FALSE. |
---|
422 | LEOCCO=.FALSE. |
---|
423 | LEOCSA=.FALSE. |
---|
424 | LEMETHOX=.FALSE. |
---|
425 | LERA40=.FALSE. |
---|
426 | LECURR=.FALSE. |
---|
427 | LVDFTRAC=.TRUE. |
---|
428 | LMFTRAC=.TRUE. |
---|
429 | LERAIN=.FALSE. |
---|
430 | LE4ALB=.FALSE. |
---|
431 | RTHRFRTI=0.0_JPRB |
---|
432 | !NPHYINT=0 |
---|
433 | LE4ALB=.FALSE. |
---|
434 | |
---|
435 | !------------------------------------------------------- |
---|
436 | ! pressure above which cloud scheme is not called |
---|
437 | ! !!!WARNING!!! this has to be in the part of the domain |
---|
438 | ! where the pure pressure level grid is used, otherwise |
---|
439 | ! the code is not bit-reproducible!!! |
---|
440 | ! Don't call the cloud scheme for pressures lower than 1hPa |
---|
441 | !RCLDTOPP=100.0_JPRB |
---|
442 | |
---|
443 | !-------------------------------------------------------- |
---|
444 | |
---|
445 | !* 1.2.2 Set-up linearized physical parametrization of ECMWF |
---|
446 | ! --------------------------------------------------- |
---|
447 | |
---|
448 | !LETRAJP = .FALSE. |
---|
449 | !LETRAJPT= .FALSE. |
---|
450 | !LERADI2 = .FALSE. |
---|
451 | !LERADS2 = .FALSE. |
---|
452 | !LERADSW2= .FALSE. |
---|
453 | !LERADN2 = .FALSE. |
---|
454 | !LERADFL2= .FALSE. |
---|
455 | !LEDCLD2 = .FALSE. |
---|
456 | !LENCLD2 = .FALSE. |
---|
457 | !LEVAPLS2= .FALSE. |
---|
458 | !LEVDIF2 = .FALSE. |
---|
459 | !LEGWDG2 = .FALSE. |
---|
460 | !LECUMF2 = .FALSE. |
---|
461 | !LECUBM2 = .FALSE. |
---|
462 | !LECOND2 = .FALSE. |
---|
463 | !LEQNGT2 = .FALSE. |
---|
464 | !LESURF2 = .FALSE. |
---|
465 | !LEKPERT = .FALSE. |
---|
466 | !LNCLIN = .FALSE. |
---|
467 | !LREGCL = .FALSE. |
---|
468 | !LTRACLNPH = .FALSE. |
---|
469 | |
---|
470 | ! No perturbation of surface arrays |
---|
471 | !LENOPERT = .TRUE. |
---|
472 | |
---|
473 | !* Packing parameters |
---|
474 | ! ------------------- |
---|
475 | !NPCKFT95 = 1 |
---|
476 | !NEXPBT95 = 6 |
---|
477 | |
---|
478 | ! LOGICAL FOR THE VERT DIFF SCHEME VDIFLCZ USED IN CONF 601 |
---|
479 | |
---|
480 | LSPHLC = .FALSE. |
---|
481 | LVDFLC = .FALSE. |
---|
482 | LVDFDS = .TRUE. |
---|
483 | LSDRLC = .TRUE. |
---|
484 | LSDRDS = .FALSE. |
---|
485 | LCZDEB = .FALSE. |
---|
486 | LZMCON = .TRUE. |
---|
487 | LKEXP = .TRUE. |
---|
488 | ALPHA = 3._JPRB |
---|
489 | AH0 = 1000.0_JPRB |
---|
490 | USTARL = 0.5_JPRB |
---|
491 | USTARS = 0.2_JPRB |
---|
492 | ALANDZ0 = 0.05_JPRB |
---|
493 | ASEAZ0 = 0.0005_JPRB |
---|
494 | |
---|
495 | NSTPW=2 |
---|
496 | ! NSTPW=30 |
---|
497 | |
---|
498 | LWCOU=.FALSE. |
---|
499 | LWCOU2W=.FALSE. |
---|
500 | |
---|
501 | ! Setup for 3 degree resolution wave model |
---|
502 | |
---|
503 | ! RNORTW= 72.0 |
---|
504 | ! RSOUTW=-63.0 |
---|
505 | ! RDEGREW=3.0 |
---|
506 | |
---|
507 | ! Setup for 1.5 degree resolution wave model |
---|
508 | |
---|
509 | RNORTW= 81.0_JPRB |
---|
510 | RSOUTW=-81.0_JPRB |
---|
511 | RDEGREW=1.5_JPRB |
---|
512 | |
---|
513 | ! 1.3 Modify default values according to LECMWF |
---|
514 | |
---|
515 | IF (LECMWF) THEN |
---|
516 | LEPCLD=.TRUE. |
---|
517 | LEVDIF=.TRUE. |
---|
518 | LEOCWA=.FALSE. |
---|
519 | LEOCCO=.FALSE. |
---|
520 | LEOCSA=.TRUE. |
---|
521 | LESURF=.TRUE. |
---|
522 | LECOND=.FALSE. |
---|
523 | LECUMF=.TRUE. |
---|
524 | LEEVAP=.TRUE. |
---|
525 | LEGWDG=.TRUE. |
---|
526 | LEOZOC=.TRUE. |
---|
527 | LEQNGT=.TRUE. |
---|
528 | LERADI=.TRUE. |
---|
529 | LERADS=.TRUE. |
---|
530 | LESICE=.TRUE. |
---|
531 | LEDCLD=.TRUE. |
---|
532 | LEO3CH=.FALSE. |
---|
533 | LECO2DIU=.FALSE. |
---|
534 | LEMETHOX=.TRUE. |
---|
535 | IF(NCONF == 1) THEN |
---|
536 | LEPHYS=.TRUE. |
---|
537 | ENDIF |
---|
538 | IF(NCONF == 131) THEN |
---|
539 | ! LERADI2 = .TRUE. |
---|
540 | ! LERADS2 = .TRUE. |
---|
541 | ! LEVDIF2 = .TRUE. |
---|
542 | ! LEGWDG2 = .TRUE. |
---|
543 | ! LECUMF2 = .TRUE. |
---|
544 | ! LECOND2 = .TRUE. |
---|
545 | ! IF(L131TL) THEN |
---|
546 | ! LEPHYS=.TRUE. |
---|
547 | ! LECOND=.TRUE. |
---|
548 | ! LEPCLD=.FALSE. |
---|
549 | ! ENDIF |
---|
550 | LSPHLC=.TRUE. |
---|
551 | LVDFLC=.TRUE. |
---|
552 | LSDRLC=.TRUE. |
---|
553 | LZMCON=.TRUE. |
---|
554 | LKEXP =.TRUE. |
---|
555 | ENDIF |
---|
556 | IF (NCONF == 401 .OR. NCONF == 501) THEN |
---|
557 | LEPHYS = .TRUE. |
---|
558 | LECOND = .TRUE. |
---|
559 | LEPCLD = .FALSE. |
---|
560 | |
---|
561 | ! LETRAJP = .TRUE. |
---|
562 | ! LERADI2 = .TRUE. |
---|
563 | ! LERADS2 = .TRUE. |
---|
564 | ! LEVDIF2 = .TRUE. |
---|
565 | ! LEGWDG2 = .TRUE. |
---|
566 | ! LECUMF2 = .TRUE. |
---|
567 | ! LECOND2 = .TRUE. |
---|
568 | ENDIF |
---|
569 | |
---|
570 | IF(NCONF == 601.OR.NCONF == 801) THEN |
---|
571 | |
---|
572 | ! Full physics when computing the trajectory |
---|
573 | |
---|
574 | LEPHYS=.TRUE. |
---|
575 | |
---|
576 | ! Simple scheme for TL and ADJ |
---|
577 | |
---|
578 | LSPHLC = .TRUE. |
---|
579 | LVDFLC = .TRUE. |
---|
580 | LVDFDS = .TRUE. |
---|
581 | LSDRLC = .TRUE. |
---|
582 | LSDRDS = .TRUE. |
---|
583 | LCZDEB = .FALSE. |
---|
584 | LZMCON = .TRUE. |
---|
585 | LKEXP = .TRUE. |
---|
586 | ALPHA = 3._JPRB |
---|
587 | AH0 = 1000.0_JPRB |
---|
588 | USTARL = 0.5_JPRB |
---|
589 | USTARS = 0.2_JPRB |
---|
590 | ALANDZ0 = 0.05_JPRB |
---|
591 | ASEAZ0 = 0.0005_JPRB |
---|
592 | |
---|
593 | ENDIF |
---|
594 | NPHY = JPHYEC |
---|
595 | ELSE |
---|
596 | IF ((NCONF == 1).OR.(NCONF == 131).OR.(NCONF == 401)& |
---|
597 | & .OR.(NCONF == 501).OR.(NCONF == 601)& |
---|
598 | & .OR.(NCONF == 701).OR.(NCONF == 801)) THEN |
---|
599 | LAGPHY=.FALSE. |
---|
600 | LCVCAS=.TRUE. |
---|
601 | LCVDD=.TRUE. |
---|
602 | LCVLIS=.TRUE. |
---|
603 | LCVPP=.TRUE. |
---|
604 | LSRCONT=.FALSE. |
---|
605 | LCVRA=.TRUE. |
---|
606 | LFGEL=.TRUE. |
---|
607 | LGWD=.TRUE. |
---|
608 | LHMTO=.TRUE. |
---|
609 | LMPHYS=.TRUE. |
---|
610 | LNEBN=.TRUE. |
---|
611 | LNEBT=.FALSE. |
---|
612 | LNEBNXR=.FALSE. |
---|
613 | LNEIGE=.TRUE. |
---|
614 | LRAY=.TRUE. |
---|
615 | LRAYLU=.TRUE. |
---|
616 | LRAYPL=.TRUE. |
---|
617 | LRRMES=.TRUE. |
---|
618 | LSFHYD=.TRUE. |
---|
619 | LSOLV=.TRUE. |
---|
620 | LSRCON=.TRUE. |
---|
621 | LSTRA=.TRUE. |
---|
622 | LTHERMO=.TRUE. |
---|
623 | LVDIF=.TRUE. |
---|
624 | NPHY = JPHYMF |
---|
625 | IF(LAROME.AND..NOT.LFPOS) THEN |
---|
626 | !extinction of MF phsic's keys for arome's run |
---|
627 | !lfpos is added for 927 confs for example. |
---|
628 | LCVRA=.FALSE. |
---|
629 | LGWD=.FALSE. |
---|
630 | LGWDC=.FALSE. |
---|
631 | LNEBCO=.FALSE. |
---|
632 | LNEBN=.FALSE. |
---|
633 | LNEBR=.FALSE. |
---|
634 | LNEBT=.FALSE. |
---|
635 | LOZONE=.FALSE. |
---|
636 | LRAY=.FALSE. |
---|
637 | LRAYLU=.FALSE. |
---|
638 | LREWS=.FALSE. |
---|
639 | LRAYPL=.FALSE. |
---|
640 | LRAYFM=.FALSE. |
---|
641 | LRAYFM15=.FALSE. |
---|
642 | LRRMES=.FALSE. |
---|
643 | LSFHYD=.FALSE. |
---|
644 | LSNV=.FALSE. |
---|
645 | LSOLV=.FALSE. |
---|
646 | LFGEL=.FALSE. |
---|
647 | LSTRA=.FALSE. |
---|
648 | LSTRAS=.FALSE. |
---|
649 | LVDIF=.FALSE. |
---|
650 | !initialisation of AROME's physic ones |
---|
651 | LMPA=.TRUE. |
---|
652 | LMICRO=.FALSE. |
---|
653 | LTURB=.FALSE. |
---|
654 | LMSE=.FALSE. |
---|
655 | LKFBCONV=.FALSE. |
---|
656 | LUSECHEM=.FALSE. |
---|
657 | LKFBD=.FALSE. |
---|
658 | LKFBS=.FALSE. |
---|
659 | LUSECHEM=.FALSE. |
---|
660 | LORILAM=.FALSE. |
---|
661 | LRDUST=.FALSE. |
---|
662 | NPHY = JPHYARO |
---|
663 | ENDIF |
---|
664 | ENDIF |
---|
665 | ENDIF |
---|
666 | |
---|
667 | ! ------------------------------------------------------------------ |
---|
668 | |
---|
669 | !* 2. Modify default values. |
---|
670 | ! ---------------------- |
---|
671 | |
---|
672 | ! Ce qui concerne NAMPHY commente par MPL le 14.04.09 |
---|
673 | !CALL POSNAM(NULNAM,'NAMPHY') |
---|
674 | !READ(NULNAM,NAMPHY) |
---|
675 | |
---|
676 | ! Ce qui concerne NAMARPHY commente par MPL le 24.11.08 |
---|
677 | !CALL POSNAM(NULNAM,'NAMARPHY') |
---|
678 | !READ(NULNAM,NAMARPHY) |
---|
679 | !IF(LMSE) THEN |
---|
680 | ! LSOLV=.FALSE. |
---|
681 | ! LFGEL=.FALSE. |
---|
682 | ! LSNV=.FALSE. |
---|
683 | ! LVGSN=.FALSE. |
---|
684 | ! WRITE(NULOUT,'('' INFO -old isba-lsolv,lfgel,lsnv,lvgsn- reset to .F. '', & |
---|
685 | ! &'' when using lground i.e. surfex '')') |
---|
686 | !ENDIF |
---|
687 | |
---|
688 | NEPHYS_PCFULL=3 |
---|
689 | |
---|
690 | ! Ce qui concerne NAEPHY commente par MPL le 14.04.09 |
---|
691 | !CALL POSNAM(NULNAM,'NAEPHY') |
---|
692 | !READ(NULNAM,NAEPHY) |
---|
693 | |
---|
694 | IF(LPC_FULL)THEN |
---|
695 | IF(NEPHYS_PCFULL < 2 .OR.NEPHYS_PCFULL > 3)THEN |
---|
696 | CALL ABOR1(' SU0PHY: NEPHYS_PCFULL') |
---|
697 | ENDIF |
---|
698 | ELSE |
---|
699 | NEPHYS_PCFULL=3 |
---|
700 | ENDIF |
---|
701 | |
---|
702 | IF( NCONF == 201.OR.NCONF == 202 & |
---|
703 | & .OR.NCONF == 421.OR.NCONF == 422 & |
---|
704 | & .OR.NCONF == 521.OR.NCONF == 522 )THEN |
---|
705 | LREASUR=.FALSE. |
---|
706 | ENDIF |
---|
707 | !IF(.NOT.(LEPHYS.OR.LMPHYS)) THEN |
---|
708 | ! LAGPHY=.FALSE. |
---|
709 | ! LSLPHY=.FALSE. |
---|
710 | ! WRITE(NULOUT,'('' INFO - LSLPHY RESET TO .FALSE. '')') |
---|
711 | !ENDIF |
---|
712 | IF(LEPCLD) THEN |
---|
713 | LECOND=.FALSE. |
---|
714 | ENDIF |
---|
715 | IF(LAGPHY.AND.NDPSFI /= 0) THEN |
---|
716 | NDPSFI=0 |
---|
717 | WRITE(NULOUT,'('' WARNING - NDPSFI RESET TO 0 '')') |
---|
718 | ENDIF |
---|
719 | |
---|
720 | ! Commente par MPL 24.11.08 |
---|
721 | !CALL POSNAM(NULNAM,'NAPHLC') |
---|
722 | !READ(NULNAM,NAPHLC) |
---|
723 | |
---|
724 | ! Commente par MPL 24.11.08 |
---|
725 | !CALL POSNAM (NULNAM,'NAMTRAJP') |
---|
726 | !READ (NULNAM,NAMTRAJP) |
---|
727 | |
---|
728 | ! Commente par MPL 24.11.08 |
---|
729 | !CALL POSNAM(NULNAM,'NAMSIMPHL') |
---|
730 | !READ(NULNAM,NAMSIMPHL) |
---|
731 | |
---|
732 | ! Commente par MPL 24.11.08 |
---|
733 | !CALL POSNAM(NULNAM,'NAMRCOEF') |
---|
734 | !READ(NULNAM,NAMRCOEF) |
---|
735 | |
---|
736 | !------------------------------------------------- |
---|
737 | ! Initialize profile extractions for the Single Column Model . |
---|
738 | !------------------------------------------------- |
---|
739 | |
---|
740 | CALL SUSCM(KULOUT) |
---|
741 | |
---|
742 | ! ------------------------------------------------------------------ |
---|
743 | |
---|
744 | !* 3. Do tests of consistency. |
---|
745 | ! ------------------------ |
---|
746 | |
---|
747 | IERR=0 |
---|
748 | |
---|
749 | ! * Test that adequate physics is activated when at least one of the |
---|
750 | ! options LRETCFOU, LWRTCFOU, LRCOEF,is set to .TRUE. |
---|
751 | IF( LWRTCFOU .AND. ((.NOT.LMPHYS).OR.LEPHYS.OR.LAGPHY) ) THEN |
---|
752 | IERR=IERR+1 |
---|
753 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
754 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
755 | & 'LWRTC, LWRTCFOU ',& |
---|
756 | & 'require the following options for physics:' |
---|
757 | WRITE(KULOUT,'(1X,A)') ' - LMPHYS=.TRUE. ' |
---|
758 | WRITE(KULOUT,'(1X,A)') ' - LEPHYS=.FALSE. ' |
---|
759 | WRITE(KULOUT,'(1X,A)') ' - LAGPHY=.FALSE. ' |
---|
760 | IF(.NOT.LRAYSP) THEN |
---|
761 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: option ',& |
---|
762 | & ' LWRTCFOU ',& |
---|
763 | & 'require the following option for simplified physics:' |
---|
764 | WRITE(KULOUT,'(1X,A)') ' - LRAYSP=.TRUE. ' |
---|
765 | ENDIF |
---|
766 | ENDIF |
---|
767 | IF( LRETCFOU .AND. ((.NOT.(LMPHYS.OR.LSIMPH)).OR.LEPHYS.OR.LAGPHY) ) THEN |
---|
768 | IERR=IERR+1 |
---|
769 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
770 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: option ',& |
---|
771 | & ' LRETCFOU ',& |
---|
772 | & 'require the following options for physics:' |
---|
773 | WRITE(KULOUT,'(1X,A)') ' - LMPHYS=.TRUE. or LSIMPH=.TRUE.' |
---|
774 | WRITE(KULOUT,'(1X,A)') ' - LEPHYS=.FALSE. ' |
---|
775 | WRITE(KULOUT,'(1X,A)') ' - LAGPHY=.FALSE. ' |
---|
776 | ENDIF |
---|
777 | IF( LRCOEF .AND. ((.NOT.LMPHYS).OR.LEPHYS.OR.LAGPHY) ) THEN |
---|
778 | IERR=IERR+1 |
---|
779 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
780 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
781 | & 'LRCOEF ',& |
---|
782 | & 'require the following options for physics:' |
---|
783 | WRITE(KULOUT,'(1X,A)') ' - LMPHYS=.TRUE. ' |
---|
784 | WRITE(KULOUT,'(1X,A)') ' - LEPHYS=.FALSE. ' |
---|
785 | WRITE(KULOUT,'(1X,A)') ' - LAGPHY=.FALSE. ' |
---|
786 | IF(.NOT.LRAYSP) THEN |
---|
787 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
788 | & 'LRCOEF ',& |
---|
789 | & 'require the following option for simplified physics:' |
---|
790 | WRITE(KULOUT,'(1X,A)') ' - LRAYSP=.TRUE. ' |
---|
791 | ENDIF |
---|
792 | ENDIF |
---|
793 | |
---|
794 | ! * Test that options LRETCFOU, LWRTCFOU are set to .FALSE. |
---|
795 | ! when at least LRCOEF=.TRUE. |
---|
796 | IF( (LRCOEF) .AND. (LRETCFOU.OR.LWRTCFOU) ) THEN |
---|
797 | IERR=IERR+1 |
---|
798 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
799 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
800 | & 'LRCOEF ',& |
---|
801 | & 'require that:' |
---|
802 | WRITE(KULOUT,'(1X,A)') ' - LRETCFOU=.FALSE. ' |
---|
803 | WRITE(KULOUT,'(1X,A)') ' - LWRTCFOU=.FALSE. ' |
---|
804 | ENDIF |
---|
805 | |
---|
806 | ! * Test that option LSRCONT is set to .FALSE. when LSRCON=.FALSE. |
---|
807 | IF( (LSRCONT) .AND. (.NOT.LSRCON) ) THEN |
---|
808 | IERR=IERR+1 |
---|
809 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
810 | WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
811 | & 'LSRCONT ',& |
---|
812 | & 'require that:' |
---|
813 | WRITE(KULOUT,'(1X,A)') ' - LSRCON=.TRUE. ' |
---|
814 | ENDIF |
---|
815 | |
---|
816 | ! * Use NDPSFI=1 when not available or inconsistent with some other options? |
---|
817 | !IF(LGWADV .AND. (NDPSFI==1)) THEN |
---|
818 | ! * these two options actually can run together on an informatic |
---|
819 | ! point of view, but the current assumptions done with LGWADV=T |
---|
820 | ! are that a particle which is on the Earth surface remains |
---|
821 | ! on the Earth surface; this is equivalent to assume that "etadot_surf" |
---|
822 | ! is always zero. This condition is satisfied when NDPSFI=0 |
---|
823 | ! but not when NDPSFI=1 which gives a non-zero value to "etadot_surf". |
---|
824 | ! So one forbids combination "LGWADV .AND. (NDPSFI==1)" which leads |
---|
825 | ! to inconsistencies in the model at the surface. |
---|
826 | ! IERR=IERR+1 |
---|
827 | ! WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
828 | ! WRITE(KULOUT,'(1X,A,A,A)') ' SU0PHY: options ',& |
---|
829 | ! & 'NDPSFI=1 ',& |
---|
830 | ! & 'require that:' |
---|
831 | ! WRITE(KULOUT,'(1X,A)') ' - LGWADV=.FALSE. ' |
---|
832 | !ENDIF |
---|
833 | |
---|
834 | ! TESTS FOR ALARO-0 (cloud) |
---|
835 | IF (LPIL.AND..NOT.LCONDWT) THEN |
---|
836 | IERR=IERR+1 |
---|
837 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
838 | WRITE(KULOUT,'(1X,A)') ' SU0PHY: LPIL requires LCONDWT ' |
---|
839 | ENDIF |
---|
840 | |
---|
841 | ! TESTS FOR ALARO-0 (prognostic convection) |
---|
842 | IF (LCVPRO) THEN |
---|
843 | LCDDPRO=.TRUE. |
---|
844 | IF (NCONF /= 1)THEN |
---|
845 | WRITE(KULOUT,'(1X, A)') 'WARNING: LCVPRO requires NCONF=1' |
---|
846 | LCVPRO=.FALSE. |
---|
847 | LCDDPRO=.FALSE. |
---|
848 | ENDIF |
---|
849 | ENDIF |
---|
850 | |
---|
851 | IF (LPHSPSH .AND. .NOT.(L3MT.OR.LSTRAPRO)) THEN |
---|
852 | ! * For the time being, LPHSPSH requires L3MT.OR.LSTRAPRO (missing code |
---|
853 | ! in CPTEND in the other cases, to be coded later). |
---|
854 | IERR=IERR+1 |
---|
855 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
856 | WRITE(KULOUT,'(1X,A)') ' SU0PHY: LPHSPSH requires L3MT.OR.LSTRAPRO ' |
---|
857 | ENDIF |
---|
858 | |
---|
859 | ! * Use simplified physics with LMPA=T? |
---|
860 | IF(LMPA.AND.LSIMPH) THEN |
---|
861 | ! * Simplified physics is not consistent with AROME physics |
---|
862 | ! concerning most of the physical parameterizations. |
---|
863 | IERR=IERR+1 |
---|
864 | WRITE(KULOUT,'(1X,A,I3,A)') ' ! SU0PHY: ERROR NR ',IERR,' !!!' |
---|
865 | WRITE(KULOUT,'(1X,A)') ' SU0PHY: LMPA and LSIMPH cannot be both to T.' |
---|
866 | ENDIF |
---|
867 | |
---|
868 | |
---|
869 | IF (IERR >= 1) THEN |
---|
870 | CALL FLUSH(KULOUT) |
---|
871 | CALL ABOR1(' SU0PHY: ABOR1 CALLED') |
---|
872 | ENDIF |
---|
873 | |
---|
874 | ! ------------------------------------------------------------------ |
---|
875 | |
---|
876 | !* 4. Print final values. |
---|
877 | ! ------------------- |
---|
878 | |
---|
879 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOMPHY '')') |
---|
880 | WRITE(UNIT=KULOUT,FMT='('' LMPHYS= '',L5,'' LREASUR = '',L5)')LMPHYS,LREASUR |
---|
881 | if (1==0) then !!!!! A REVOIR (MPL) |
---|
882 | WRITE(UNIT=KULOUT,FMT='('' LCONDWT='',L5,'' LCVPP = '',L5,& |
---|
883 | & '' LCVPPKF = '',L5,& |
---|
884 | & '' LNEIGE = '',L5,'' LRNUMX = '',L5,'' LCLSATUR = '',L5,'' LHUNEG = '',L5,& |
---|
885 | & '' LVOIGT = '',L5,'' LVFULL = '',L5,& |
---|
886 | & '' L2PHYS = '',L5,& |
---|
887 | & '' LCVDD = '',L5,'' LCAPE= '',L5,'' LSRCON = '',L5,& |
---|
888 | & '' LCVLIS = '',L5,'' LCVCAS= '',L5,'' LSRCONT= '',L5,'' LO3ABC= '',L5, & |
---|
889 | & '' LAEROSEA = '',L5,'' LAEROLAN = '',L5,'' LAEROSOO = '',L5, & |
---|
890 | & '' LAERODES = '',L5,'' LAEROVOL = '',L5,'' LAEROSUL = '',L5, & |
---|
891 | & '' LRELAXT = '',L5,'' LRELAXW = '',L5,& |
---|
892 | & '' LSLC = '',L5,'' LRRGUST= '',L5, & |
---|
893 | & '' LNEWD = '',L5,'' LGLT= '',L5,'' LDIFCONS= '',L5, & |
---|
894 | & '' LECT = '',L5,'' LECTFL = '',L5,'' LPBLE = '',L5,'' LCVPGY= '',L5, & |
---|
895 | & '' LPTKE= '',L5,'' L3MT= '',L5 & |
---|
896 | & )')& |
---|
897 | & LCONDWT,LCVPP,LCVPPKF,LNEIGE,LRNUMX,LCLSATUR,LHUNEG,LVOIGT,LVFULL,L2PHYS,LCVDD,& |
---|
898 | & LCAPE,LSRCON,LCVLIS,LCVCAS,LSRCONT,LO3ABC,LAEROSEA,LAEROLAN,LAEROSOO, & |
---|
899 | & LAERODES,LAEROVOL,LAEROSUL,LRELAXT,LRELAXW,LSLC,LRRGUST,LNEWD,LGLT,& |
---|
900 | & LDIFCONS,LECT,LECTFL,LPBLE,LCVPGY,LPTKE,L3MT |
---|
901 | else |
---|
902 | print*,'OKL' |
---|
903 | print*,'LOGICS',& |
---|
904 | & LCONDWT,LCVPP,LCVPPKF,LNEIGE,LRNUMX,LCLSATUR,LHUNEG,LVOIGT,LVFULL,L2PHYS,LCVDD,& |
---|
905 | & LCAPE,LSRCON,LCVLIS,LCVCAS,LSRCONT,LO3ABC,LAEROSEA,LAEROLAN,LAEROSOO, & |
---|
906 | & LAERODES,LAEROVOL,LAEROSUL,LRELAXT,LRELAXW,LSLC,LRRGUST,LNEWD,LGLT,& |
---|
907 | & LDIFCONS,LECT,LECTFL,LPBLE,LCVPGY,LPTKE,L3MT |
---|
908 | endif |
---|
909 | WRITE(UNIT=KULOUT,FMT='('' LCVRA = '',L5 ,'' LFPCOR = '',L5& |
---|
910 | & ,'' LNOIAS = '',L5 & |
---|
911 | & ,'' LGWD = '',L5,'' LHMTO = '',L5,'' LRAY = '',L5 & |
---|
912 | & ,'' LSFHYD = '',L5,'' LSTRA = '',L5,'' LTHERMO = '',L5,/& |
---|
913 | & ,'' LVDIF = '',L5,'' LNEBCO = '',L5,'' LNEBT = '',L5,/& |
---|
914 | & ,'' LRRMES = '',L5,'' LOZONE = '',L5,'' LNEBR = '',L5,/& |
---|
915 | & ,'' LSNV = '',L5,'' LSOLV = '',L5,'' LFGEL = '',L5,/& |
---|
916 | & ,'' LVGSN ='',L5,'' LND2DIFF ='',L5,/& |
---|
917 | & ,'' LNEBN = '',L5,'' LNEBNXR = '',L5,'' LQXRTGH = '',L5,'' LSTRAS = '',L5,/& |
---|
918 | & ,'' LHUCN = '',L5,'' LGWDC = '',L5,'' LRAYFM = '',L5,'' LRAYFM15= '',L5,/& |
---|
919 | & ,'' LRAYLU = '',L5,'' LREWS = '',L5,'' LRPROX = '',L5 /& |
---|
920 | & ,'' LRMIX = '',L5,'' LRSTAB = '',L5,''LRAUTOEV = '',L5 /& |
---|
921 | & ,'' LRTPP = '',L5,'' LRTDL = '',L5,'' LRAYPL = '',L5 & |
---|
922 | & )')& |
---|
923 | & LCVRA,LFPCOR,LNOIAS,LGWD,LHMTO,LRAY,LSFHYD,LSTRA,LTHERMO,LVDIF,LNEBCO,& |
---|
924 | & LNEBT,LRRMES,LOZONE,LNEBR,LSNV,LSOLV,LFGEL,LVGSN,LND2DIFF,& |
---|
925 | & LNEBN,LNEBNXR,LQXRTGH,LSTRAS,LHUCN,LGWDC,& |
---|
926 | & LRAYFM,LRAYFM15,LRAYLU,LREWS,& |
---|
927 | & LRPROX,LRMIX,LRSTAB,LRAUTOEV,LRTPP,LRTDL,LRAYPL |
---|
928 | WRITE(UNIT=KULOUT,FMT='('' NBITER = '',I2,'' NDPSFI = '',I2,'' NPHYREP = '',I2)') & |
---|
929 | & NBITER,NDPSFI,NPHYREP |
---|
930 | WRITE(UNIT=KULOUT,FMT='('' NOIR = '',I2)')NOIR |
---|
931 | !WRITE(UNIT=KULOUT,FMT='('' NPHYINT = '',I2)')NPHYINT |
---|
932 | |
---|
933 | WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - - -'')') |
---|
934 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOMPHY'')') |
---|
935 | WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - - -'')') |
---|
936 | WRITE(UNIT=KULOUT,FMT='(& |
---|
937 | & '' LECT = '',L5,'' LAJUCV = '',L5,/, & |
---|
938 | & '' LCVRAV3 = '',L5, & |
---|
939 | & '' LNEBGR = '',L5,'' LNEBGY = '',L5,'' LBCCOND = '',L5 & |
---|
940 | & )') LECT, LAJUCV, & |
---|
941 | & LCVRAV3, LNEBGR, LNEBGY, LBCCOND |
---|
942 | |
---|
943 | WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - -'')') |
---|
944 | WRITE(UNIT=KULOUT,FMT='('' MICROPHYSICS KEY '')') |
---|
945 | WRITE(UNIT=KULOUT,FMT='('' - - - - - - - - -'')') |
---|
946 | WRITE(UNIT=KULOUT,FMT='( '' LPROCLD = '',L5 & |
---|
947 | &,'' LEVAPP = '',L5,'' LCOLLEC = '',L5,'' LNSMLIS = '',L5 & |
---|
948 | &,'' LADJCLD = '',L5,'' LAUTONEB = '',L5,'' LSSD = '',L5)')& |
---|
949 | &LPROCLD,LEVAPP,LCOLLEC,LNSMLIS,LADJCLD,LAUTONEB,LSSD |
---|
950 | |
---|
951 | WRITE(UNIT=KULOUT,FMT='('' ALARO-0 cloud '')') |
---|
952 | WRITE(UNIT=KULOUT,FMT='('' LPIL = '',L5,'' LSTRAPRO = '',L5 & |
---|
953 | &,'' LNEWSTAT = '',L5 & |
---|
954 | &,'' LPHSPSH = '',L5 ,'' LSMROT = '',L5 & |
---|
955 | &,'' LSMTPS = '',L5 ,'' LSMNIMBT = '',L5 & |
---|
956 | &,'' L1DRHCRI = '',L5 ,'' LGWRHCRI = '',L5 & |
---|
957 | &,'' NSMTBOT = '',I2,'' NSMDNEB = '',I2 & |
---|
958 | &,'' NPRAG = '',I2,'' NPRAC = '',I2 & |
---|
959 | &,'' NPRRI = '',I2 & |
---|
960 | &) ')LPIL,LSTRAPRO,LNEWSTAT,LPHSPSH,LSMROT,LSMTPS, LSMNIMBT, & |
---|
961 | & L1DRHCRI, LGWRHCRI,& |
---|
962 | & NSMTBOT,NSMDNEB, NPRAG,NPRAC,NPRRI |
---|
963 | |
---|
964 | WRITE(UNIT=KULOUT,FMT='('' ALARO-0 prognostic convection '')') |
---|
965 | WRITE(UNIT=KULOUT,& |
---|
966 | &FMT='('' LCVPRO ='',L1,'' LCDDPRO ='',L1,'' LSCMF ='',L1)') & |
---|
967 | & LCVPRO,LCDDPRO,LSCMF |
---|
968 | |
---|
969 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOMSIMPHL '')') |
---|
970 | WRITE(UNIT=KULOUT,FMT='('' LSIMPH= '',L5,'' LTRAJPS = '',L5 & |
---|
971 | & ,'' LTRAJPST = '',L5 & |
---|
972 | & ,'' LSMOOTHD = '',L5,'' LSMOOTHA = '',L5,'' LSMOOTHB = '',L5 & |
---|
973 | & ,'' LCLOUDS = '',L5 )')& |
---|
974 | & LSIMPH,LTRAJPS,LTRAJPST,LSMOOTHD,LSMOOTHA, & |
---|
975 | & LSMOOTHB,LCLOUDS |
---|
976 | WRITE(UNIT=KULOUT,FMT='('' LCVRASP = '',L5,'' LGWDSP = '',L5 & |
---|
977 | & ,'' LRAYSP = '',L5,'' LSTRASP = '',L5,'' LVDIFSP = '',L5 & |
---|
978 | & ,'' LRRMESSP = '',L5)')& |
---|
979 | & LCVRASP,LGWDSP,LRAYSP,LSTRASP,LVDIFSP,LRRMESSP |
---|
980 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOMRCOEF '')') |
---|
981 | WRITE(UNIT=KULOUT,FMT='('' LRCOEF= '',L5 & |
---|
982 | & ,'' LTLADDIA = '',L5,'' LGLOBRAD = '',L5)')& |
---|
983 | & LRCOEF,LTLADDIA,LGLOBRAD |
---|
984 | |
---|
985 | ! TEST OF CONSISTENCY FOR RADIATION SCHEMES |
---|
986 | |
---|
987 | IF(LMPHYS) THEN |
---|
988 | IF((LRAY.AND.LRAYFM).OR.(LRAY.AND.LRAYFM15).OR.(LRAYFM15.AND.LRAYFM)) THEN |
---|
989 | WRITE(NULOUT,'('' WARNING - 2 RADIATION SCHEMES... '')') |
---|
990 | CALL ABOR1('SU0PHY: ABOR1 CALLED') |
---|
991 | ENDIF |
---|
992 | ENDIF |
---|
993 | |
---|
994 | ! TESTS OF CONSISTENCY INSIDE YOMPHY |
---|
995 | |
---|
996 | IF(LSTRAS.AND.LRNUMX)THEN |
---|
997 | WRITE(NULOUT,FMT='('' ACPLUIS AND LRNUMX ARE NOT COMPATIBLE''& |
---|
998 | & ,'' FOR THE MOMENT'')') |
---|
999 | CALL ABOR1('SU0PHY: ABOR1 CALLED') |
---|
1000 | ENDIF |
---|
1001 | |
---|
1002 | ! TESTS OF CONSISTENCY BETWEEN YOMPHY AND INITIALIZATION |
---|
1003 | |
---|
1004 | !IF (.NOT.LMPHYS.AND..NOT.LEPHYS) THEN |
---|
1005 | ! Digital Filter Initialisation |
---|
1006 | ! IF ((NEINI == 2.OR.NEINI == 4).AND.NEDFI >= 2) THEN |
---|
1007 | ! IF (NEDFI <= 5) THEN |
---|
1008 | ! WRITE(NULOUT,FMT='('' YOMPHY AND YEMDFI ARE NOT COMPATIBLE'')') |
---|
1009 | ! CALL ABOR1(' DIABATIC DFI WITHOUT PHYSICS !') |
---|
1010 | ! ELSE |
---|
1011 | ! WRITE(NULOUT,FMT='('' CAUTION : FORWARD DFI WITHOUT PHYSICS'')') |
---|
1012 | ! ENDIF |
---|
1013 | ! ENDIF |
---|
1014 | !ENDIF |
---|
1015 | |
---|
1016 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOMARPHY '')') |
---|
1017 | WRITE(UNIT=KULOUT,FMT='('' LMPA = '',L5, & |
---|
1018 | & '' LMICRO = '',L5,'' LTURB = '',L5, & |
---|
1019 | & '' LMSE = '',L5,'' LKFBCONV = '',L5,& |
---|
1020 | & '' LKFBD = '',L5,'' LKFBS = '',L5,& |
---|
1021 | & '' LUSECHEM = '',L5,'' LORILAM = '',L5,'' LRDUST = '',L5)')& |
---|
1022 | & LMPA,LMICRO,LTURB,LMSE,LKFBCONV,LKFBD,LKFBS,LUSECHEM,& |
---|
1023 | & LORILAM,LRDUST |
---|
1024 | |
---|
1025 | WRITE(UNIT=KULOUT,FMT='('' COMMON YOEPHY '')') |
---|
1026 | WRITE(UNIT=KULOUT,FMT='('' LEPHYS = '',L5, & |
---|
1027 | & '' LECOND = '',L5,'' LECUMF = '',L5 & |
---|
1028 | & )')& |
---|
1029 | & LEPHYS,LECOND,LECUMF |
---|
1030 | !WRITE(NULOUT,'("RCLDTOPP=",F10.2)') RCLDTOPP |
---|
1031 | WRITE(UNIT=KULOUT,FMT='('' LEDCLD = '',L5,'' LEGWDG = '',L5 & |
---|
1032 | & ,'' LEOZOC = '',L5,'' LEQNGT = '',L5 & |
---|
1033 | & ,'' LEO3CH = '',L5)')& |
---|
1034 | & LEDCLD,LEGWDG,LEOZOC,LEQNGT,LEO3CH |
---|
1035 | WRITE(UNIT=KULOUT,FMT='('' LERADI = '',L5 & |
---|
1036 | & ,'' LESHCV = '',L5,'' LESURF = '',L5,'' LEVDIF = '',L5 & |
---|
1037 | & ,'' LEOCWA = '',L5,'' LEOCCO = '',L5,'' LEOCSA = '',L5 & |
---|
1038 | & ,'' LECURR = '',L5,'' RTHRFRTI = '',F7.2 & |
---|
1039 | & )')& |
---|
1040 | & LERADI,LESHCV,LESURF,LEVDIF,LEOCWA,LEOCCO,LEOCSA,LECURR,RTHRFRTI |
---|
1041 | WRITE(UNIT=KULOUT,FMT='('' LEPCLD = '',L5,'' LEMETHOX= '',L5 & |
---|
1042 | & ,'' LE4ALB = '',L5 & |
---|
1043 | & )')& |
---|
1044 | & LEPCLD,LEMETHOX,LE4ALB |
---|
1045 | |
---|
1046 | ! Do not allow storage of trajectory in TL physics if tracers |
---|
1047 | ! are to be included in linearized physics (temporary) |
---|
1048 | !IF (LETRAJP .AND. LETRAJPT .AND. LTRACLNPH) THEN |
---|
1049 | ! WRITE(UNIT=KULOUT,FMT='('' CAUTION : STORAGE OF TRAJECTORY IN LINEAR. PHYSICS NOT YET '')') |
---|
1050 | ! WRITE(UNIT=KULOUT,FMT='('' IMPLEMENTED FOR TRACERS: LETRAJPT WILL BE RESET TO .FALSE. '')') |
---|
1051 | !ENDIF |
---|
1052 | |
---|
1053 | !IF (LETRAJP) THEN |
---|
1054 | ! WRITE(UNIT=KULOUT,FMT='('' ======================== '')') |
---|
1055 | ! WRITE(UNIT=KULOUT,FMT='('' LINEAR PHYSICS ACTIVATED '')') |
---|
1056 | ! WRITE(UNIT=KULOUT,FMT='('' ======================== '')') |
---|
1057 | ! WRITE(UNIT=KULOUT,FMT='('' LERADI2 = '',L4 & |
---|
1058 | ! & ,'' LERADS2 = '',L4 & |
---|
1059 | ! & ,'' LERADSW2= '',L4 & |
---|
1060 | ! & ,'' LERADN2 = '',L4 & |
---|
1061 | ! & ,'' LERADFL2= '',L4 & |
---|
1062 | ! & )')& |
---|
1063 | ! & LERADI2,LERADS2,LERADSW2,LERADN2,LERADFL2 |
---|
1064 | ! WRITE(UNIT=KULOUT,FMT='('' LEDCLD2 = '',L4 & |
---|
1065 | ! & ,'' LENCLD2 = '',L4 & |
---|
1066 | ! & ,'' LEVAPLS2= '',L4 & |
---|
1067 | ! & ,'' LREGCL = '',L4 & |
---|
1068 | ! & ,'' LNCLIN = '',L4 & |
---|
1069 | ! & )')& |
---|
1070 | ! & LEDCLD2,LENCLD2,LEVAPLS2,LREGCL,LNCLIN |
---|
1071 | ! WRITE(UNIT=KULOUT,FMT='('' LECUMF2 = '',L4 & |
---|
1072 | ! & ,'' LECUBM2 = '',L4 & |
---|
1073 | ! & ,'' LECOND2 = '',L4 & |
---|
1074 | ! & )')& |
---|
1075 | ! & LECUMF2,LECUBM2,LECOND2 |
---|
1076 | ! WRITE(UNIT=KULOUT,FMT='('' LEVDIF2 = '',L4 & |
---|
1077 | ! & ,'' LEGWDG2 = '',L4 & |
---|
1078 | ! & ,'' LEQNGT2 = '',L4 & |
---|
1079 | ! & ,'' LESURF2 = '',L4 & |
---|
1080 | ! & )')& |
---|
1081 | ! & LEVDIF2,LEGWDG2,LEQNGT2,LESURF2 |
---|
1082 | ! WRITE(UNIT=KULOUT,FMT='('' LEKPERT = '',L4,'' LENOPERT = '',L4)')& |
---|
1083 | ! & LEKPERT,LENOPERT |
---|
1084 | ! WRITE(UNIT=KULOUT,FMT='('' ======================== '')') |
---|
1085 | ! WRITE(UNIT=KULOUT,FMT='('' LETRAJPT = '',L4)')LETRAJPT |
---|
1086 | ! WRITE(UNIT=KULOUT,FMT='('' ======================== '')') |
---|
1087 | ! WRITE(UNIT=KULOUT,FMT='('' LTRACLNPH = '',L4)')LTRACLNPH |
---|
1088 | ! WRITE(UNIT=KULOUT,FMT='('' ======================== '')') |
---|
1089 | !ELSE |
---|
1090 | ! WRITE(UNIT=KULOUT,FMT='('' ============================ '')') |
---|
1091 | ! WRITE(UNIT=KULOUT,FMT='('' LINEAR PHYSICS NOT ACTIVATED '')') |
---|
1092 | ! WRITE(UNIT=KULOUT,FMT='('' ============================ '')') |
---|
1093 | ! WRITE(UNIT=KULOUT,FMT='('' LENCLD2 = '',L4)')LENCLD2 |
---|
1094 | ! WRITE(UNIT=KULOUT,FMT='('' LEVAPLS2= '',L4)')LEVAPLS2 |
---|
1095 | !ENDIF |
---|
1096 | |
---|
1097 | WRITE(UNIT=KULOUT,FMT='('' LSPHLC = '',L5,'' LVDFLC = '',L5 & |
---|
1098 | & ,'' LVDFDS = '',L5,'' LSDRLC = '',L5,'' LSDRDS = '',L5)')& |
---|
1099 | & LSPHLC,LVDFLC,LVDFDS,LSDRLC,LSDRDS |
---|
1100 | WRITE(UNIT=KULOUT,FMT='('' LCZDEB = '',L5,'' LZMCON = '',L5 & |
---|
1101 | & ,'' LKEXP = '',L5)') LCZDEB,LZMCON,LKEXP |
---|
1102 | WRITE(UNIT=KULOUT,FMT='('' ALPHA = '',E16.6)') ALPHA |
---|
1103 | WRITE(UNIT=KULOUT,FMT='('' AH0 = '',E16.6,''m'')') AH0 |
---|
1104 | WRITE(UNIT=KULOUT,FMT='('' USTARL = '',E16.6,''m s-1'')') USTARL |
---|
1105 | WRITE(UNIT=KULOUT,FMT='('' USTARS = '',E16.6,''m s-1'')') USTARS |
---|
1106 | WRITE(UNIT=KULOUT,FMT='('' ALANDZ0= '',E16.6,''m'')') ALANDZ0 |
---|
1107 | WRITE(UNIT=KULOUT,FMT='('' ASEAZ0 = '',E16.6,''m'')') ASEAZ0 |
---|
1108 | |
---|
1109 | IF (LAGPHY) THEN |
---|
1110 | WRITE(UNIT=KULOUT,FMT='('' LAGPHY = '',L5,'' THE PHYSICS PAC& |
---|
1111 | & KAGE IS CALLED AFTER THE DYNAMICS IN LAGGED MODE'')')LAGPHY |
---|
1112 | ELSE |
---|
1113 | WRITE(UNIT=KULOUT,FMT='('' LAGPHY = '',L5,'' THE PHYSICS PAC& |
---|
1114 | & KAGE IS CALLED BEFORE THE DYNAMICS '')')LAGPHY |
---|
1115 | ENDIF |
---|
1116 | WRITE(UNIT=KULOUT,FMT=*) 'CGMIXLEN=',TRIM(CGMIXLEN) |
---|
1117 | WRITE(UNIT=KULOUT,FMT='('' LPRGML = '',L4)') LPRGML |
---|
1118 | |
---|
1119 | ! ------------------------------------------------------------------ |
---|
1120 | |
---|
1121 | IF (LHOOK) CALL DR_HOOK('SU0PHY',1,ZHOOK_HANDLE) |
---|
1122 | END SUBROUTINE SU0PHY |
---|