/[MITgcm]/MITgcm/pkg/aim_v23/phy_radiat.F
ViewVC logotype

Diff of /MITgcm/pkg/aim_v23/phy_radiat.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.3 by jmc, Thu Jun 24 23:43:11 2004 UTC revision 1.4 by dfer, Fri Aug 10 03:09:07 2007 UTC
# Line 169  C-- Local variables: Line 169  C-- Local variables:
169  c     _RL  QCLOUD(NGP), ACLOUD(NGP), PSAZ(NGP),  c     _RL  QCLOUD(NGP), ACLOUD(NGP), PSAZ(NGP),
170        _RL  QCLOUD(NGP), ACLOUD(NGP),        _RL  QCLOUD(NGP), ACLOUD(NGP),
171       &     ALBTOP(NGP,NLEV), FREFL(NGP,NLEV), FLUX(NGP,2)       &     ALBTOP(NGP,NLEV), FREFL(NGP,NLEV), FLUX(NGP,2)
172    #ifdef ALLOW_CLOUD_3D
173    C_DE           CLDCLW = Local cloud cover                           (3-dim)
174          _RL CLDCLW(NGP,NLEV), ACLDLW(NGP,NLEV)
175    #endif
176    
177  C-  jmc: define "FLUX" as a local variable & remove Equivalences:  C-  jmc: define "FLUX" as a local variable & remove Equivalences:
178  c     EQUIVALENCE (ALBTOP(1,1),TAU2(1,1,3))  c     EQUIVALENCE (ALBTOP(1,1),TAU2(1,1,3))
# Line 211  C Line 215  C
215        DO K=1,NLEV        DO K=1,NLEV
216         DO J=1,NGP         DO J=1,NGP
217           ALBTOP(J,K)=0.           ALBTOP(J,K)=0.
218    #ifdef ALLOW_CLOUD_3D
219             CLDCLW(J,K)=0.
220    #endif
221         ENDDO         ENDDO
222        ENDDO        ENDDO
223  C  C
# Line 225  C-    skipp this part for clear-sky diag Line 232  C-    skipp this part for clear-sky diag
232           IF (RH(J,K).GT.RHCL1.AND.QA(J,K).GT.QACL1) THEN           IF (RH(J,K).GT.RHCL1.AND.QA(J,K).GT.QACL1) THEN
233              CLOUDC(J)=MAX(CLOUDC(J),RH(J,K)-RHCL1)              CLOUDC(J)=MAX(CLOUDC(J),RH(J,K)-RHCL1)
234              IF (QA(J,K).GT.QACL3) ICLTOP(J)=K              IF (QA(J,K).GT.QACL3) ICLTOP(J)=K
235    #ifdef ALLOW_CLOUD_3D
236                CLDCLW(J,K)=MAX(0. _d 0,RH(J,K)-RHCL1)
237                CLDCLW(J,K)=MIN(1. _d 0,CLDCLW(J,K)*RRCL)
238    #endif
239           ENDIF           ENDIF
240          ENDDO          ENDDO
241         ENDDO         ENDDO
# Line 235  C-    skipp this part for clear-sky diag Line 246  C-    skipp this part for clear-sky diag
246          CLOUDC(J)=MIN(1. _d 0,CLOUDC(J)*RRCL)          CLOUDC(J)=MIN(1. _d 0,CLOUDC(J)*RRCL)
247          IF (CLOUDC(J).GT.0.0) THEN          IF (CLOUDC(J).GT.0.0) THEN
248            CLOUDC(J)=CLOUDC(J)*MIN(1. _d 0,QCLOUD(J)*RQCL)            CLOUDC(J)=CLOUDC(J)*MIN(1. _d 0,QCLOUD(J)*RQCL)
249    #ifdef ALLOW_CLOUD_3D
250              DO K=NL1(J),2,-1
251                 CLDCLW(J,K)=CLDCLW(J,K)*MIN(1. _d 0,QCLOUD(J)*RQCL)
252              ENDDO
253    #endif
254            ALBTOP(J,ICLTOP(J))=ALBCL*CLOUDC(J)            ALBTOP(J,ICLTOP(J))=ALBCL*CLOUDC(J)
255          ELSE          ELSE
256            ICLTOP(J)=NLEV+1            ICLTOP(J)=NLEV+1
# Line 376  C Line 392  C
392  C     5.1  Longwave transmissivity:  C     5.1  Longwave transmissivity:
393  C          function of layer mass, abs. humidity and cloud cover.  C          function of layer mass, abs. humidity and cloud cover.
394    
395    #ifdef ALLOW_CLOUD_3D
396          DO K=2,NLEV
397            DO J=1,NGP
398              ACLDLW(J,K)=CLDCLW(J,K)*(ABLCL1+ABLCL2*QCLOUD(J))
399            ENDDO
400          ENDDO
401    #else
402        DO J=1,NGP        DO J=1,NGP
403          ACLOUD(J)=CLOUDC(J)*(ABLCL1+ABLCL2*QCLOUD(J))          ACLOUD(J)=CLOUDC(J)*(ABLCL1+ABLCL2*QCLOUD(J))
404        ENDDO        ENDDO
405    #endif
406    
407        DO J=1,NGP        DO J=1,NGP
408  c_FM    DELTAP=PSA(J)*DSIG(1)  c_FM    DELTAP=PSA(J)*DSIG(1)
# Line 394  c_FM    DELTAP=PSA(J)*DSIG(1) Line 418  c_FM    DELTAP=PSA(J)*DSIG(1)
418  c_FM     DELTAP=PSA(J)*DSIG(K)  c_FM     DELTAP=PSA(J)*DSIG(K)
419           DELTAP=DSIG(K)*dpFac(J,K)           DELTAP=DSIG(K)*dpFac(J,K)
420           IF ( K.GE.ICLTOP(J).AND.K.NE.kGrd(J) ) THEN           IF ( K.GE.ICLTOP(J).AND.K.NE.kGrd(J) ) THEN
421    #ifdef ALLOW_CLOUD_3D
422               TAU2(J,K,1)=EXP(-DELTAP*(ABLWIN+ACLDLW(J,K)))
423    #else
424             TAU2(J,K,1)=EXP(-DELTAP*(ABLWIN+ACLOUD(J)))             TAU2(J,K,1)=EXP(-DELTAP*(ABLWIN+ACLOUD(J)))
425    #endif
426           ELSE           ELSE
427             TAU2(J,K,1)=EXP(-DELTAP*ABLWIN)             TAU2(J,K,1)=EXP(-DELTAP*ABLWIN)
428           ENDIF           ENDIF
# Line 403  c_FM     DELTAP=PSA(J)*DSIG(K) Line 431  c_FM     DELTAP=PSA(J)*DSIG(K)
431           TAU2(J,K,4)=EXP(-DELTAP*ABLWV2*QA(J,K))           TAU2(J,K,4)=EXP(-DELTAP*ABLWV2*QA(J,K))
432         ENDDO         ENDDO
433        ENDDO        ENDDO
434    
435    #if (defined ALLOW_CLOUD_3D && defined ALLOW_DIAGNOSTICS)
436            CALL DIAGNOSTICS_FILL( CLDCLW,
437         &                        'CLDCLW  ',-1, Nr, 3,bi,bj, myThid )
438    #endif
439    
440  C  C
441  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
442  #endif /* ALLOW_AIM */  #endif /* ALLOW_AIM */

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22