992 |
c -------------------------------------------------------------------- |
c -------------------------------------------------------------------- |
993 |
watnow = cldwater(i,1,L) |
watnow = cldwater(i,1,L) |
994 |
if( plev.le.500.0 ) then |
if( plev.le.500.0 ) then |
995 |
cldras = min( max( cldras_lw(i,1,L)*cldras_mem,cpen(i,1,L)),1.0) |
cldras = min( max( cldras_lw(i,1,L)*cldras_mem,cpen(i,1,L)),1.0 _d 0) |
996 |
else |
else |
997 |
cldras = 0.0 |
cldras = 0.0 |
998 |
endif |
endif |
999 |
cldlsp = min( max( cldlsp_lw(i,1,L)*cldlsp_mem,cldls(i,1,L)),1.0) |
cldlsp = min( max( cldlsp_lw(i,1,L)*cldlsp_mem,cldls(i,1,L)),1.0 _d 0) |
1000 |
|
|
1001 |
if( cldras.lt.cldmin ) cldras = 0.0 |
if( cldras.lt.cldmin ) cldras = 0.0 |
1002 |
if( cldlsp.lt.cldmin ) cldlsp = 0.0 |
if( cldlsp.lt.cldmin ) cldlsp = 0.0 |
1013 |
c --------------------------------------------------------------------- |
c --------------------------------------------------------------------- |
1014 |
watnow = cldwater(i,1,L) |
watnow = cldwater(i,1,L) |
1015 |
if( plev.le.500.0 ) then |
if( plev.le.500.0 ) then |
1016 |
cldras = min( max(cldras_sw(i,1,L)*cldras_mem, cpen(i,1,L)),1.0) |
cldras = min( max(cldras_sw(i,1,L)*cldras_mem, cpen(i,1,L)),1.0 _d 0) |
1017 |
else |
else |
1018 |
cldras = 0.0 |
cldras = 0.0 |
1019 |
endif |
endif |
1020 |
cldlsp = min( max(cldlsp_sw(i,1,L)*cldlsp_mem,cldls(i,1,L)),1.0) |
cldlsp = min( max(cldlsp_sw(i,1,L)*cldlsp_mem,cldls(i,1,L)),1.0 _d 0) |
1021 |
|
|
1022 |
if( cldras.lt.cldmin ) cldras = 0.0 |
if( cldras.lt.cldmin ) cldras = 0.0 |
1023 |
if( cldlsp.lt.cldmin ) cldlsp = 0.0 |
if( cldlsp.lt.cldmin ) cldlsp = 0.0 |
2204 |
C |
C |
2205 |
DO 10 I=1,lng |
DO 10 I=1,lng |
2206 |
rno(i) = 1.0 |
rno(i) = 1.0 |
2207 |
ccc if( pl(i).le.400.0 ) rno(i) = max( 0.75, 1.0-0.0025*(400.0-pl(i)) ) |
ccc if( pl(i).le.400.0 ) rno(i) = max( 0.75 _d 0, 1.0-0.0025*(400.0-pl(i)) ) |
2208 |
|
|
2209 |
ccc IF ( PL(I).GE.P7 .AND. PL(I).LE.P9 ) THEN |
ccc IF ( PL(I).GE.P7 .AND. PL(I).LE.P9 ) THEN |
2210 |
ccc RNO(I) = ((P9-PL(I))/(P9-P7)) **2 |
ccc RNO(I) = ((P9-PL(I))/(P9-P7)) **2 |
2473 |
if( rhcrit(i,L).eq.1.0 ) then |
if( rhcrit(i,L).eq.1.0 ) then |
2474 |
fact = 1.0 |
fact = 1.0 |
2475 |
else |
else |
2476 |
fact = min( 1.0, alpha + (1.0-alpha)*( rh-rhcrit(i,L)) / |
fact = min( 1.0 _d 0, alpha + (1.0-alpha)*( rh-rhcrit(i,L)) / |
2477 |
1 (1.0-rhcrit(i,L)) ) |
1 (1.0-rhcrit(i,L)) ) |
2478 |
endif |
endif |
2479 |
|
|
2579 |
ratio = alpha*(rh-rhcrit)/offset |
ratio = alpha*(rh-rhcrit)/offset |
2580 |
|
|
2581 |
if(cloud(i,L).eq. 0.0 .and. ratio.gt.0.0 ) then |
if(cloud(i,L).eq. 0.0 .and. ratio.gt.0.0 ) then |
2582 |
cloud(i,L) = min( ratio,1.0 ) |
cloud(i,L) = min( ratio,1.0 _d 0) |
2583 |
endif |
endif |
2584 |
|
|
2585 |
enddo |
enddo |
2622 |
. / ( 2+(1+1.608*cpoel*t)*elocp*dqsdt ) |
. / ( 2+(1+1.608*cpoel*t)*elocp*dqsdt ) |
2623 |
|
|
2624 |
s = ( (k-krd)/(kmm-krd) ) |
s = ( (k-krd)/(kmm-krd) ) |
2625 |
f = 1.0 - min( 1.0, max(0.0,1.0-exp(-s)) ) |
f = 1.0 - min( 1.0 _d 0, max(0.0 _d 0,1.0-exp(-s)) ) |
2626 |
|
|
2627 |
cldfrc(i,L) = cldfrc(i,L)*f |
cldfrc(i,L) = cldfrc(i,L)*f |
2628 |
cldwat(i,L) = cldwat(i,L)*f |
cldwat(i,L) = cldwat(i,L)*f |