Changeset 1279 for LMDZ4/trunk/libf/phylmd/fisrtilp.F
- Timestamp:
- Dec 10, 2009, 10:02:56 AM (15 years ago)
- Location:
- LMDZ4/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk
- Property svn:mergeinfo changed
/LMDZ4/branches/LMDZ4-dev merged: 1150-1162,1164-1193,1195-1231,1234-1235,1237-1240,1242-1274,1276
- Property svn:mergeinfo changed
-
LMDZ4/trunk/libf/phylmd/fisrtilp.F
r1146 r1279 54 54 REAL frac_impa(klon,klev) 55 55 REAL frac_nucl(klon,klev) 56 real zct (klon),zcl(klon)56 real zct ,zcl 57 57 cAA 58 58 c … … 87 87 REAL ztglace, zt(klon) 88 88 INTEGER nexpo ! exponentiel pour glace/eau 89 REAL zdz(klon),zrho(klon),ztot (klon), zrhol(klon)90 REAL zchau (klon),zfroi(klon),zfice(klon),zneb(klon)89 REAL zdz(klon),zrho(klon),ztot , zrhol(klon) 90 REAL zchau ,zfroi ,zfice(klon),zneb(klon) 91 91 c 92 92 LOGICAL appel1er … … 150 150 cAA Initialisation a 1 des coefs des fractions lessivees 151 151 c 152 !cdir collapse 152 153 DO k = 1, klev 153 154 DO i = 1, klon … … 161 162 c 162 163 cMAf Initialisation a 0 de zoliq 163 164 165 164 c DO i = 1, klon 165 c zoliq(i)=0. 166 c ENDDO 166 167 c Determiner les nuages froids par leur temperature 167 168 c nexpo regle la raideur de la transition eau liquide / eau glace. … … 173 174 c Initialiser les sorties: 174 175 c 176 !cdir collapse 175 177 DO k = 1, klev+1 176 178 DO i = 1, klon … … 180 182 ENDDO 181 183 184 !cdir collapse 182 185 DO k = 1, klev 183 186 DO i = 1, klon … … 194 197 rain(i) = 0.0 195 198 snow(i) = 0.0 196 ENDDO 199 zoliq(i)=0. 200 c ENDDO 197 201 c 198 202 c Initialiser le flux de precipitation a zero 199 203 c 200 204 c DO i = 1, klon 201 205 zrfl(i) = 0.0 202 206 zneb(i) = seuil_neb … … 441 445 zrhol(i) = zrho(i) * zoliq(i) / zneb(i) 442 446 443 if (ptconv(i,k)) then 444 zcl(i)=cld_lc_con 445 zct(i)=1./cld_tau_con 446 else 447 zcl(i)=cld_lc_lsc 448 zct(i)=1./cld_tau_lsc 449 endif 450 c quantit�d'eau ��minier. 451 zchau(i) = zct(i)*dtime/FLOAT(ninter) * zoliq(i) 452 . *(1.0-EXP(-(zoliq(i)/zneb(i)/zcl(i))**2)) *(1.-zfice(i)) 453 c meme chose pour la glace. 454 if (ptconv(i,k)) then 455 zfroi(i) = dtime/FLOAT(ninter)/zdz(i)*zoliq(i) 447 IF (zneb(i).EQ.seuil_neb) THEN 448 ztot = 0.0 449 ELSE 450 c quantite d'eau a eliminer: zchau 451 c meme chose pour la glace: zfroi 452 if (ptconv(i,k)) then 453 zcl =cld_lc_con 454 zct =1./cld_tau_con 455 zfroi = dtime/FLOAT(ninter)/zdz(i)*zoliq(i) 456 456 . *fallvc(zrhol(i)) * zfice(i) 457 else 458 zfroi(i) = dtime/FLOAT(ninter)/zdz(i)*zoliq(i) 457 else 458 zcl =cld_lc_lsc 459 zct =1./cld_tau_lsc 460 zfroi = dtime/FLOAT(ninter)/zdz(i)*zoliq(i) 459 461 . *fallvs(zrhol(i)) * zfice(i) 460 endif 461 ztot(i) = zchau(i) + zfroi(i) 462 IF (zneb(i).EQ.seuil_neb) ztot(i) = 0.0 463 ztot(i) = MIN(MAX(ztot(i),0.0),zoliq(i)) 464 zoliq(i) = MAX(zoliq(i)-ztot(i), 0.0) 462 endif 463 zchau = zct *dtime/FLOAT(ninter) * zoliq(i) 464 . *(1.0-EXP(-(zoliq(i)/zneb(i)/zcl )**2)) *(1.-zfice(i)) 465 ztot = zchau + zfroi 466 ztot = MAX(ztot ,0.0) 467 ENDIF 468 ztot = MIN(ztot,zoliq(i)) 469 zoliq(i) = MAX(zoliq(i)-ztot , 0.0) 465 470 radliq(i,k) = radliq(i,k) + zoliq(i)/FLOAT(ninter+1) 466 471 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.