Changeset 532
- Timestamp:
- Feb 15, 2012, 5:55:59 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/thermcell_main_mars.F90
r513 r532 113 113 REAL zdz,zbuoy(ngridmx,nlayermx),zw2m 114 114 LOGICAL activecell(ngridmx),activetmp(ngridmx) 115 REAL a1,b1,ae,be,ad,bd,fdfu,b1inv,a1inv 115 REAL a1,b1,ae,be,ad,bd,fdfu,b1inv,a1inv,omega 116 116 INTEGER tic 117 117 … … 378 378 ad = 0.00048088 ; bd = -0.6697 379 379 fdfu = -1.3 380 a1inv=a1 381 b1inv=b1 382 omega=0. 383 384 ! One good config for 34/35 levels 385 ! a1inv=a1 386 ! b1inv=b1 387 ! be=1.1*be 380 388 381 389 ! Best configuration for 222 levels: 390 391 omega=0.06 382 392 b1=0. 383 a1= 0.7*a1393 a1=1. 384 394 a1inv=0.25*a1 385 395 b1inv=0.0002 386 396 397 ! Best config for norad 222 levels: 398 399 ! omega=0.06 400 ! a1=1. 401 ! b1=0. 402 ! a1inv=a1 403 ! be=1.1*be 404 ! ad = 0.0004 405 ! b1inv=0.00035 406 407 ! Trying stuff : 408 409 ! omega=0.06 410 ! a1=1. 411 ! b1=0. 412 ! be=be 413 ! a1inv=0.25*a1 414 ! b1inv=0.0002 415 ! ad=1.1*ad 416 ! ae=1.*ae 387 417 ! -------------------------------------------------------------------------- 388 418 ! -------------------------------------------------------------------------- … … 503 533 if (((a1*zbuoy(ig,l)/w_est(ig,l)-b1) .gt. 0.) .and. (w_est(ig,l) .ne. 0.)) then 504 534 w_est(ig,l+1)=Max(0.0001,w_est(ig,l)+2.*zdz*a1*zbuoy(ig,l)-2.*zdz*w_est(ig,l)*b1 & 505 & -2.* zdz*w_est(ig,l)*ae*(a1*zbuoy(ig,l)/w_est(ig,l)-b1)**be)535 & -2.*(1.-omega)*zdz*w_est(ig,l)*ae*(a1*zbuoy(ig,l)/w_est(ig,l)-b1)**be) 506 536 else 507 537 w_est(ig,l+1)=Max(0.0001,w_est(ig,l)+2.*zdz*a1inv*zbuoy(ig,l)-2.*zdz*w_est(ig,l)*b1inv) … … 598 628 !--------------------------------------------------------------------------- 599 629 600 DO tic=0, 5! internal convergence loop630 DO tic=0,0 ! internal convergence loop 601 631 activetmp(:)=activecell(:) .and. f_star(:,l+1)>1.e-10 602 632 do ig=1,ngridmx … … 619 649 if (((a1*zbuoy(ig,l)/zw2(ig,l)-b1) .gt. 0.) .and. (zw2(ig,l) .ne. 0.) ) then 620 650 zw2(ig,l+1)=Max(0.,zw2(ig,l)+2.*zdz*a1*zbuoy(ig,l)- & 621 & 2.*zdz*zw2(ig,l)*b1-2.* zdz*zw2(ig,l)*ae*(a1*zbuoy(ig,l)/zw2(ig,l)-b1)**be)651 & 2.*zdz*zw2(ig,l)*b1-2.*(1.-omega)*zdz*zw2(ig,l)*ae*(a1*zbuoy(ig,l)/zw2(ig,l)-b1)**be) 622 652 else 623 653 zw2(ig,l+1)=Max(0.,zw2(ig,l)+2.*zdz*a1inv*zbuoy(ig,l)-2.*zdz*zw2(ig,l)*b1inv)
Note: See TracChangeset
for help on using the changeset viewer.