- Timestamp:
- Jul 20, 2024, 12:00:23 PM (2 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_plume.F90
r5082 r5087 6 6 7 7 SUBROUTINE thermcell_plume(itap,ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz, & 8 &zlev,pplev,pphi,zpspsk,alim_star,alim_star_tot, &9 &lalim,f0,detr_star,entr_star,f_star,csc,ztva, &10 &ztla,zqla,zqta,zha,zw2,w_est,ztva_est,zqsatth,lmix,lmix_bis,linter &11 &,lev_out,lunout1,igout)8 zlev,pplev,pphi,zpspsk,alim_star,alim_star_tot, & 9 lalim,f0,detr_star,entr_star,f_star,csc,ztva, & 10 ztla,zqla,zqta,zha,zw2,w_est,ztva_est,zqsatth,lmix,lmix_bis,linter & 11 ,lev_out,lunout1,igout) 12 12 ! & ,lev_out,lunout1,igout,zbuoy,zbuoyjam) 13 13 !-------------------------------------------------------------------------- … … 227 227 ztva_est(ig,l) = ztva_est(ig,l)/zpspsk(ig,l) 228 228 ztva_est(ig,l) = ztva_est(ig,l)*(1.+RETV*(zqta(ig,l-1) & 229 &-zqla_est(ig,l))-zqla_est(ig,l))229 -zqla_est(ig,l))-zqla_est(ig,l)) 230 230 231 231 … … 265 265 coefzlmel=Min(1.,(zlmelup-zltdwn)/zdz) 266 266 zbuoyjam(ig,l)=1.*RG*(coefzlmel*(ztva_est(ig,l)- & 267 &ztv(ig,lt))/ztv(ig,lt)+(1.-coefzlmel)*(ztva_est(ig,l)- &268 &ztv(ig,lt-1))/ztv(ig,lt-1))+0.*zbuoy(ig,l)267 ztv(ig,lt))/ztv(ig,lt)+(1.-coefzlmel)*(ztva_est(ig,l)- & 268 ztv(ig,lt-1))/ztv(ig,lt-1))+0.*zbuoy(ig,l) 269 269 270 270 !------------------------------------------------ … … 303 303 304 304 detr_star(ig,l)=f_star(ig,l)*zdz & 305 &*( mix0 * 0.1 / (zalpha+0.001) &306 &+ MAX(detr_min, -afact*zbetalpha*zbuoyjam(ig,l)/zw2m &307 &+ detr_q_coef*(zdqt(ig,l)/zw2m)**detr_q_power))305 *( mix0 * 0.1 / (zalpha+0.001) & 306 + MAX(detr_min, -afact*zbetalpha*zbuoyjam(ig,l)/zw2m & 307 + detr_q_coef*(zdqt(ig,l)/zw2m)**detr_q_power)) 308 308 309 309 if ( iflag_thermals_ed == 20 ) then 310 310 entr_star(ig,l)=f_star(ig,l)*zdz* ( & 311 &mix0 * 0.1 / (zalpha+0.001) &312 &+ zbetalpha*MAX(entr_min, &313 &afact*zbuoyjam(ig,l)/zw2m - fact_epsilon))311 mix0 * 0.1 / (zalpha+0.001) & 312 + zbetalpha*MAX(entr_min, & 313 afact*zbuoyjam(ig,l)/zw2m - fact_epsilon)) 314 314 else 315 315 entr_star(ig,l)=f_star(ig,l)*zdz* ( & 316 &mix0 * 0.1 / (zalpha+0.001) &317 &+ zbetalpha*MAX(entr_min, &318 &afact*zbuoy(ig,l)/zw2m - fact_epsilon))316 mix0 * 0.1 / (zalpha+0.001) & 317 + zbetalpha*MAX(entr_min, & 318 afact*zbuoy(ig,l)/zw2m - fact_epsilon)) 319 319 endif 320 320 … … 326 326 endif 327 327 f_star(ig,l+1)=f_star(ig,l)+alim_star(ig,l)+entr_star(ig,l) & 328 &-detr_star(ig,l)328 -detr_star(ig,l) 329 329 330 330 endif … … 341 341 Zsat=.false. 342 342 ztla(ig,l)=(f_star(ig,l)*ztla(ig,l-1)+ & 343 &(alim_star(ig,l)+entr_star(ig,l))*zthl(ig,l)) &344 &/(f_star(ig,l+1)+detr_star(ig,l))343 (alim_star(ig,l)+entr_star(ig,l))*zthl(ig,l)) & 344 /(f_star(ig,l+1)+detr_star(ig,l)) 345 345 zqta(ig,l)=(f_star(ig,l)*zqta(ig,l-1)+ & 346 &(alim_star(ig,l)+entr_star(ig,l))*po(ig,l)) &347 &/(f_star(ig,l+1)+detr_star(ig,l))346 (alim_star(ig,l)+entr_star(ig,l))*po(ig,l)) & 347 /(f_star(ig,l+1)+detr_star(ig,l)) 348 348 349 349 endif … … 362 362 zha(ig,l) = ztva(ig,l) 363 363 ztva(ig,l) = ztva(ig,l)*(1.+RETV*(zqta(ig,l) & 364 &-zqla(ig,l))-zqla(ig,l))364 -zqla(ig,l))-zqla(ig,l)) 365 365 zbuoy(ig,l)=RG*(ztva(ig,l)-ztv(ig,l))/ztv(ig,l) 366 366 zdz=zlev(ig,l+1)-zlev(ig,l) … … 393 393 if (zw2(ig,l+1)<0.) then 394 394 linter(ig)=(l*(zw2(ig,l+1)-zw2(ig,l)) & 395 &-zw2(ig,l))/(zw2(ig,l+1)-zw2(ig,l))395 -zw2(ig,l))/(zw2(ig,l+1)-zw2(ig,l)) 396 396 zw2(ig,l+1)=0. 397 397 !+CR:04/05/12:correction calcul linter pour calcul de zmax continu 398 398 elseif (f_star(ig,l+1)<0.) then 399 399 linter(ig)=(l*(f_star(ig,l+1)-f_star(ig,l)) & 400 &-f_star(ig,l))/(f_star(ig,l+1)-f_star(ig,l))400 -f_star(ig,l))/(f_star(ig,l+1)-f_star(ig,l)) 401 401 zw2(ig,l+1)=0. 402 402 !fin CR:04/05/12
Note: See TracChangeset
for help on using the changeset viewer.