Changeset 1403 for LMDZ4/trunk/libf/phylmd/fisrtilp.F
- Timestamp:
- Jul 1, 2010, 11:02:53 AM (14 years ago)
- Location:
- LMDZ4/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk
- Property svn:mergeinfo changed
-
LMDZ4/trunk/libf/phylmd/fisrtilp.F
r1279 r1403 1 1 ! 2 ! $ Header$2 ! $Id$ 3 3 ! 4 4 c … … 7 7 s pfrac_impa, pfrac_nucl, pfrac_1nucl, 8 8 s frac_impa, frac_nucl, 9 s prfl, psfl, rhcl) 9 s prfl, psfl, rhcl, zqta, fraca, 10 s ztv, zpspsk, ztla, zthl, iflag_cldcon) 10 11 11 12 c … … 41 42 REAL snow(klon) ! neige (mm/s) 42 43 REAL prfl(klon,klev+1) ! flux d'eau precipitante aux interfaces (kg/m2/s) 43 REAL psfl(klon,klev+1) ! flux d'eau precipitante aux interfaces (kg/m2/s) 44 REAL psfl(klon,klev+1) ! flux d'eau precipitante aux interfaces (kg/m2/s) 45 REAL ztv(klon,klev) 46 REAL zqta(klon,klev),fraca(klon,klev) 47 REAL sigma1(klon,klev),sigma2(klon,klev) 48 REAL qltot(klon,klev),ctot(klon,klev) 49 REAL zpspsk(klon,klev),ztla(klon,klev) 50 REAL zthl(klon,klev) 51 44 52 cAA 45 53 c Coeffients de fraction lessivee : pour OFF-LINE … … 63 71 64 72 INTEGER ninter ! sous-intervals pour la precipitation 65 INTEGER ncoreczq 73 INTEGER ncoreczq 74 INTEGER iflag_cldcon 66 75 PARAMETER (ninter=5) 67 76 LOGICAL evap_prec ! evaporation de la pluie … … 72 81 real zpdf_sig(klon),zpdf_k(klon),zpdf_delta(klon) 73 82 real Zpdf_a(klon),zpdf_b(klon),zpdf_e1(klon),zpdf_e2(klon) 74 real erf 83 real erf 84 REAL qcloud(klon) 75 85 c 76 86 LOGICAL cpartiel ! condensation partielle … … 82 92 c 83 93 INTEGER i, k, n, kk 84 REAL zqs(klon), zdqs(klon), zdelta, zcor, zcvm5 94 REAL zqs(klon), zdqs(klon), zdelta, zcor, zcvm5 85 95 REAL zrfl(klon), zrfln(klon), zqev, zqevt 86 96 REAL zoliq(klon), zcond(klon), zq(klon), zqn(klon), zdelq … … 130 140 zdelq=0.0 131 141 142 print*,'CLOUDTH4 A. JAM' 132 143 IF (appel1er) THEN 133 144 c … … 135 146 PRINT*, 'fisrtilp, evap_prec:', evap_prec 136 147 PRINT*, 'fisrtilp, cpartiel:', cpartiel 137 IF (ABS(dtime/ FLOAT(ninter)-360.0).GT.0.001) THEN148 IF (ABS(dtime/REAL(ninter)-360.0).GT.0.001) THEN 138 149 PRINT*, 'fisrtilp: Ce n est pas prevu, voir Z.X.Li', dtime 139 150 PRINT*, 'Je prefere un sous-intervalle de 6 minutes' … … 322 333 c de l'eau condensee: 323 334 c 335 324 336 IF (cpartiel) THEN 325 337 … … 351 363 zq(i)=1.e-15 352 364 endif 353 enddo 354 do i=1,klon 365 enddo 366 367 if (iflag_cldcon.eq.5) then 368 369 call cloudth(klon,klev,k,ztv, 370 . zq,zqta,fraca, 371 . qcloud,ctot,zpspsk,paprs,ztla,zthl, 372 . ratqs,zqs,t) 373 374 do i=1,klon 375 rneb(i,k)=ctot(i,k) 376 zqn(i)=qcloud(i) 377 enddo 378 379 else 380 381 do i=1,klon 355 382 zpdf_sig(i)=ratqs(i,k)*zq(i) 356 383 zpdf_k(i)=-sqrt(log(1.+(zpdf_sig(i)/zq(i))**2)) … … 372 399 endif 373 400 374 enddo 401 enddo 402 403 endif ! iflag_cldcon 375 404 376 405 endif ! iflag_pdf … … 436 465 zfice(i) = zfice(i)**nexpo 437 466 zneb(i) = MAX(rneb(i,k), seuil_neb) 438 radliq(i,k) = zoliq(i)/ FLOAT(ninter+1)467 radliq(i,k) = zoliq(i)/REAL(ninter+1) 439 468 ENDIF 440 469 ENDDO … … 453 482 zcl =cld_lc_con 454 483 zct =1./cld_tau_con 455 zfroi = dtime/ FLOAT(ninter)/zdz(i)*zoliq(i)484 zfroi = dtime/REAL(ninter)/zdz(i)*zoliq(i) 456 485 . *fallvc(zrhol(i)) * zfice(i) 457 486 else 458 487 zcl =cld_lc_lsc 459 488 zct =1./cld_tau_lsc 460 zfroi = dtime/ FLOAT(ninter)/zdz(i)*zoliq(i)489 zfroi = dtime/REAL(ninter)/zdz(i)*zoliq(i) 461 490 . *fallvs(zrhol(i)) * zfice(i) 462 491 endif 463 zchau = zct *dtime/ FLOAT(ninter) * zoliq(i)492 zchau = zct *dtime/REAL(ninter) * zoliq(i) 464 493 . *(1.0-EXP(-(zoliq(i)/zneb(i)/zcl )**2)) *(1.-zfice(i)) 465 494 ztot = zchau + zfroi … … 468 497 ztot = MIN(ztot,zoliq(i)) 469 498 zoliq(i) = MAX(zoliq(i)-ztot , 0.0) 470 radliq(i,k) = radliq(i,k) + zoliq(i)/ FLOAT(ninter+1)499 radliq(i,k) = radliq(i,k) + zoliq(i)/REAL(ninter+1) 471 500 ENDIF 472 501 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.