source: LMDZ4/trunk/libf/phylmd/conf_phys.F90 @ 1402

Last change on this file since 1402 was 1374, checked in by musat, 15 years ago

Add logical flags ok_histNMC(3) to manage output of the
standard pressure files hist*NMC.nc
IM

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