Changeset 1651
- Timestamp:
- Jan 30, 2017, 11:52:09 AM (8 years ago)
- Location:
- trunk/LMDZ.MARS
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/README
r1649 r1651 2374 2374 -callphys.def.co2clouds was added in deftank. It contains the necessary flags and constant for including co2clouds 2375 2375 -traceur.def.co2clouds was added in deftank. It supplies the necessary tracers for running the co2 clouds scheme 2376 2377 == 30/01/2017 == JA 2378 -Modification of CO2 clouds microtimestep : now is set by imicro in callphys.def together with the water ice clouds microtimestep 2379 -Addition of a meteoritic flux of dust is now possible: 2380 meteoriticflux_mod.F90 was added, it contains 3 variables that are provided in callphys.def (default values = no flux): meteo_flux_mass, meteo_flux_number and meteo_alt (in km) 2381 meteo_flux_mass and meteo_flux_number are added to the dust tracers at the z-level corresponding to meteo_alt at every timestep inside co2cloud.F 2382 conf_phys.F was modified to perform the initialization of the meteoritic flux with the callphys.def values (default values = no flux) 2383 callphys.def.co2clouds in deftank has been accordingly modified 2384 2385 2386 2387 2388 -
trunk/LMDZ.MARS/deftank/callphys.def.co2clouds
r1649 r1651 127 127 naerkind = 1 128 128 129 imicro=30 129 130 #include co2 clouds scheme? 130 131 co2clouds=.true. … … 164 165 ## be used to compensate for low 15 um cooling) 165 166 euveff = 0.21 167 #meteoritic flux of dust 168 meteo_flux_mass=2.21938e-14 169 meteo_flux_number= 2.11935e+09 170 meteo_alt= 90 166 171 167 172 -
trunk/LMDZ.MARS/libf/phymars/co2cloud.F
r1649 r1651 12 12 use tracer_mod, only: nqmx, igcm_co2, igcm_co2_ice, 13 13 & igcm_dust_mass, igcm_dust_number, 14 & igcm_dust_mass, igcm_dust_number,15 14 & igcm_ccnco2_mass, igcm_ccnco2_number, 16 15 & rho_dust, nuiceco2_sed, nuiceco2_ref, 17 16 & rho_ice_co2,r3n_q 17 USE meteoriticflux_mod, ONLY:meteo_flux_mass,meteo_flux_number 18 & ,meteo_alt 19 18 20 IMPLICIT NONE 19 21 … … 126 128 real masse (ngrid,nlay) ! Layer mass (kg.m-2) 127 129 128 130 double precision diff,diff0 131 integer meteo_lvl 129 132 real tempo_traceur_t(ngrid,nlay) 130 133 real tempo_traceurs(ngrid,nlay,nq) … … 152 155 #endif 153 156 call getin("imicro",imicro) 154 imicro=ptimestep/50.155 156 157 write(*,*)"imicro = ",imicro 157 158 … … 159 160 write(*,*)"Physical timestep is",ptimestep 160 161 write(*,*)"CO2 Microphysics timestep is",microtimestep 161 162 163 164 write(*,*) "Warning ! Meteoritic flux of dust is turned on" 165 write(*,*) "Dust mass = ",meteo_flux_mass 166 write(*,*) "Dust number = ",meteo_flux_number 167 write(*,*) "Are added at the z-level (km)",meteo_alt 168 write(*,*) "Every timestep in co2cloud.F" 169 162 170 firstcall=.false. 163 171 ENDIF ! of IF (firstcall) 164 172 165 173 c-----Initialization 174 175 c add meteoritic flux of dust 176 !convert meteo_alt (in km) to z-level 177 !pzlay altitudes of the layers 178 179 do ig=1, ngrid 180 diff0=1000 181 meteo_lvl=1 182 do l=1,nlay 183 diff=pzlay(ig,l)/1000-meteo_alt 184 if (abs(diff) .lt. diff0) then 185 diff0=abs(diff) 186 meteo_lvl=l 187 endif 188 enddo 189 c write(*,*) "meteo_lvl=",meteo_lvl 190 pq(ig,meteo_lvl,igcm_dust_mass)=pq(ig,meteo_lvl,igcm_dust_mass) 191 & +meteo_flux_mass 192 pq(ig,meteo_lvl,igcm_dust_number)= 193 & pq(ig,meteo_lvl,igcm_dust_number)+meteo_flux_number 194 enddo 195 196 call WRITEDIAGFI(ngrid,"pzlay","altitude","km",3, 197 & pzlay) 166 198 beta=0.85 167 199 subpdq(1:ngrid,1:nlay,1:nq) = 0 -
trunk/LMDZ.MARS/libf/phymars/conf_phys.F
r1619 r1651 44 44 use dimradmars_mod, only: naerkind, name_iaer, 45 45 & ini_scatterers,tauvis 46 USE meteoriticflux_mod !meteo_flux_mass,meteo_flux_number,alt_meteo 46 47 47 48 IMPLICIT NONE … … 711 712 write(*,*) " euveff = ", euveff 712 713 714 !Meteoritic flux of dust : number, mass and altitude 715 !dust tracers are incremented by thoses values in co2cloud.F 716 ! Thus only apply if co2clouds=.true. in callphys.def 717 meteo_flux_mass=0. 718 call getin("meteo_flux_mass",meteo_flux_mass) 719 meteo_flux_number=0. 720 call getin("meteo_flux_number",meteo_flux_number) 721 meteo_alt=5. 722 call getin("meteo_alt",meteo_alt) 723 WRITE(*,*) "" 724 WRITE(*,*) "meteoritic flux of dust" 725 WRITE(*,*) "dust mass = ",meteo_flux_mass 726 WRITE(*,*) "dust number = ",meteo_flux_number 727 WRITE(*,*) "at altitude = ",meteo_alt 728 729 713 730 if (.not.callthermos) then 714 731 if (thermoswater) then
Note: See TracChangeset
for help on using the changeset viewer.