source: LMDZ4/branches/LMDZ4-dev/libf/phylmd/conf_phys.F90 @ 1237

Last change on this file since 1237 was 1229, checked in by idelkadi, 15 years ago
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 40.9 KB
Line 
1
2!
3! $Id: conf_phys.F90 1229 2009-08-17 15:11:37Z fairhead $
4!
5!
6!
7
8  subroutine conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, &
9                       ok_LES,&
10                       solarlong0,seuil_inversion, &
11                       fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
12                       iflag_cldcon, &
13                       iflag_ratqs,ratqsbas,ratqshaut, &
14                       ok_ade, ok_aie, aerosol_couple, &
15                       flag_aerosol, new_aod, &
16                       bl95_b0, bl95_b1,&
17                       iflag_thermals,nsplit_thermals,tau_thermals, &
18                       iflag_thermals_ed,iflag_thermals_optflux, &
19                       iflag_coupl,iflag_clos,iflag_wake, read_climoz)
20
21   use IOIPSL
22   USE surface_data
23   USE carbon_cycle_mod, ONLY : carbon_cycle_tr, carbon_cycle_cpl
24
25   implicit none
26
27 include "conema3.h"
28 include "fisrtilp.h"
29 include "nuage.h"
30 include "YOMCST.h"
31 include "YOMCST2.h"
32!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
33include "clesphys.h"
34include "compbl.h"
35include "control.h"
36include "comsoil.h"
37!
38! Configuration de la "physique" de LMDZ a l'aide de la fonction
39! GETIN de IOIPSL
40!
41! LF 05/2001
42!
43
44!
45! type_ocean:      type d'ocean (force, slab, couple)
46! version_ocean:   version d'ocean (opa8/nemo pour type_ocean=couple ou
47!                                   sicOBS pour type_ocean=slab)
48! ok_veget:   type de modele de vegetation
49! ok_journe:  sorties journalieres
50! ok_hf:  sorties haute frequence
51! ok_mensuel: sorties mensuelles
52! ok_instan:  sorties instantanees
53! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
54! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
55!
56
57
58! Sortie:
59  logical              :: ok_newmicro
60  integer              :: iflag_radia
61  logical              :: ok_journe, ok_mensuel, ok_instan, ok_hf
62  logical              :: ok_LES
63  LOGICAL              :: ok_ade, ok_aie, aerosol_couple
64  INTEGER              :: flag_aerosol
65  LOGICAL              :: new_aod
66  REAL                 :: bl95_b0, bl95_b1
67  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut
68  integer              :: iflag_cldcon
69  integer              :: iflag_ratqs
70
71  character (len = 6),SAVE  :: type_ocean_omp, version_ocean_omp, ocean_omp
72  CHARACTER(len = 8),SAVE   :: aer_type_omp
73  logical,SAVE              :: ok_veget_omp, ok_newmicro_omp
74  logical,SAVE        :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
75  logical,SAVE        :: ok_LES_omp   
76  LOGICAL,SAVE        :: ok_ade_omp, ok_aie_omp, aerosol_couple_omp
77  INTEGER, SAVE       :: flag_aerosol_omp
78  LOGICAL, SAVE       :: new_aod_omp
79  REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
80  REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
81  real,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
82  real,SAVE           :: ratqshaut_omp
83  integer,SAVE        :: iflag_radia_omp
84  integer,SAVE        :: iflag_rrtm_omp
85  integer,SAVE        :: iflag_cldcon_omp, ip_ebil_phy_omp
86  integer,SAVE        :: iflag_ratqs_omp
87
88  Real,SAVE           :: f_cdrag_ter_omp,f_cdrag_oce_omp
89  Real,SAVE           :: f_rugoro_omp   
90
91! Local
92  integer              :: numout = 6
93  real                 :: zzz
94
95  real :: seuil_inversion
96  real,save :: seuil_inversion_omp
97
98  integer :: iflag_thermals,nsplit_thermals
99  integer,SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp
100  integer :: iflag_thermals_ed,iflag_thermals_optflux
101  integer,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
102  real :: tau_thermals
103  real,save :: tau_thermals_omp
104  integer :: iflag_coupl
105  integer :: iflag_clos
106  integer :: iflag_wake
107  integer,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
108  integer,SAVE :: iflag_cvl_sigd_omp
109  REAL, SAVE :: supcrit1_omp, supcrit2_omp
110  INTEGER, SAVE :: iflag_mix_omp
111  real, save :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
112
113  REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp,co2_ppm_omp
114  REAL,SAVE :: RCO2_omp,CH4_ppb_omp,RCH4_omp,N2O_ppb_omp,RN2O_omp,CFC11_ppt_omp
115  REAL,SAVE :: RCFC11_omp,CFC12_ppt_omp,RCFC12_omp,epmax_omp
116  LOGICAL,SAVE :: ok_adj_ema_omp
117  INTEGER,SAVE :: iflag_clw_omp
118  REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
119  REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
120  LOGICAL,SAVE :: reevap_ice_omp
121  INTEGER,SAVE :: iflag_pdf_omp
122  REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
123  REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
124  REAL,SAVE :: qsol0_omp
125  REAL      :: solarlong0
126  REAL,SAVE :: solarlong0_omp
127  INTEGER,SAVE :: top_height_omp,overlap_omp
128  REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp
129  LOGICAL,SAVE :: ok_kzmin_omp
130  REAL, SAVE ::  fmagic_omp, pmagic_omp
131  INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
132  Integer,save :: lev_histins_omp, lev_histLES_omp
133  CHARACTER*4, SAVE :: type_run_omp
134  LOGICAL,SAVE :: ok_isccp_omp
135  REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
136  REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
137  REAL,SAVE :: ecrit_ins_omp
138  REAL,SAVE :: ecrit_LES_omp
139  REAL,SAVE :: ecrit_tra_omp
140  REAL,SAVE :: cvl_corr_omp
141  LOGICAL,SAVE :: ok_lic_melt_omp
142!
143  LOGICAL,SAVE :: cycle_diurne_omp,soil_model_omp,new_oliq_omp
144  LOGICAL,SAVE :: ok_orodr_omp, ok_orolf_omp, ok_limitvrai_omp
145  INTEGER, SAVE :: nbapp_rad_omp, iflag_con_omp
146  LOGICAL,SAVE :: ok_strato_omp
147  LOGICAL,SAVE :: ok_hines_omp
148  LOGICAL      :: read_climoz_omp
149  LOGICAL      :: carbon_cycle_tr_omp
150  LOGICAL      :: carbon_cycle_cpl_omp
151
152  logical, intent(out):: read_climoz ! read ozone climatology, OpenMP shared
153!
154
155!$OMP MASTER
156!Config Key  = type_ocean
157!Config Desc = Type d'ocean
158!Config Def  = force
159!Config Help = Type d'ocean utilise: force, slab,couple
160!
161  type_ocean_omp = 'force '
162  call getin('type_ocean', type_ocean_omp)
163!
164!Config Key  = version_ocean
165!Config Desc = Version d'ocean
166!Config Def  = xxxxxx
167!Config Help = Version d'ocean utilise: opa8/nemo/sicOBS/xxxxxx
168!
169  version_ocean_omp = 'xxxxxx'
170  call getin('version_ocean', version_ocean_omp)
171
172!Config Key  = OCEAN
173!Config Desc = Old parameter name for type_ocean
174!Config Def  = yyyyyy
175!Config Help = This is only for testing purpose
176!
177  ocean_omp = 'yyyyyy'
178  call getin('OCEAN', ocean_omp)
179  IF (ocean_omp /= 'yyyyyy') THEN
180     WRITE(numout,*)'ERROR!! Old variable name OCEAN used in parmeter file.'
181     WRITE(numout,*)'Variable OCEAN has been replaced by the variable type_ocean.'
182     WRITE(numout,*)'You have to update your parameter file physiq.def to succed running'
183     CALL abort_gcm('conf_phys','Variable OCEAN no longer existing, use variable name type_ocean',1)
184  END IF
185
186!
187!Config Key  = VEGET
188!Config Desc = Type de modele de vegetation
189!Config Def  = .false.
190!Config Help = Type de modele de vegetation utilise
191!
192  ok_veget_omp = .false.
193  call getin('VEGET', ok_veget_omp)
194!
195!Config Key  = OK_journe
196!Config Desc = Pour des sorties journalieres
197!Config Def  = .false.
198!Config Help = Pour creer le fichier histday contenant les sorties
199!              journalieres
200!
201  ok_journe_omp = .false.
202  call getin('OK_journe', ok_journe_omp)
203!
204!Config Key  = ok_hf
205!Config Desc = Pour des sorties haute frequence
206!Config Def  = .false.
207!Config Help = Pour creer le fichier histhf contenant les sorties
208!              haute frequence ( 3h ou 6h)
209!
210  ok_hf_omp = .false.
211  call getin('ok_hf', ok_hf_omp)
212!
213!Config Key  = OK_mensuel
214!Config Desc = Pour des sorties mensuelles
215!Config Def  = .true.
216!Config Help = Pour creer le fichier histmth contenant les sorties
217!              mensuelles
218!
219  ok_mensuel_omp = .true.
220  call getin('OK_mensuel', ok_mensuel_omp)
221!
222!Config Key  = OK_instan
223!Config Desc = Pour des sorties instantanees
224!Config Def  = .false.
225!Config Help = Pour creer le fichier histins contenant les sorties
226!              instantanees
227!
228  ok_instan_omp = .false.
229  call getin('OK_instan', ok_instan_omp)
230!
231!Config Key  = ok_ade
232!Config Desc = Aerosol direct effect or not?
233!Config Def  = .false.
234!Config Help = Used in radlwsw.F
235!
236  ok_ade_omp = .false.
237  call getin('ok_ade', ok_ade_omp)
238
239!
240!Config Key  = ok_aie
241!Config Desc = Aerosol indirect effect or not?
242!Config Def  = .false.
243!Config Help = Used in nuage.F and radlwsw.F
244!
245  ok_aie_omp = .false.
246  call getin('ok_aie', ok_aie_omp)
247
248!
249!Config Key  = aerosol_couple
250!Config Desc = read aerosol in file or calcul by inca
251!Config Def  = .false.
252!Config Help = Used in physiq.F
253!
254  aerosol_couple_omp = .false.
255  CALL getin('aerosol_couple',aerosol_couple_omp)
256
257!
258!Config Key  = flag_aerosol
259!Config Desc = which aerosol is use for coupled model
260!Config Def  = 1
261!Config Help = Used in physiq.F
262!
263! - flag_aerosol=1 => so4 only (defaut)
264! - flag_aerosol=2 => bc  only
265! - flag_aerosol=3 => pom only
266! - flag_aerosol=4 => seasalt only
267! - flag_aerosol=5 => dust only
268! - flag_aerosol=6 => all aerosol
269
270  flag_aerosol_omp = 1
271  CALL getin('flag_aerosol',flag_aerosol_omp)
272
273! Temporary variable for testing purpose!!
274!Config Key  = new_aod
275!Config Desc = which calcul of aeropt
276!Config Def  = false
277!Config Help = Used in physiq.F
278!
279  new_aod_omp = .true.
280  CALL getin('new_aod',new_aod_omp)
281
282!
283!Config Key  = aer_type
284!Config Desc = Use a constant field for the aerosols
285!Config Def  = scenario
286!Config Help = Used in readaerosol.F90
287!
288  aer_type_omp = 'scenario'
289  call getin('aer_type', aer_type_omp)
290
291!
292!Config Key  = bl95_b0
293!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
294!Config Def  = .false.
295!Config Help = Used in nuage.F
296!
297  bl95_b0_omp = 2.
298  call getin('bl95_b0', bl95_b0_omp)
299
300!Config Key  = bl95_b1
301!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
302!Config Def  = .false.
303!Config Help = Used in nuage.F
304!
305  bl95_b1_omp = 0.2
306  call getin('bl95_b1', bl95_b1_omp)
307
308!Config Key  = freq_ISCCP
309!Config Desc = Frequence d'appel du simulateur ISCCP en secondes;
310!              par defaut 10800, i.e. 3 heures
311!Config Def  = 10800.
312!Config Help = Used in ini_histISCCP.h
313!
314  freq_ISCCP_omp = 10800.
315  call getin('freq_ISCCP', freq_ISCCP_omp)
316!
317!Config Key  = ecrit_ISCCP
318!Config Desc = Frequence d'ecriture des resultats du simulateur ISCCP en nombre de jours;
319!              par defaut 1., i.e. 1 jour
320!Config Def  = 1.
321!Config Help = Used in ini_histISCCP.h
322!
323!
324  ecrit_ISCCP_omp = 1.
325  call getin('ecrit_ISCCP', ecrit_ISCCP_omp)
326!
327!Config Key  = ip_ebil_phy
328!Config Desc = Niveau de sortie pour les diags bilan d'energie
329!Config Def  = 0
330!Config Help =
331!               
332  ip_ebil_phy_omp = 0
333  call getin('ip_ebil_phy', ip_ebil_phy_omp)
334!
335!Config Key  = seuil_inversion
336!Config Desc = Seuil ur dTh pour le choix entre les schemas de CL
337!Config Def  = -0.1
338!Config Help =
339!               
340  seuil_inversion_omp = -0.1
341  call getin('seuil_inversion', seuil_inversion_omp)
342
343!!
344!! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
345!!
346!Config Key  = R_ecc
347!Config Desc = Excentricite
348!Config Def  = 0.016715
349!Config Help =
350!               
351!valeur AMIP II
352  R_ecc_omp = 0.016715
353  call getin('R_ecc', R_ecc_omp)
354!!
355!Config Key  = R_peri
356!Config Desc = Equinoxe
357!Config Def  =
358!Config Help =
359!               
360!
361!valeur AMIP II
362  R_peri_omp = 102.7
363  call getin('R_peri', R_peri_omp)
364!!
365!Config Key  = R_incl
366!Config Desc = Inclinaison
367!Config Def  =
368!Config Help =
369!               
370!
371!valeur AMIP II
372  R_incl_omp = 23.441
373  call getin('R_incl', R_incl_omp)
374!!
375!Config Key  = solaire
376!Config Desc = Constante solaire en W/m2
377!Config Def  = 1365.
378!Config Help =
379!               
380!
381!valeur AMIP II
382  solaire_omp = 1365.
383  call getin('solaire', solaire_omp)
384!!
385!Config Key  = co2_ppm
386!Config Desc = concentration du gaz carbonique en ppmv
387!Config Def  = 348.
388!Config Help =
389!               
390!
391!valeur AMIP II
392  co2_ppm_omp = 348.
393  call getin('co2_ppm', co2_ppm_omp)
394!!
395!Config Key  = RCO2
396!Config Desc = Concentration du CO2
397!Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
398!Config Def  = 348. * 1.0e-06  * 44.011/28.97
399!Config Help =
400!               
401! RCO2 = 5.286789092164308E-04
402!ancienne valeur
403  RCO2_omp = co2_ppm_omp * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
404
405!!  call getin('RCO2', RCO2)
406!!
407!Config Key  = RCH4
408!Config Desc = Concentration du CH4
409!Config Def  = 1.65E-06* 16.043/28.97
410!Config Help =
411!               
412!
413!valeur AMIP II
414!OK  RCH4 = 1.65E-06* 16.043/28.97
415! RCH4 = 9.137366240938903E-07
416!
417!ancienne valeur
418! RCH4 = 1.72E-06* 16.043/28.97
419!OK call getin('RCH4', RCH4)
420  zzz = 1650.
421  call getin('CH4_ppb', zzz)
422  CH4_ppb_omp = zzz
423  RCH4_omp = CH4_ppb_omp * 1.0E-09 * 16.043/28.97
424!!
425!Config Key  = RN2O
426!Config Desc = Concentration du N2O
427!Config Def  = 306.E-09* 44.013/28.97
428!Config Help =
429!               
430!
431!valeur AMIP II
432!OK  RN2O = 306.E-09* 44.013/28.97
433! RN2O = 4.648939592682085E-07
434!
435!ancienne valeur
436! RN2O = 310.E-09* 44.013/28.97
437!OK  call getin('RN2O', RN2O)
438  zzz=306.
439  call getin('N2O_ppb', zzz)
440  N2O_ppb_omp = zzz
441  RN2O_omp = N2O_ppb_omp * 1.0E-09 * 44.013/28.97
442!!
443!Config Key  = RCFC11
444!Config Desc = Concentration du CFC11
445!Config Def  = 280.E-12* 137.3686/28.97
446!Config Help =
447!               
448!
449!OK RCFC11 = 280.E-12* 137.3686/28.97
450  zzz = 280.
451  call getin('CFC11_ppt',zzz)
452  CFC11_ppt_omp = zzz
453  RCFC11_omp=CFC11_ppt_omp* 1.0E-12 * 137.3686/28.97
454! RCFC11 = 1.327690990680013E-09
455!OK call getin('RCFC11', RCFC11)
456!!
457!Config Key  = RCFC12
458!Config Desc = Concentration du CFC12
459!Config Def  = 484.E-12* 120.9140/28.97
460!Config Help =
461!               
462!
463!OK RCFC12 = 484.E-12* 120.9140/28.97
464  zzz = 484.
465  call getin('CFC12_ppt',zzz)
466  CFC12_ppt_omp = zzz
467  RCFC12_omp = CFC12_ppt_omp * 1.0E-12 * 120.9140/28.97
468! RCFC12 = 2.020102726958923E-09
469!OK call getin('RCFC12', RCFC12)
470
471
472
473!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
474! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
475! Constantes precedemment dans dyn3d/conf_gcm
476
477!Config  Key  = cycle_diurne
478!Config  Desc = Cycle ddiurne
479!Config  Def  = y
480!Config  Help = Cette option permet d'eteidre le cycle diurne.
481!Config         Peut etre util pour accelerer le code !
482       cycle_diurne_omp = .TRUE.
483       CALL getin('cycle_diurne',cycle_diurne_omp)
484
485!Config  Key  = soil_model
486!Config  Desc = Modele de sol
487!Config  Def  = y
488!Config  Help = Choix du modele de sol (Thermique ?)
489!Config         Option qui pourait un string afin de pouvoir
490!Config         plus de choix ! Ou meme une liste d'options !
491       soil_model_omp = .TRUE.
492       CALL getin('soil_model',soil_model_omp)
493
494!Config  Key  = new_oliq
495!Config  Desc = Nouvelle eau liquide
496!Config  Def  = y
497!Config  Help = Permet de mettre en route la
498!Config         nouvelle parametrisation de l'eau liquide !
499       new_oliq_omp = .TRUE.
500       CALL getin('new_oliq',new_oliq_omp)
501
502!Config  Key  = ok_orodr
503!Config  Desc = Orodr ???
504!Config  Def  = y
505!Config  Help = Y en a pas comprendre !
506!Config         
507       ok_orodr_omp = .TRUE.
508       CALL getin('ok_orodr',ok_orodr_omp)
509
510!Config  Key  =  ok_orolf
511!Config  Desc = Orolf ??
512!Config  Def  = y
513!Config  Help = Connais pas !
514       ok_orolf_omp = .TRUE.
515       CALL getin('ok_orolf', ok_orolf_omp)
516
517!Config  Key  = ok_limitvrai
518!Config  Desc = Force la lecture de la bonne annee
519!Config  Def  = n
520!Config  Help = On peut forcer le modele a lire le
521!Config         fichier SST de la bonne annee. C'est une tres bonne
522!Config         idee, pourquoi ne pas mettre toujours a y ???
523       ok_limitvrai_omp = .FALSE.
524       CALL getin('ok_limitvrai',ok_limitvrai_omp)
525
526!Config  Key  = nbapp_rad
527!Config  Desc = Frequence d'appel au rayonnement
528!Config  Def  = 12
529!Config  Help = Nombre  d'appels des routines de rayonnements
530!Config         par jour.
531       nbapp_rad_omp = 12
532       CALL getin('nbapp_rad',nbapp_rad_omp)
533
534!Config  Key  = iflag_con
535!Config  Desc = Flag de convection
536!Config  Def  = 2
537!Config  Help = Flag  pour la convection les options suivantes existent :
538!Config         1 pour LMD,
539!Config         2 pour Tiedtke,
540!Config         3 pour CCM(NCAR) 
541       iflag_con_omp = 2
542       CALL getin('iflag_con',iflag_con_omp)
543
544!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
545!!
546!! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
547!!
548!! KE
549!
550
551!Config key  = cvl_corr
552!Config Desc = Facteur multiplication des precip convectives dans KE
553!Config Def  = 1.00
554!Config Help = 1.02 pour un moderne ou un pre-ind. A ajuster pour un glaciaire
555  cvl_corr_omp = 1.00
556  CALL getin('cvl_corr', cvl_corr_omp)
557
558
559!Config Key  = epmax
560!Config Desc = Efficacite precip
561!Config Def  = 0.993
562!Config Help =
563!
564  epmax_omp = .993
565  call getin('epmax', epmax_omp)
566!
567!Config Key  = ok_adj_ema
568!Config Desc = 
569!Config Def  = false
570!Config Help =
571!
572  ok_adj_ema_omp = .false.
573  call getin('ok_adj_ema',ok_adj_ema_omp)
574!
575!Config Key  = iflag_clw
576!Config Desc = 
577!Config Def  = 0
578!Config Help =
579!
580  iflag_clw_omp = 0
581  call getin('iflag_clw',iflag_clw_omp)
582!
583!Config Key  = cld_lc_lsc
584!Config Desc = 
585!Config Def  = 2.6e-4
586!Config Help =
587!
588  cld_lc_lsc_omp = 2.6e-4
589  call getin('cld_lc_lsc',cld_lc_lsc_omp)
590!
591!Config Key  = cld_lc_con
592!Config Desc = 
593!Config Def  = 2.6e-4
594!Config Help =
595!
596  cld_lc_con_omp = 2.6e-4
597  call getin('cld_lc_con',cld_lc_con_omp)
598!
599!Config Key  = cld_tau_lsc
600!Config Desc = 
601!Config Def  = 3600.
602!Config Help =
603!
604  cld_tau_lsc_omp = 3600.
605  call getin('cld_tau_lsc',cld_tau_lsc_omp)
606!
607!Config Key  = cld_tau_con
608!Config Desc = 
609!Config Def  = 3600.
610!Config Help =
611!
612  cld_tau_con_omp = 3600.
613  call getin('cld_tau_con',cld_tau_con_omp)
614!
615!Config Key  = ffallv_lsc
616!Config Desc = 
617!Config Def  = 1.
618!Config Help =
619!
620  ffallv_lsc_omp = 1.
621  call getin('ffallv_lsc',ffallv_lsc_omp)
622!
623!Config Key  = ffallv_con
624!Config Desc = 
625!Config Def  = 1.
626!Config Help =
627!
628  ffallv_con_omp = 1.
629  call getin('ffallv_con',ffallv_con_omp)
630!
631!Config Key  = coef_eva
632!Config Desc = 
633!Config Def  = 2.e-5
634!Config Help =
635!
636  coef_eva_omp = 2.e-5
637  call getin('coef_eva',coef_eva_omp)
638!
639!Config Key  = reevap_ice
640!Config Desc = 
641!Config Def  = .false.
642!Config Help =
643!
644  reevap_ice_omp = .false.
645  call getin('reevap_ice',reevap_ice_omp)
646
647!Config Key  = iflag_ratqs
648!Config Desc =
649!Config Def  = 1
650!Config Help =
651!
652  iflag_ratqs_omp = 1
653  call getin('iflag_ratqs',iflag_ratqs_omp)
654
655!
656!Config Key  = iflag_radia
657!Config Desc = 
658!Config Def  = 1
659!Config Help =
660!
661  iflag_radia_omp = 1
662  call getin('iflag_radia',iflag_radia_omp)
663
664!
665!Config Key  = iflag_rrtm
666!Config Desc = 
667!Config Def  = 0
668!Config Help =
669!
670  iflag_rrtm_omp = 0
671  call getin('iflag_rrtm',iflag_rrtm_omp)
672
673!
674!Config Key  = iflag_cldcon
675!Config Desc = 
676!Config Def  = 1
677!Config Help =
678!
679  iflag_cldcon_omp = 1
680  call getin('iflag_cldcon',iflag_cldcon_omp)
681
682!
683!Config Key  = iflag_pdf
684!Config Desc = 
685!Config Def  = 0
686!Config Help =
687!
688  iflag_pdf_omp = 0
689  call getin('iflag_pdf',iflag_pdf_omp)
690!
691!Config Key  = fact_cldcon
692!Config Desc = 
693!Config Def  = 0.375
694!Config Help =
695!
696  fact_cldcon_omp = 0.375
697  call getin('fact_cldcon',fact_cldcon_omp)
698
699!
700!Config Key  = facttemps
701!Config Desc = 
702!Config Def  = 1.e-4
703!Config Help =
704!
705  facttemps_omp = 1.e-4
706  call getin('facttemps',facttemps_omp)
707
708!
709!Config Key  = ok_newmicro
710!Config Desc = 
711!Config Def  = .true.
712!Config Help =
713!
714  ok_newmicro_omp = .true.
715  call getin('ok_newmicro',ok_newmicro_omp)
716!
717!Config Key  = ratqsbas
718!Config Desc = 
719!Config Def  = 0.01
720!Config Help =
721!
722  ratqsbas_omp = 0.01
723  call getin('ratqsbas',ratqsbas_omp)
724!
725!Config Key  = ratqshaut
726!Config Desc = 
727!Config Def  = 0.3
728!Config Help =
729!
730  ratqshaut_omp = 0.3
731  call getin('ratqshaut',ratqshaut_omp)
732
733!
734!-----------------------------------------------------------------------
735! Longitude solaire pour le calcul de l'ensoleillement en degre
736! si on veut imposer la saison. Sinon, solarlong0=-999.999
737!Config Key  = solarlong0
738!Config Desc = 
739!Config Def  = -999.999
740!Config Help =
741!
742  solarlong0_omp = -999.999
743  call getin('solarlong0',solarlong0_omp)
744!
745!-----------------------------------------------------------------------
746!  Valeur imposee de l'humidite du sol pour le modele bucket.
747!Config Key  = qsol0
748!Config Desc = 
749!Config Def  = -1.
750!Config Help =
751!
752  qsol0_omp = -1.
753  call getin('qsol0',qsol0_omp)
754!
755!-----------------------------------------------------------------------
756!
757!Config Key  = inertie_ice
758!Config Desc = 
759!Config Def  = 2000.
760!Config Help =
761!
762  inertie_ice_omp = 2000.
763  call getin('inertie_ice',inertie_ice_omp)
764!
765!Config Key  = inertie_sno
766!Config Desc = 
767!Config Def  = 2000.
768!Config Help =
769!
770  inertie_sno_omp = 2000.
771  call getin('inertie_sno',inertie_sno_omp)
772!
773!Config Key  = inertie_sol
774!Config Desc = 
775!Config Def  = 2000.
776!Config Help =
777!
778  inertie_sol_omp = 2000.
779  call getin('inertie_sol',inertie_sol_omp)
780
781!
782!Config Key  = rad_froid
783!Config Desc = 
784!Config Def  = 35.0
785!Config Help =
786!
787  rad_froid_omp = 35.0
788  call getin('rad_froid',rad_froid_omp)
789
790!
791!Config Key  = rad_chau1
792!Config Desc = 
793!Config Def  = 13.0
794!Config Help =
795!
796  rad_chau1_omp = 13.0
797  call getin('rad_chau1',rad_chau1_omp)
798
799!
800!Config Key  = rad_chau2
801!Config Desc = 
802!Config Def  = 9.0
803!Config Help =
804!
805  rad_chau2_omp = 9.0
806  call getin('rad_chau2',rad_chau2_omp)
807
808!
809!Config Key  = top_height
810!Config Desc =
811!Config Def  = 3
812!Config Help =
813!
814  top_height_omp = 3
815  call getin('top_height',top_height_omp)
816
817!
818!Config Key  = overlap
819!Config Desc =
820!Config Def  = 3
821!Config Help =
822!
823  overlap_omp = 3
824  call getin('overlap',overlap_omp)
825
826
827!
828!
829!Config Key  = cdmmax
830!Config Desc =
831!Config Def  = 1.3E-3
832!Config Help =
833!
834  cdmmax_omp = 1.3E-3
835  call getin('cdmmax',cdmmax_omp)
836
837!
838!Config Key  = cdhmax
839!Config Desc =
840!Config Def  = 1.1E-3
841!Config Help =
842!
843  cdhmax_omp = 1.1E-3
844  call getin('cdhmax',cdhmax_omp)
845
846!261103
847!
848!Config Key  = ksta
849!Config Desc =
850!Config Def  = 1.0e-10
851!Config Help =
852!
853  ksta_omp = 1.0e-10
854  call getin('ksta',ksta_omp)
855
856!
857!Config Key  = ksta_ter
858!Config Desc =
859!Config Def  = 1.0e-10
860!Config Help =
861!
862  ksta_ter_omp = 1.0e-10
863  call getin('ksta_ter',ksta_ter_omp)
864
865!
866!Config Key  = ok_kzmin
867!Config Desc =
868!Config Def  = .true.
869!Config Help =
870!
871  ok_kzmin_omp = .true.
872  call getin('ok_kzmin',ok_kzmin_omp)
873
874!
875!Config Key  = fmagic
876!Config Desc = additionnal multiplicator factor used for albedo
877!Config Def  = 1.
878!Config Help = additionnal multiplicator factor used in albedo.F
879!
880  fmagic_omp = 1.
881  call getin('fmagic',fmagic_omp)
882
883!
884!Config Key  = pmagic
885!Config Desc = additional factor used for albedo
886!Config Def  = 0.
887!Config Help = additional factor used in albedo.F
888!
889  pmagic_omp = 0.
890  call getin('pmagic',pmagic_omp)
891
892
893!Config Key = ok_lic_melt
894!Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
895!Config Def  = .false.
896!Config Help = mettre a .false. pour assurer la conservation en eau
897  ok_lic_melt_omp = .false.
898  call getin('ok_lic_melt', ok_lic_melt_omp)
899
900!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
901! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
902!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
903
904!Config Key  = iflag_pbl
905!Config Desc =
906!Config Def  = 1
907!Config Help =
908!
909  iflag_pbl_omp = 1
910  call getin('iflag_pbl',iflag_pbl_omp)
911!
912!Config Key  = iflag_thermals
913!Config Desc =
914!Config Def  = 0
915!Config Help =
916!
917  iflag_thermals_omp = 0
918  call getin('iflag_thermals',iflag_thermals_omp)
919!
920!
921!Config Key  = iflag_thermals_ed
922!Config Desc =
923!Config Def  = 0
924!Config Help =
925!
926  iflag_thermals_ed_omp = 0
927  call getin('iflag_thermals_ed',iflag_thermals_ed_omp)
928!
929!
930!Config Key  = iflag_thermals_optflux
931!Config Desc =
932!Config Def  = 0
933!Config Help =
934!
935  iflag_thermals_optflux_omp = 0
936  call getin('iflag_thermals_optflux',iflag_thermals_optflux_omp)
937!
938!
939!Config Key  = nsplit_thermals
940!Config Desc =
941!Config Def  = 1
942!Config Help =
943!
944  nsplit_thermals_omp = 1
945  call getin('nsplit_thermals',nsplit_thermals_omp)
946
947!Config Key  = tau_thermals
948!Config Desc =
949!Config Def  = 0.
950!Config Help =
951!
952  tau_thermals_omp = 0.
953  call getin('tau_thermals',tau_thermals_omp)
954
955!
956!Config Key  = iflag_coupl
957!Config Desc =
958!Config Def  = 0
959!Config Help =
960!
961  iflag_coupl_omp = 0
962  call getin('iflag_coupl',iflag_coupl_omp)
963
964!
965!Config Key  = iflag_clos
966!Config Desc = 
967!Config Def  = 0
968!Config Help =
969!
970  iflag_clos_omp = 1
971  call getin('iflag_clos',iflag_clos_omp)
972!
973!Config Key  = iflag_cvl_sigd
974!Config Desc = 
975!Config Def  = 0
976!Config Help =
977!
978  iflag_cvl_sigd_omp = 0
979  call getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
980
981!Config Key  = iflag_wake
982!Config Desc = 
983!Config Def  = 0
984!Config Help =
985!
986  iflag_wake_omp = 0
987  call getin('iflag_wake',iflag_wake_omp)
988
989!
990!Config Key  = lev_histhf
991!Config Desc =
992!Config Def  = 1
993!Config Help =
994!
995  lev_histhf_omp = 1
996  call getin('lev_histhf',lev_histhf_omp)
997
998!
999!Config Key  = lev_histday
1000!Config Desc =
1001!Config Def  = 1
1002!Config Help =
1003!
1004  lev_histday_omp = 1
1005  call getin('lev_histday',lev_histday_omp)
1006
1007!
1008!Config Key  = lev_histmth
1009!Config Desc =
1010!Config Def  = 2
1011!Config Help =
1012!
1013  lev_histmth_omp = 2
1014  call getin('lev_histmth',lev_histmth_omp)
1015!
1016!Config Key  = lev_histins
1017!Config Desc =
1018!Config Def  = 1
1019!Config Help =
1020!
1021  lev_histins_omp = 1
1022  call getin('lev_histins',lev_histins_omp)
1023  !
1024!Config Key  = lev_histLES
1025!Config Desc =
1026!Config Def  = 1
1027!Config Help =
1028!
1029  lev_histLES_omp = 1
1030  call getin('lev_histLES',lev_histLES_omp)
1031  !
1032!Config Key  = type_run
1033!Config Desc =
1034!Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
1035!Config Help =
1036!
1037  type_run_omp = 'AMIP'
1038  call getin('type_run',type_run_omp)
1039
1040!
1041!Config Key  = ok_isccp
1042!Config Desc =
1043!Config Def  = .true.
1044!Config Help =
1045!
1046! ok_isccp = .true.
1047  ok_isccp_omp = .false.
1048  call getin('ok_isccp',ok_isccp_omp)
1049
1050!
1051! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
1052! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
1053!
1054!Config Key  = lonmin_ins
1055!Config Desc = 100. 
1056!Config Def  = longitude minimale sorties "bilKP_ins"
1057!Config Help =
1058!
1059   lonmin_ins_omp = 100.
1060   call getin('lonmin_ins',lonmin_ins_omp)
1061!
1062!Config Key  = lonmax_ins
1063!Config Desc = 130.
1064!Config Def  = longitude maximale sorties "bilKP_ins"
1065!Config Help =
1066!
1067   lonmax_ins_omp = 130.
1068   call getin('lonmax_ins',lonmax_ins_omp)
1069!
1070!Config Key  = latmin_ins
1071!Config Desc = -20. 
1072!Config Def  = latitude minimale sorties "bilKP_ins"
1073!Config Help =
1074!
1075   latmin_ins_omp = -20.
1076   call getin('latmin_ins',latmin_ins_omp)
1077!
1078!Config Key  = latmax_ins
1079!Config Desc = 20.
1080!Config Def  = latitude maximale sorties "bilKP_ins"
1081!Config Help =
1082!
1083   latmax_ins_omp = 20.
1084   call getin('latmax_ins',latmax_ins_omp)
1085!
1086!Config Key  = ecrit_hf
1087!Config Desc =
1088!Config Def  = 1./8. !toutes les 3h
1089!Config Help =
1090!
1091  ecrit_hf_omp = 1./8.
1092  call getin('ecrit_hf',ecrit_hf_omp)
1093!
1094!Config Key  = ecrit_ins
1095!Config Desc =
1096!Config Def  = 1./48. ! toutes les 1/2 h
1097!Config Help =
1098!
1099  ecrit_ins_omp = 1./48.
1100  call getin('ecrit_ins',ecrit_ins_omp)
1101!
1102!Config Key  = ecrit_day
1103!Config Desc =
1104!Config Def  = 1.0 !tous les jours
1105!Config Help = nombre de jours pour ecriture fichier histday.nc
1106!
1107  ecrit_day_omp = 1.0
1108  call getin('ecrit_day',ecrit_day_omp)
1109!
1110!Config Key  = ecrit_mth
1111!Config Desc =
1112!Config Def  = 30. !tous les 30jours (1 fois par mois)
1113!Config Help =
1114!
1115  ecrit_mth_omp = 30.
1116  call getin('ecrit_mth',ecrit_mth_omp)
1117!
1118!Config Key  = ecrit_tra
1119!Config Desc =
1120!Config Def  = 30. !tous les 30jours (1 fois par mois)
1121!Config Help =
1122!
1123  ecrit_tra_omp = 30.
1124  call getin('ecrit_tra',ecrit_tra_omp)
1125!
1126!Config Key  = ecrit_reg
1127!Config Desc =
1128!Config Def  = 0.25  !4 fois par jour
1129!Config Help =
1130!
1131  ecrit_reg_omp = 0.25   !4 fois par jour
1132  call getin('ecrit_reg',ecrit_reg_omp)
1133!
1134!
1135!
1136! PARAMETRES CDRAG
1137!
1138!Config Key  = f_cdrag_ter
1139!Config Desc =
1140!Config Def  = 0.8
1141!Config Help =
1142!
1143  f_cdrag_ter_omp = 0.8
1144  call getin('f_cdrag_ter',f_cdrag_ter_omp)
1145!
1146!Config Key  = f_cdrag_oce
1147!Config Desc =
1148!Config Def  = 0.8
1149!Config Help =
1150!
1151  f_cdrag_oce_omp = 0.8
1152  call getin('f_cdrag_oce',f_cdrag_oce_omp)
1153!
1154! RUGORO
1155!Config Key  = f_rugoro
1156!Config Desc =
1157!Config Def  = 0.
1158!Config Help =
1159!
1160  f_rugoro_omp = 0.
1161  call getin('f_rugoro',f_rugoro_omp)
1162
1163! PARAMETERS FOR CONVECTIVE INHIBITION BY TROPOS. DRYNESS
1164!
1165!Config Key  = supcrit1
1166!Config Desc =
1167!Config Def  = .540
1168!Config Help =
1169!
1170  supcrit1_omp = .540
1171  call getin('supcrit1',supcrit1_omp)
1172
1173!
1174!Config Key  = supcrit2
1175!Config Desc =
1176!Config Def  = .600
1177!Config Help =
1178!
1179  supcrit2_omp = .600
1180  call getin('supcrit2',supcrit2_omp)
1181
1182!
1183! PARAMETERS FOR THE MIXING DISTRIBUTION
1184!
1185!
1186!Config Key  = iflag_mix
1187!Config Desc =
1188!Config Def  = 1
1189!Config Help =
1190!
1191  iflag_mix_omp = 1
1192  call getin('iflag_mix',iflag_mix_omp)
1193
1194!
1195!Config Key  = scut
1196!Config Desc =
1197!Config Def  = 0.95
1198!Config Help =
1199!
1200  scut_omp = 0.95
1201  call getin('scut',scut_omp)
1202
1203!
1204!Config Key  = qqa1
1205!Config Desc =
1206!Config Def  = 1.0
1207!Config Help =
1208!
1209  qqa1_omp = 1.0
1210  call getin('qqa1',qqa1_omp)
1211
1212!
1213!Config Key  = qqa2
1214!Config Desc =
1215!Config Def  = 0.0
1216!Config Help =
1217!
1218  qqa2_omp = 0.0
1219  call getin('qqa2',qqa2_omp)
1220
1221!
1222!Config Key  = gammas
1223!Config Desc =
1224!Config Def  = 0.05
1225!Config Help =
1226!
1227  gammas_omp = 0.05
1228  call getin('gammas',gammas_omp)
1229
1230!
1231!Config Key  = Fmax
1232!Config Desc =
1233!Config Def  = 0.65
1234!Config Help =
1235!
1236  Fmax_omp = 0.65
1237  call getin('Fmax',Fmax_omp)
1238
1239!
1240!Config Key  = alphas 
1241!Config Desc =
1242!Config Def  = -5.
1243!Config Help =
1244!
1245  alphas_omp = -5.
1246  call getin('alphas',alphas_omp)
1247
1248!Config key = ok_strato
1249!Config  Desc = activation de la version strato
1250!Config  Def  = .FALSE.
1251!Config  Help = active la version stratosphérique de LMDZ de F. Lott
1252
1253  ok_strato_omp=.FALSE.
1254  CALL getin('ok_strato',ok_strato_omp)
1255     
1256!Config  key = ok_hines
1257!Config  Desc = activation de la parametrisation de hines
1258!Config  Def  = .FALSE.
1259!Config  Help = Clefs controlant la parametrization de Hines
1260!               Et la sponge layer (Runs Stratospheriques)
1261
1262  ok_hines_omp=.FALSE.
1263  CALL getin('ok_hines',ok_hines_omp)
1264
1265!Config Key  = OK_LES                                               
1266!Config Desc = Pour des sorties LES                                 
1267!Config Def  = .false.                                             
1268!Config Help = Pour creer le fichier histLES contenant les sorties 
1269!              LES                                                 
1270!                                                                   
1271  ok_LES_omp = .false.                                             
1272  call getin('OK_LES', ok_LES_omp)                                 
1273!
1274!Config Key  = ecrit_LES
1275!Config Desc = Frequence d'ecriture des resultats du LES en nombre de jours;
1276!              par defaut 1., i.e. 1 jour
1277!Config Def  = 1./8.
1278!Config Help = ...
1279!
1280!
1281  ecrit_LES_omp = 1./8.
1282  call getin('ecrit_LES', ecrit_LES_omp)
1283!
1284  read_climoz_omp = .false. ! default value
1285  call getin('read_climoz', read_climoz_omp)
1286
1287  carbon_cycle_tr_omp=.FALSE.
1288  CALL getin('carbon_cycle_tr',carbon_cycle_tr_omp)
1289
1290  carbon_cycle_cpl_omp=.FALSE.
1291  CALL getin('carbon_cycle_cpl',carbon_cycle_cpl_omp)
1292
1293!$OMP END MASTER
1294!$OMP BARRIER
1295
1296    R_ecc = R_ecc_omp
1297    R_peri = R_peri_omp
1298    R_incl = R_incl_omp
1299    solaire = solaire_omp
1300    co2_ppm = co2_ppm_omp
1301    RCO2 = RCO2_omp
1302    CH4_ppb = CH4_ppb_omp
1303    RCH4 = RCH4_omp
1304    N2O_ppb = N2O_ppb_omp
1305    RN2O = RN2O_omp
1306    CFC11_ppt = CFC11_ppt_omp
1307    RCFC11 = RCFC11_omp
1308    CFC12_ppt = CFC12_ppt_omp
1309    RCFC12 = RCFC12_omp
1310
1311    cycle_diurne = cycle_diurne_omp
1312    soil_model = soil_model_omp
1313    new_oliq = new_oliq_omp
1314    ok_orodr = ok_orodr_omp
1315    ok_orolf = ok_orolf_omp
1316    ok_limitvrai = ok_limitvrai_omp
1317    nbapp_rad = nbapp_rad_omp
1318    iflag_con = iflag_con_omp
1319
1320    epmax = epmax_omp
1321    ok_adj_ema = ok_adj_ema_omp
1322    iflag_clw = iflag_clw_omp
1323    cld_lc_lsc = cld_lc_lsc_omp
1324    cld_lc_con = cld_lc_con_omp
1325    cld_tau_lsc = cld_tau_lsc_omp
1326    cld_tau_con = cld_tau_con_omp
1327    ffallv_lsc = ffallv_lsc_omp
1328    ffallv_con = ffallv_con_omp
1329    coef_eva = coef_eva_omp
1330    reevap_ice = reevap_ice_omp
1331    iflag_pdf = iflag_pdf_omp
1332    solarlong0 = solarlong0_omp
1333    qsol0 = qsol0_omp
1334    inertie_sol = inertie_sol_omp
1335    inertie_ice = inertie_ice_omp
1336    inertie_sno = inertie_sno_omp
1337    rad_froid = rad_froid_omp
1338    rad_chau1 = rad_chau1_omp
1339    rad_chau2 = rad_chau2_omp
1340    top_height = top_height_omp
1341    overlap = overlap_omp
1342    cdmmax = cdmmax_omp
1343    cdhmax = cdhmax_omp
1344    ksta = ksta_omp
1345    ksta_ter = ksta_ter_omp
1346    ok_kzmin = ok_kzmin_omp
1347    fmagic = fmagic_omp
1348    pmagic = pmagic_omp
1349    iflag_pbl = iflag_pbl_omp
1350    lev_histhf = lev_histhf_omp
1351    lev_histday = lev_histday_omp
1352    lev_histmth = lev_histmth_omp
1353    lev_histins = lev_histins_omp
1354    lev_histLES = lev_histLES_omp
1355
1356    type_ocean = type_ocean_omp
1357    version_ocean = version_ocean_omp
1358    ok_veget = ok_veget_omp
1359    ok_newmicro = ok_newmicro_omp
1360    ok_journe = ok_journe_omp
1361    ok_hf = ok_hf_omp
1362    ok_mensuel = ok_mensuel_omp
1363    ok_instan = ok_instan_omp
1364    freq_ISCCP = freq_ISCCP_omp
1365    ecrit_ISCCP = ecrit_ISCCP_omp
1366    ok_ade = ok_ade_omp
1367    ok_aie = ok_aie_omp
1368    aerosol_couple = aerosol_couple_omp
1369    flag_aerosol=flag_aerosol_omp
1370    new_aod=new_aod_omp
1371    aer_type = aer_type_omp
1372    bl95_b0 = bl95_b0_omp
1373    bl95_b1 = bl95_b1_omp
1374    fact_cldcon = fact_cldcon_omp
1375    facttemps = facttemps_omp
1376    ratqsbas = ratqsbas_omp
1377    ratqshaut = ratqshaut_omp
1378    iflag_radia = iflag_radia_omp
1379    iflag_rrtm = iflag_rrtm_omp
1380    iflag_cldcon = iflag_cldcon_omp
1381    iflag_ratqs = iflag_ratqs_omp
1382    ip_ebil_phy = ip_ebil_phy_omp
1383    iflag_thermals = iflag_thermals_omp
1384    iflag_thermals_ed = iflag_thermals_ed_omp
1385    iflag_thermals_optflux = iflag_thermals_optflux_omp
1386    nsplit_thermals = nsplit_thermals_omp
1387    tau_thermals = tau_thermals_omp
1388    iflag_coupl = iflag_coupl_omp
1389    iflag_clos = iflag_clos_omp
1390    iflag_wake = iflag_wake_omp
1391    iflag_cvl_sigd = iflag_cvl_sigd_omp
1392    type_run = type_run_omp
1393    ok_isccp = ok_isccp_omp
1394    seuil_inversion=seuil_inversion_omp
1395    lonmin_ins = lonmin_ins_omp
1396    lonmax_ins = lonmax_ins_omp
1397    latmin_ins = latmin_ins_omp
1398    latmax_ins = latmax_ins_omp
1399    ecrit_hf   = ecrit_hf_omp
1400    ecrit_ins   = ecrit_ins_omp
1401    ecrit_day = ecrit_day_omp
1402    ecrit_mth = ecrit_mth_omp
1403    ecrit_tra = ecrit_tra_omp
1404    ecrit_reg = ecrit_reg_omp
1405    cvl_corr = cvl_corr_omp
1406    ok_lic_melt = ok_lic_melt_omp
1407    f_cdrag_ter=f_cdrag_ter_omp
1408    f_cdrag_oce=f_cdrag_oce_omp
1409    f_rugoro=f_rugoro_omp
1410    supcrit1 = supcrit1_omp
1411    supcrit2 = supcrit2_omp
1412    iflag_mix = iflag_mix_omp
1413    scut = scut_omp
1414    qqa1 = qqa1_omp
1415    qqa2 = qqa2_omp
1416    gammas = gammas_omp
1417    Fmax = Fmax_omp
1418    alphas = alphas_omp
1419    ok_strato = ok_strato_omp
1420    ok_hines = ok_hines_omp
1421    ok_LES = ok_LES_omp
1422    ecrit_LES = ecrit_LES_omp
1423    read_climoz = read_climoz_omp
1424    carbon_cycle_tr = carbon_cycle_tr_omp
1425    carbon_cycle_cpl = carbon_cycle_cpl_omp
1426
1427! Test of coherence between type_ocean and version_ocean
1428    IF (type_ocean=='couple' .AND. (version_ocean/='opa8' .AND. version_ocean/='nemo') ) THEN
1429       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid in coupled configuration'
1430       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1431    END IF
1432
1433    IF (type_ocean=='slab' .AND. version_ocean=='xxxxxx') THEN
1434       version_ocean='sicOBS'
1435    ELSE IF (type_ocean=='slab' .AND. version_ocean/='sicOBS') THEN
1436       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid with slab ocean'
1437       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1438    END IF
1439
1440! Test sur new_aod. Ce flag permet de retrouver les resultats de l'AR4
1441! il n'est utilisable que lors du couplage avec le SO4 seul
1442    IF (ok_ade .OR. ok_aie) THEN
1443       IF ( .NOT. new_aod .AND.  flag_aerosol .NE. 1) THEN
1444          CALL abort_gcm('conf_phys','new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
1445       END IF
1446    END IF
1447
1448!$OMP MASTER
1449
1450  write(numout,*)' ##############################################'
1451  write(numout,*)' Configuration des parametres de la physique: '
1452  write(numout,*)' Type ocean = ', type_ocean
1453  write(numout,*)' Version ocean = ', version_ocean
1454  write(numout,*)' Config veget = ', ok_veget
1455  write(numout,*)' Sortie journaliere = ', ok_journe
1456  write(numout,*)' Sortie haute frequence = ', ok_hf
1457  write(numout,*)' Sortie mensuelle = ', ok_mensuel
1458  write(numout,*)' Sortie instantanee = ', ok_instan
1459  write(numout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
1460  write(numout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
1461  write(numout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
1462  write(numout,*)' Excentricite = ',R_ecc
1463  write(numout,*)' Equinoxe = ',R_peri
1464  write(numout,*)' Inclinaison =',R_incl
1465  write(numout,*)' Constante solaire =',solaire
1466  write(numout,*)' co2_ppm =',co2_ppm
1467  write(numout,*)' RCO2 = ',RCO2
1468  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
1469  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
1470  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
1471  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
1472  write(numout,*)' cvl_corr=', cvl_corr
1473  write(numout,*)'ok_lic_melt=', ok_lic_melt
1474  write(numout,*)'cycle_diurne=',cycle_diurne
1475  write(numout,*)'soil_model=',soil_model
1476  write(numout,*)'new_oliq=',new_oliq
1477  write(numout,*)'ok_orodr=',ok_orodr
1478  write(numout,*)'ok_orolf=',ok_orolf
1479  write(numout,*)'ok_limitvrai=',ok_limitvrai
1480  write(numout,*)'nbapp_rad=',nbapp_rad
1481  write(numout,*)'iflag_con=',iflag_con
1482  write(numout,*)' epmax = ', epmax
1483  write(numout,*)' ok_adj_ema = ', ok_adj_ema
1484  write(numout,*)' iflag_clw = ', iflag_clw
1485  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
1486  write(numout,*)' cld_lc_con = ', cld_lc_con
1487  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
1488  write(numout,*)' cld_tau_con = ', cld_tau_con
1489  write(numout,*)' ffallv_lsc = ', ffallv_lsc
1490  write(numout,*)' ffallv_con = ', ffallv_con
1491  write(numout,*)' coef_eva = ', coef_eva
1492  write(numout,*)' reevap_ice = ', reevap_ice
1493  write(numout,*)' iflag_pdf = ', iflag_pdf
1494  write(numout,*)' iflag_cldcon = ', iflag_cldcon
1495  write(numout,*)' iflag_radia = ', iflag_radia
1496  write(numout,*)' iflag_rrtm = ', iflag_rrtm
1497  write(numout,*)' iflag_ratqs = ', iflag_ratqs
1498  write(numout,*)' seuil_inversion = ', seuil_inversion
1499  write(numout,*)' fact_cldcon = ', fact_cldcon
1500  write(numout,*)' facttemps = ', facttemps
1501  write(numout,*)' ok_newmicro = ',ok_newmicro
1502  write(numout,*)' ratqsbas = ',ratqsbas
1503  write(numout,*)' ratqshaut = ',ratqshaut
1504  write(numout,*)' top_height = ',top_height
1505  write(numout,*)' overlap = ',overlap
1506  write(numout,*)' cdmmax = ',cdmmax
1507  write(numout,*)' cdhmax = ',cdhmax
1508  write(numout,*)' ksta = ',ksta
1509  write(numout,*)' ksta_ter = ',ksta_ter
1510  write(numout,*)' ok_kzmin = ',ok_kzmin
1511  write(numout,*)' fmagic = ',fmagic
1512  write(numout,*)' pmagic = ',pmagic
1513  write(numout,*)' ok_ade = ',ok_ade
1514  write(numout,*)' ok_aie = ',ok_aie
1515  write(numout,*)' aerosol_couple = ', aerosol_couple
1516  write(numout,*)' flag_aerosol = ', flag_aerosol
1517  write(numout,*)' new_aod = ', new_aod
1518  write(numout,*)' aer_type = ',aer_type
1519  write(numout,*)' bl95_b0 = ',bl95_b0
1520  write(numout,*)' bl95_b1 = ',bl95_b1
1521  write(numout,*)' lev_histhf = ',lev_histhf
1522  write(numout,*)' lev_histday = ',lev_histday
1523  write(numout,*)' lev_histmth = ',lev_histmth
1524  write(numout,*)' lev_histins = ',lev_histins
1525  write(numout,*)' lev_histLES = ',lev_histLES
1526  write(numout,*)' iflag_pbl = ', iflag_pbl
1527  write(numout,*)' iflag_thermals = ', iflag_thermals
1528  write(numout,*)' iflag_thermals_ed = ', iflag_thermals_ed
1529  write(numout,*)' iflag_thermals_optflux = ', iflag_thermals_optflux
1530  write(numout,*)' iflag_clos = ', iflag_clos
1531  write(numout,*)' type_run = ',type_run
1532  write(numout,*)' ok_isccp = ',ok_isccp
1533  write(numout,*)' solarlong0 = ', solarlong0
1534  write(numout,*)' qsol0 = ', qsol0
1535  write(numout,*)' inertie_sol = ', inertie_sol
1536  write(numout,*)' inertie_ice = ', inertie_ice
1537  write(numout,*)' inertie_sno = ', inertie_sno
1538  write(numout,*)' f_cdrag_ter = ',f_cdrag_ter
1539  write(numout,*)' f_cdrag_oce = ',f_cdrag_oce
1540  write(numout,*)' f_rugoro = ',f_rugoro
1541  write(numout,*)' supcrit1 = ', supcrit1
1542  write(numout,*)' supcrit2 = ', supcrit2
1543  write(numout,*)' iflag_mix = ', iflag_mix
1544  write(numout,*)' scut = ', scut
1545  write(numout,*)' qqa1 = ', qqa1
1546  write(numout,*)' qqa2 = ', qqa2
1547  write(numout,*)' gammas = ', gammas
1548  write(numout,*)' Fmax = ', Fmax
1549  write(numout,*)' alphas = ', alphas
1550
1551  write(numout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
1552   lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
1553  write(numout,*)' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
1554   ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP, ecrit_LES
1555
1556  write(numout,*) 'ok_strato = ', ok_strato
1557  write(numout,*) 'ok_hines = ',  ok_hines
1558  write(numout,*) 'read_climoz = ', read_climoz
1559  write(numout,*) 'carbon_cycle_tr = ', carbon_cycle_tr
1560  write(numout,*) 'carbon_cycle_cpl = ', carbon_cycle_cpl
1561 
1562!$OMP END MASTER
1563
1564  return
1565 
1566  end subroutine conf_phys
1567
1568!
1569!#################################################################
1570!
1571
1572   subroutine conf_interface(tau_calv)
1573
1574   use IOIPSL
1575   implicit none
1576
1577! Configuration de l'interace atm/surf
1578!
1579! tau_calv:    temps de relaxation pour la fonte des glaciers
1580
1581  REAL          :: tau_calv
1582  REAL,SAVE     :: tau_calv_omp
1583
1584! Local
1585  integer              :: numout = 6
1586!
1587!Config Key  = tau_calv
1588!Config Desc = temps de relaxation pour fonte des glaciers en jours
1589!Config Def  = 1 an
1590!Config Help =
1591!
1592  tau_calv_omp = 360.*10.
1593!$OMP MASTER
1594  call getin('tau_calv',tau_calv_omp)
1595!$OMP END MASTER
1596!$OMP BARRIER
1597
1598  tau_calv=tau_calv_omp
1599 
1600!$OMP MASTER
1601  write(numout,*)' ##############################################'
1602  WRITE(numout,*)' Configuration de l''interface atm/surfaces  : '
1603  WRITE(numout,*)' tau_calv = ',tau_calv
1604!$OMP END MASTER
1605
1606  return
1607
1608  end subroutine conf_interface
Note: See TracBrowser for help on using the repository browser.