source: LMDZ5/trunk/libf/phylmd/clesphys.h @ 2898

Last change on this file since 2898 was 2788, checked in by dcugnet, 8 years ago

Changes in ce0l about the way ozone forcing files are generated:

1) 3D raw input files "climoz.nc" are now handled.
2) Default behaviour is now to let the gcm interpolate in time online.

This helps to avoid huge forcing files (in particular for 3D fields).
In this case, the output files "climoz_LMDZ.nc" all have 14 records:

  • records 2-13 are obtained with records 1-12 of "climoz.nc".
  • records 1 and 14 are obtained respectively with:
    • record 12 of "climoz_m.nc" if available, of "climoz.nc" otherwise.
    • record 1 of "climoz_p.nc" if available, of "climoz.nc" otherwise.

3) If ok_daily_climoz key is TRUE, the time interpolation (one record

a day) is forced, using the 14 records described below.
This now depends on the calendar (it was on a 360 days basis only).

Changes in the gcm about the way zone forcing files are read/interpolated:

1) 3D horizontally interpolated "climoz_LMDZ.nc" files are now handled.
2) Daily files (already interpolated in time) are still handled, but their

number of records must match the expected number of days, that depends
on the calendar (records step is no longer 1/360 year).

3) 14 records monthly files are now handled (and prefered). This reduces

the I/O to a minimum and the aditional computational cost is low (simple
online linear time interpolation).

4) If adjust_tropopause key is TRUE, the input fields are stretched using

following method:

  • LMDZ dynamical tropopause is detected: Ptrop_lmdz = MAX ( P(Potential Vorticity==2PVU), P(theta==380K) )
  • file chemical tropopause is detected: Ptrop_file = P( tro3 == o3t ), where:

o3t = 91. + 28. * SIN(PI*(month-2)/6) (ppbV)

This formula comes from Thouret & al., ACP 6, 1033-1051, 2006.
The second term of the expression is multiplied by TANH(lat_deg/20.)
to account for latitude dependency.

  • File profile is streched in a +/- 5kms zone around the mean tropopause to ensure resulting tropopause matches the one of LMDZ. See procedure regr_pr_time_av for more details.
  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.5 KB
