! ! $Header$ ! subroutine conf_phys(ocean, ok_veget, ok_journe, ok_mensuel, ok_instan, & & fact_cldcon, facttemps,ok_newmicro,iflag_cldcon, & & ratqsbas,ratqshaut,if_ebil) use IOIPSL implicit none #include "conema3.h" #include "fisrtilp.inc" #include "nuage.h" #include "YOMCST.inc" !IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12 include "clesphys.inc" ! ! Configuration de la "physique" de LMDZ a l'aide de la fonction ! GETIN de IOIPSL ! ! LF 05/2001 ! ! ! ocean: type d'ocean (force, slab, couple) ! ok_veget: type de modele de vegetation ! ok_journe: sorties journalieres ! ok_mensuel: sorties mensuelles ! ok_instan: sorties instantanees ! Sortie: character (len = 6) :: ocean logical :: ok_veget, ok_newmicro logical :: ok_journe, ok_mensuel, ok_instan real :: fact_cldcon, facttemps,ratqsbas,ratqshaut integer :: iflag_cldcon, if_ebil ! Local integer :: numout = 6 real :: zzz ! ! ! !Config Key = OCEAN !Config Desc = Type d'ocean !Config Def = force !Config Help = Type d'ocean utilise: force, slab,couple ! ocean = 'force ' call getin('OCEAN', ocean) ! !Config Key = VEGET !Config Desc = Type de modele de vegetation !Config Def = .false. !Config Help = Type de modele de vegetation utilise ! ok_veget = .false. call getin('VEGET', ok_veget) ! !Config Key = OK_journe !Config Desc = Pour des sorties journalieres !Config Def = .false. !Config Help = Pour creer le fichier histday contenant les sorties ! journalieres ! ok_journe = .false. call getin('OK_journe', ok_journe) ! !Config Key = OK_mensuel !Config Desc = Pour des sorties mensuelles !Config Def = .true. !Config Help = Pour creer le fichier histmth contenant les sorties ! mensuelles ! ok_mensuel = .true. call getin('OK_mensuel', ok_mensuel) ! !Config Key = OK_instan !Config Desc = Pour des sorties instantanees !Config Def = .false. !Config Help = Pour creer le fichier histins contenant les sorties ! instantanees ! ok_instan = .false. call getin('OK_instan', ok_instan) ! !Config Key = if_ebil !Config Desc = Niveau de sortie pour les diags bilan d'energie !Config Def = 0 !Config Help = ! ! if_ebil = 0 call getin('if_ebil', if_ebil) !! !! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG !! !Config Key = R_ecc !Config Desc = Excentricite !Config Def = 0.016715 !Config Help = ! !valeur AMIP II R_ecc = 0.016715 call getin('R_ecc', R_ecc) !! !Config Key = R_peri !Config Desc = Equinoxe !Config Def = !Config Help = ! ! !valeur AMIP II R_peri = 102.7 call getin('R_peri', R_peri) !! !Config Key = R_incl !Config Desc = Inclinaison !Config Def = !Config Help = ! ! !valeur AMIP II R_incl = 23.441 call getin('R_incl', R_incl) !! !Config Key = solaire !Config Desc = Constante solaire en W/m2 !Config Def = 1365. !Config Help = ! ! !valeur AMIP II solaire = 1365. call getin('solaire', solaire) !! !Config Key = co2_ppm !Config Desc = concentration du gaz carbonique en ppmv !Config Def = 348. !Config Help = ! ! !valeur AMIP II co2_ppm = 348. call getin('co2_ppm', co2_ppm) !! !Config Key = RCO2 !Config Desc = Concentration du CO2 !Config Def = co2_ppm * 1.0e-06 * 44.011/28.97 !Config Def = 348. * 1.0e-06 * 44.011/28.97 !Config Help = ! ! RCO2 = 5.286789092164308E-04 !ancienne valeur RCO2 = co2_ppm * 1.0e-06 * 44.011/28.97 ! pour co2_ppm=348. !! call getin('RCO2', RCO2) !! !Config Key = RCH4 !Config Desc = Concentration du CH4 !Config Def = 1.65E-06* 16.043/28.97 !Config Help = ! ! !valeur AMIP II !OK RCH4 = 1.65E-06* 16.043/28.97 ! RCH4 = 9.137366240938903E-07 ! !ancienne valeur ! RCH4 = 1.72E-06* 16.043/28.97 !OK call getin('RCH4', RCH4) zzz = 1650. call getin('CH4_ppb', zzz) CH4_ppb = zzz RCH4 = CH4_ppb * 1.0E-09 * 16.043/28.97 !! !Config Key = RN2O !Config Desc = Concentration du N2O !Config Def = 306.E-09* 44.013/28.97 !Config Help = ! ! !valeur AMIP II !OK RN2O = 306.E-09* 44.013/28.97 ! RN2O = 4.648939592682085E-07 ! !ancienne valeur ! RN2O = 310.E-09* 44.013/28.97 !OK call getin('RN2O', RN2O) zzz=306. call getin('N2O_ppb', zzz) N2O_ppb = zzz RN2O = N2O_ppb * 1.0E-09 * 44.013/28.97 !! !Config Key = RCFC11 !Config Desc = Concentration du CFC11 !Config Def = 280.E-12* 137.3686/28.97 !Config Help = ! ! !OK RCFC11 = 280.E-12* 137.3686/28.97 zzz = 280. call getin('CFC11_ppt',zzz) CFC11_ppt = zzz RCFC11=CFC11_ppt* 1.0E-12 * 137.3686/28.97 ! RCFC11 = 1.327690990680013E-09 !OK call getin('RCFC11', RCFC11) !! !Config Key = RCFC12 !Config Desc = Concentration du CFC12 !Config Def = 484.E-12* 120.9140/28.97 !Config Help = ! ! !OK RCFC12 = 484.E-12* 120.9140/28.97 zzz = 484. call getin('CFC12_ppt',zzz) CFC12_ppt = zzz RCFC12 = CFC12_ppt * 1.0E-12 * 120.9140/28.97 ! RCFC12 = 2.020102726958923E-09 !OK call getin('RCFC12', RCFC12) !! !! Constante solaire & Parametres orbitaux & taux gaz effet de serre END !! !! KE ! !Config Key = epmax !Config Desc = Efficacite precip !Config Def = 0.993 !Config Help = ! epmax = .993 call getin('epmax', epmax) ! !Config Key = ok_adj_ema !Config Desc = !Config Def = false !Config Help = ! ok_adj_ema = .false. call getin('ok_adj_ema',ok_adj_ema) ! !Config Key = iflag_clw !Config Desc = !Config Def = 0 !Config Help = ! iflag_clw = 0 call getin('iflag_clw',iflag_clw) ! !Config Key = cld_lc_lsc !Config Desc = !Config Def = 2.6e-4 !Config Help = ! cld_lc_lsc = 2.6e-4 call getin('cld_lc_lsc',cld_lc_lsc) ! !Config Key = cld_lc_con !Config Desc = !Config Def = 2.6e-4 !Config Help = ! cld_lc_con = 2.6e-4 call getin('cld_lc_con',cld_lc_con) ! !Config Key = cld_tau_lsc !Config Desc = !Config Def = 3600. !Config Help = ! cld_tau_lsc = 3600. call getin('cld_tau_lsc',cld_tau_lsc) ! !Config Key = cld_tau_con !Config Desc = !Config Def = 3600. !Config Help = ! cld_tau_con = 3600. call getin('cld_tau_con',cld_tau_con) ! !Config Key = ffallv_lsc !Config Desc = !Config Def = 1. !Config Help = ! ffallv_lsc = 1. call getin('ffallv_lsc',ffallv_lsc) ! !Config Key = ffallv_con !Config Desc = !Config Def = 1. !Config Help = ! ffallv_con = 1. call getin('ffallv_con',ffallv_con) ! !Config Key = coef_eva !Config Desc = !Config Def = 2.e-5 !Config Help = ! coef_eva = 2.e-5 call getin('coef_eva',coef_eva) ! !Config Key = reevap_ice !Config Desc = !Config Def = .false. !Config Help = ! reevap_ice = .false. call getin('reevap_ice',reevap_ice) ! !Config Key = iflag_cldcon !Config Desc = !Config Def = 1 !Config Help = ! iflag_cldcon = 1 call getin('iflag_cldcon',iflag_cldcon) ! !Config Key = iflag_pdf !Config Desc = !Config Def = 0 !Config Help = ! iflag_pdf = 0 call getin('iflag_pdf',iflag_pdf) ! !Config Key = fact_cldcon !Config Desc = !Config Def = 0.375 !Config Help = ! fact_cldcon = 0.375 call getin('fact_cldcon',fact_cldcon) ! !Config Key = facttemps !Config Desc = !Config Def = 1.e-4 !Config Help = ! facttemps = 1.e-4 call getin('facttemps',facttemps) ! !Config Key = ok_newmicro !Config Desc = !Config Def = .true. !Config Help = ! ok_newmicro = .true. call getin('ok_newmicro',ok_newmicro) ! !Config Key = ratqsbas !Config Desc = !Config Def = 0.01 !Config Help = ! ratqsbas = 0.01 call getin('ratqsbas',ratqsbas) ! !Config Key = ratqshaut !Config Desc = !Config Def = 0.3 !Config Help = ! ratqshaut = 0.3 call getin('ratqshaut',ratqshaut) ! !Config Key = rad_froid !Config Desc = !Config Def = 35.0 !Config Help = ! rad_froid = 35.0 call getin('rad_froid',rad_froid) ! !Config Key = rad_chau1 !Config Desc = !Config Def = 13.0 !Config Help = ! rad_chau1 = 13.0 call getin('rad_chau1',rad_chau1) ! !Config Key = rad_chau2 !Config Desc = !Config Def = 9.0 !Config Help = ! rad_chau2 = 9.0 call getin('rad_chau2',rad_chau2) ! !Config Key = top_height !Config Desc = !Config Def = 3 !Config Help = ! top_height = 3 call getin('top_height',top_height) ! !Config Key = overlap !Config Desc = !Config Def = 3 !Config Help = ! overlap = 3 call getin('overlap',overlap) !IM ! !Config Key = cdmmax !Config Desc = !Config Def = 1.3E-3 !Config Help = ! cdmmax = 1.3E-3 call getin('cdmmax',cdmmax) ! !Config Key = cdhmax !Config Desc = !Config Def = 1.1E-3 !Config Help = ! cdhmax = 1.1E-3 call getin('cdhmax',cdhmax) !261103 ! !Config Key = ksta !Config Desc = !Config Def = 1.0e-10 !Config Help = ! ksta = 1.0e-10 call getin('ksta',ksta) ! !Config Key = ksta_ter !Config Desc = !Config Def = 1.0e-10 !Config Help = ! ksta_ter = 1.0e-10 call getin('ksta_ter',ksta_ter) ! !Config Key = ok_kzmin !Config Desc = !Config Def = .true. !Config Help = ! ok_kzmin = .true. call getin('ok_kzmin',ok_kzmin) !261103 ! !Config Key = !Config Desc = !Config Def = !Config Help = ! ! = ! call getin('',) ! ! ! ! write(numout,*)' ##############################################' write(numout,*)' Configuration des parametres de la physique: ' write(numout,*)' Config ocean = ', ocean write(numout,*)' Config veget = ', ok_veget write(numout,*)' Sortie journaliere = ', ok_journe write(numout,*)' Sortie mensuelle = ', ok_mensuel write(numout,*)' Sortie instantanee = ', ok_instan write(numout,*)' Sortie bilan d''energie, if_ebil =', if_ebil !IM constantes physiques BEG write(numout,*)' Excentricite = ',R_ecc write(numout,*)' Equinoxe = ',R_peri write(numout,*)' Inclinaison =',R_incl write(numout,*)' Constante solaire =',solaire write(numout,*)' co2_ppm =',co2_ppm write(numout,*)' RCO2 = ',RCO2 write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4 write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O = ',RN2O write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 = ',RCFC11 write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 = ',RCFC12 !IM constantes physiques END write(numout,*)' epmax = ', epmax write(numout,*)' ok_adj_ema = ', ok_adj_ema write(numout,*)' iflag_clw = ', iflag_clw write(numout,*)' cld_lc_lsc = ', cld_lc_lsc write(numout,*)' cld_lc_con = ', cld_lc_con write(numout,*)' cld_tau_lsc = ', cld_tau_lsc write(numout,*)' cld_tau_con = ', cld_tau_con write(numout,*)' ffallv_lsc = ', ffallv_lsc write(numout,*)' ffallv_con = ', ffallv_con write(numout,*)' coef_eva = ', coef_eva write(numout,*)' reevap_ice = ', reevap_ice write(numout,*)' iflag_pdf = ', iflag_pdf write(numout,*)' iflag_cldcon = ', iflag_cldcon write(numout,*)' fact_cldcon = ', fact_cldcon write(numout,*)' facttemps = ', facttemps write(numout,*)' ok_newmicro = ',ok_newmicro write(numout,*)' ratqsbas = ',ratqsbas write(numout,*)' ratqshaut = ',ratqshaut write(numout,*)' top_height = ',top_height write(numout,*)' overlap = ',overlap write(numout,*)' cdmmax = ',cdmmax write(numout,*)' cdhmax = ',cdhmax write(numout,*)' ksta = ',ksta write(numout,*)' ksta_ter = ',ksta_ter write(numout,*)' ok_kzmin = ',ok_kzmin return end subroutine conf_phys