Changeset 2628 for trunk/LMDZ.MARS/libf/phymars/physiq_mod.F
- Timestamp:
- Feb 28, 2022, 6:46:07 PM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/physiq_mod.F
r2616 r2628 23 23 use rocketduststorm_mod, only: rocketduststorm, dustliftday 24 24 use calcstormfract_mod, only: calcstormfract 25 use topmons_mod, only: topmons, alpha_hmons25 use topmons_mod, only: topmons,topmons_setup 26 26 use tracer_mod, only: noms, mmol, igcm_co2, igcm_n2, igcm_co2_ice, 27 27 & igcm_co, igcm_o, igcm_h2o_vap, igcm_h2o_ice, … … 308 308 ! - in a mesh with stormdust and background dust (false) 309 309 ! - in a mesh with background dust only (true) 310 c entrainment by slope winds310 c entrainment by mountain top dust flows 311 311 logical nohmons ! nohmons used to calculate twice the radiative 312 ! transfer when slpwindis active :312 ! transfer when topflows is active : 313 313 ! - in a mesh with topdust and background dust (false) 314 314 ! - in a mesh with background dust only (true) … … 507 507 REAL co2totB 508 508 509 c entrainment by slope winds above sb-grid scale topography509 c entrainment by mountain top dust flows above sub-grid scale topography 510 510 REAL pdqtop(ngrid,nlayer,nq) ! tendency for dust after topmons 511 REAL hmax,hmin512 REAL hsummit(ngrid)513 511 514 512 c when no startfi file is asked for init … … 718 716 endif 719 717 720 c Initialize mountain mesh fraction for the entrainment by slope windparam.718 c Initialize mountain mesh fraction for the entrainment by top flows param. 721 719 c ~~~~~~~~~~~~~~~ 722 if (slpwind) then 723 !! alpha_hmons calculation 724 if (ngrid.gt.1) then 725 call planetwide_maxval(hmons,hmax ) 726 call planetwide_minval(hmons,hmin ) 727 do ig=1,ngrid 728 alpha_hmons(ig)= 0.5*(hmons(ig)-hmin)/(hmax-hmin) 729 enddo 730 else 731 hmin=0. 732 hmax=23162.1 !set here the height of the sub-grid scaled topography 733 do ig=1,ngrid 734 alpha_hmons(ig)= (hmons(ig)-hmin)/(hmax-hmin) !0.1*(hmons(ig)-hmin)/(hmax-hmin) 735 print*,"1D, hmons=",hmons(ig),"alpha=",alpha_hmons(ig) 736 enddo 737 endif ! (ngrid.gt.1) 738 endif ! if (slpwind) 720 if (topflows) call topmons_setup(ngrid) 739 721 740 722 #endif … … 972 954 c Transfer through CO2 (except NIR CO2 absorption) 973 955 c and aerosols (dust and water ice) 974 ! callradite for background dust 956 ! callradite for background dust (out of the rdstorm fraction) 975 957 clearatm=.true. 976 !! callradite for background dust in the case of slope wind entrainment958 !! callradite for background dust (out of the topflows fraction) 977 959 nohmons=.true. 978 960 … … 988 970 & taucloudtes,rdust,rice,nuice,riceco2,nuiceco2,co2ice, 989 971 & rstormdust,rtopdust,totstormfract,clearatm,dsords,dsotop, 990 & alpha_hmons,nohmons,clearsky,totcloudfrac)972 & nohmons,clearsky,totcloudfrac) 991 973 992 974 ! case of sub-grid water ice clouds: callradite for the clear case … … 1006 988 & rice,nuice,riceco2, nuiceco2,co2ice,rstormdust, 1007 989 & rtopdust,totstormfract, 1008 & clearatm,dsords,dsotop, alpha_hmons,nohmons,1009 & clearsky,totcloudfrac)990 & clearatm,dsords,dsotop, 991 & nohmons,clearsky,totcloudfrac) 1010 992 clearsky = .false. ! just in case. 1011 993 ! Sum the fluxes and heating rates from cloudy/clear … … 1200 1182 & clearsky,totcloudfrac, 1201 1183 c input sub-grid scale topography 1202 & nohmons, alpha_hmons,1184 & nohmons, 1203 1185 c output 1204 1186 & pdqrds,wspeed,dsodust,dsords,dsotop, … … 1250 1232 c 3.2 Dust entrained from the PBL up to the top of sub-grid scale topography 1251 1233 c ------------------------------------------- 1252 IF (slpwind) THEN 1253 if (ngrid.gt.1) then 1254 hsummit(:)=summit(:)-phisfi(:)/g 1255 else 1256 hsummit(:)=14000. 1257 endif 1234 IF (topflows) THEN 1258 1235 clearatm=.true. ! stormdust is not accounted in the extra heating on top of the mountains 1259 1236 nohmons=.false. … … 1266 1243 & totstormfract,clearatm, 1267 1244 & clearsky,totcloudfrac, 1268 & nohmons, hsummit,1245 & nohmons, 1269 1246 & pdqtop,wtop,dsodust,dsords,dsotop, 1270 1247 & tau_pref_scenario,tau_pref_gcm) … … 1287 1264 ENDDO 1288 1265 1289 ENDIF ! end of if ( slpwind)1266 ENDIF ! end of if (topflows) 1290 1267 1291 1268 c 3.3 Dust injection from the surface … … 3387 3364 endif ! (rdstorm) 3388 3365 3389 if ( slpwind) then3366 if (topflows) then 3390 3367 call WRITEDIAGFI(ngrid,'refftopdust','refftopdust', 3391 3368 & 'm',3,rtopdust*ref_r0) … … 3404 3381 & 'm2.kg-1',3,dsotop) 3405 3382 end select 3406 endif ! ( slpwind)3383 endif ! (topflows) 3407 3384 3408 3385 if (dustscaling_mode==2) then
Note: See TracChangeset
for help on using the changeset viewer.