RevLine 
[1403]1
[524]2!
[1279]3! $Id: clesphys.h 2788 2017-02-02 18:01:50Z fhourdin $
[524]4!
[793]5!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
[2110]6!                 veillez \`a n'utiliser que des ! pour les commentaires
7!                 et \`a bien positionner les & des lignes de continuation
[793]8!                 (les placer en colonne 6 et en colonne 73)
9!
10!..include cles_phys.h
11!
[524]12       LOGICAL cycle_diurne,soil_model,new_oliq,ok_orodr,ok_orolf
13       LOGICAL ok_limitvrai
[2114]14       LOGICAL ok_all_xml
[2730]15       INTEGER nbapp_rad, iflag_con, nbapp_cv, nbapp_wk, iflag_ener_conserv
[1279]16       REAL co2_ppm, co2_ppm0, solaire
[2524]17       LOGICAL ok_suntime_rrtm
[1279]18       REAL(kind=8) RCO2, RCH4, RN2O, RCFC11, RCFC12 
[1539]19       REAL(kind=8) RCO2_act, RCH4_act, RN2O_act, RCFC11_act, RCFC12_act 
[1279]20       REAL(kind=8) CH4_ppb, N2O_ppb, CFC11_ppt, CFC12_ppt
[1539]21!IM ajout CFMIP2/CMIP5
[1737]22       LOGICAL ok_4xCO2atm
[1539]23       REAL(kind=8) RCO2_per,RCH4_per,RN2O_per,RCFC11_per,RCFC12_per
24       REAL(kind=8) CH4_ppb_per,N2O_ppb_per,CFC11_ppt_per,CFC12_ppt_per
[766]25
[793]26!OM ---> correction du bilan d'eau global
27!OM Correction sur precip KE
[766]28       REAL cvl_corr
[793]29!OM Fonte calotte dans bilan eau
[766]30       LOGICAL ok_lic_melt
31
[793]32!IM simulateur ISCCP
[524]33       INTEGER top_height, overlap
[793]34!IM seuils cdrm, cdrh
[524]35       REAL cdmmax, cdhmax
[793]36!IM param. stabilite s/ terres et en dehors
[2126]37       REAL ksta, ksta_ter, f_ri_cd_min
[793]38!IM ok_kzmin : clef calcul Kzmin dans la CL de surface cf FH
[524]39       LOGICAL ok_kzmin
[900]40!IM, MAFo fmagic, pmagic : parametres - additionnel et multiplicatif - 
41!                          pour regler l albedo sur ocean
[2561]42       REAL pbl_lmixmin_alpha
[900]43       REAL fmagic, pmagic
[889]44! Hauteur (imposee) du contenu en eau du sol
[1894]45           REAL qsol0,albsno0,evap0
[1279]46! Frottement au sol (Cdrag)
47       Real f_cdrag_ter,f_cdrag_oce
[2254]48       REAL min_wind_speed,f_gust_wk,f_gust_bl,f_qsat_oce,f_z0qh_oce
[2243]49       REAL z0m_seaice,z0h_seaice
50       INTEGER iflag_gusts,iflag_z0_oce
[2240]51
[1279]52! Rugoro
[2243]53       Real f_rugoro,z0min
[1279]54
[793]55!IM lev_histhf  : niveau sorties 6h
56!IM lev_histday : niveau sorties journalieres
57!IM lev_histmth : niveau sorties mensuelles
[1352]58!IM lev_histdayNMC : on peut sortir soit sur 8 (comme AR5) ou bien
59!                    sur 17 niveaux de pression
[524]60       INTEGER lev_histhf, lev_histday, lev_histmth
[1352]61       INTEGER lev_histdayNMC
[1279]62       Integer lev_histins, lev_histLES 
[1374]63!IM ok_histNMC  : sortie fichiers niveaux de pression (histmthNMC, histdayNMC, histhfNMC)
[1352]64!IM freq_outNMC : frequences de sortie fichiers niveaux de pression (histmthNMC, histdayNMC, histhfNMC)
65!IM freq_calNMC : frequences de calcul fis. hist*NMC.nc
66!IM pasphys : pas de temps de physique (secondes)
67       REAL pasphys
[1374]68       LOGICAL ok_histNMC(3)
[1828]69       INTEGER levout_histNMC(3)
[1352]70       REAL freq_outNMC(3) , freq_calNMC(3)
[1279]71       CHARACTER(len=4) type_run
72! aer_type: pour utiliser un fichier constant dans readaerosol
[1938]73       CHARACTER(len=8) :: aer_type
[1877]74       LOGICAL ok_regdyn
[644]75       REAL lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
[1563]76       REAL ecrit_ins, ecrit_hf, ecrit_day
[684]77       REAL ecrit_mth, ecrit_tra, ecrit_reg
[1054]78       REAL ecrit_LES
[828]79       REAL freq_ISCCP, ecrit_ISCCP
[2580]80       REAL freq_COSP, freq_AIRS
[1368]81       LOGICAL :: ok_cosp,ok_mensuelCOSP,ok_journeCOSP,ok_hfCOSP
[2580]82       LOGICAL :: ok_airs
[2227]83       INTEGER :: ip_ebil_phy, iflag_rrtm, iflag_ice_thermo, NSW, iflag_albedo
84       LOGICAL :: ok_chlorophyll
[1001]85       LOGICAL :: ok_strato
[1938]86       LOGICAL :: ok_hines, ok_gwd_rando
[2136]87       LOGICAL :: ok_qch4
[2007]88       LOGICAL :: ok_conserv_q
[2788]89       LOGICAL :: adjust_tropopause
90       LOGICAL :: ok_daily_climoz
[524]91
[1961]92       COMMON/clesphys/                                                 &
93! REAL FIRST
[2007]94     &       co2_ppm, solaire                                           &
[1539]95     &     , RCO2, RCH4, RN2O, RCFC11, RCFC12                           &
96     &     , RCO2_act, RCH4_act, RN2O_act, RCFC11_act, RCFC12_act       &
97     &     , RCO2_per, RCH4_per, RN2O_per, RCFC11_per, RCFC12_per       &
[793]98     &     , CH4_ppb, N2O_ppb, CFC11_ppt, CFC12_ppt                     &
[1539]99     &     , CH4_ppb_per, N2O_ppb_per, CFC11_ppt_per, CFC12_ppt_per     &
[2561]100     &     , cdmmax,cdhmax,ksta,ksta_ter,f_ri_cd_min,pbl_lmixmin_alpha  &
[1961]101     &     , fmagic, pmagic                                             &
[2243]102     &     , f_cdrag_ter,f_cdrag_oce,f_rugoro,z0min                     &
[2254]103     &     , min_wind_speed,f_gust_wk,f_gust_bl,f_qsat_oce,f_z0qh_oce   &
[2243]104     &     , z0m_seaice,z0h_seaice                                      &
[1961]105     &     , pasphys            , freq_outNMC, freq_calNMC              &
106     &     , lonmin_ins, lonmax_ins, latmin_ins, latmax_ins             &
[2580]107     &     , freq_ISCCP, ecrit_ISCCP, freq_COSP, freq_AIRS              &
[1961]108     &     , cvl_corr                                                   &
109     &     , qsol0,albsno0,evap0                                        &
110     &     , co2_ppm0                                                   &
111     &     , ecrit_LES                                                  &
112     &     , ecrit_ins, ecrit_hf, ecrit_day                             &
113     &     , ecrit_mth, ecrit_tra, ecrit_reg                            &
114! THEN INTEGER AND LOGICALS
115     &     , top_height                                                 &
116     &     , cycle_diurne, soil_model, new_oliq                         &
[2707]117     &     , ok_orodr, ok_orolf, ok_limitvrai, nbapp_rad                &
[2730]118     &     , iflag_con, nbapp_cv, nbapp_wk                              &
[1961]119     &     , iflag_ener_conserv                                         &
120     &     , ok_4xCO2atm                                                & 
[2524]121     &     , ok_suntime_rrtm                                            & 
[1961]122     &     , overlap                                                    &
123     &     , ok_kzmin                                                   &
[900]124     &     , lev_histhf, lev_histday, lev_histmth                       &
[1828]125     &     , lev_histins, lev_histLES, lev_histdayNMC, levout_histNMC   &
[1961]126     &     , ok_histNMC                                                 &
[2580]127     &     , type_run, ok_regdyn, ok_cosp, ok_airs                      &
[1368]128     &     , ok_mensuelCOSP,ok_journeCOSP,ok_hfCOSP                     &
[1961]129     &     , ip_ebil_phy                                                &
[2243]130     &     , iflag_gusts ,iflag_z0_oce                                  &
[1961]131     &     , ok_lic_melt,           aer_type                            &
[2136]132     &     , iflag_rrtm, ok_strato,ok_hines, ok_qch4                    &
[2227]133     &     , iflag_ice_thermo, ok_gwd_rando, NSW, iflag_albedo          &
[2788]134     &     , ok_chlorophyll,ok_conserv_q, adjust_tropopause             &
135     &     , ok_daily_climoz, ok_all_xml
[766]136     
[1572]137       save /clesphys/
[793]138!$OMP THREADPRIVATE(/clesphys/)
Note: See TracBrowser for help on using the repository browser.