/[MITgcm]/MITgcm/pkg/ggl90/ggl90_calc.F
ViewVC logotype

Diff of /MITgcm/pkg/ggl90/ggl90_calc.F

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

revision 1.6 by mlosch, Tue Jun 6 16:18:18 2006 UTC revision 1.7 by mlosch, Tue Jun 6 22:15:19 2006 UTC
# Line 68  C     KappaE           - (local) diffusi Line 68  C     KappaE           - (local) diffusi
68  C     buoyFreq         - buoyancy freqency  C     buoyFreq         - buoyancy freqency
69  C     TKEdissipation   - dissipation of TKE  C     TKEdissipation   - dissipation of TKE
70  C     GGL90mixingLength- mixing length of scheme following Banke+Delecuse  C     GGL90mixingLength- mixing length of scheme following Banke+Delecuse
71    C         rMixingLength- inverse of mixing length
72  C     totalDepth       - thickness of water column (inverse of recip_Rcol)  C     totalDepth       - thickness of water column (inverse of recip_Rcol)
73  C     TKEPrandtlNumber - here, an empirical function of the Richardson number  C     TKEPrandtlNumber - here, an empirical function of the Richardson number
74  C     rhoK, rhoKm1     - density at layer K and Km1 (relative to K)  C     rhoK, rhoKm1     - density at layer K and Km1 (relative to K)
# Line 86  C     gTKE             - right hand side Line 87  C     gTKE             - right hand side
87        _RL     tempU, tempV, prTemp        _RL     tempU, tempV, prTemp
88        _RL     TKEPrandtlNumber (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL     TKEPrandtlNumber (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
89        _RL     GGL90mixingLength(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL     GGL90mixingLength(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
90          _RL         rMixingLength(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
91        _RL     KappaE           (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL     KappaE           (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
92        _RL     rhoK             (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL     rhoK             (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
93        _RL     rhoKm1           (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL     rhoKm1           (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
# Line 126  C     Initialize local fields Line 128  C     Initialize local fields
128           gTKE(I,J,K)              = 0. _d 0           gTKE(I,J,K)              = 0. _d 0
129           KappaE(I,J,K)            = 0. _d 0           KappaE(I,J,K)            = 0. _d 0
130           TKEPrandtlNumber(I,J,K)  = 0. _d 0           TKEPrandtlNumber(I,J,K)  = 0. _d 0
131           GGL90mixingLength(I,J,K) = 0. _d 0           GGL90mixingLength(I,J,K) = GGL90mixingLengthMin
132                 rMixingLength(I,J,K) = 0. _d 0
133          ENDDO          ENDDO
134         ENDDO             ENDDO    
135        ENDDO        ENDDO
# Line 184  C     impose upper bound for mixing leng Line 187  C     impose upper bound for mixing leng
187  C     impose minimum mixing length (to avoid division by zero)  C     impose minimum mixing length (to avoid division by zero)
188           GGL90mixingLength(I,J,K) = MAX(GGL90mixingLength(I,J,K),           GGL90mixingLength(I,J,K) = MAX(GGL90mixingLength(I,J,K),
189       &        GGL90mixingLengthMin)       &        GGL90mixingLengthMin)
190             rMixingLength(I,J,K) = 1. _d 0 /GGL90mixingLength(I,J,K)
191  C     viscosity of last timestep  C     viscosity of last timestep
192           KappaM = GGL90ck*GGL90mixingLength(I,J,K)*SQRTTKE           KappaM = GGL90ck*GGL90mixingLength(I,J,K)*SQRTTKE
193           KappaE(I,J,K) = KappaM*GGL90alpha           KappaE(I,J,K) = KappaM*GGL90alpha
194  C     dissipation term  C     dissipation term
195           TKEdissipation = ab05*GGL90ceps           TKEdissipation = ab05*GGL90ceps
196       &        *SQRTTKE/GGL90mixingLength(I,J,K)       &        *SQRTTKE*rMixingLength(I,J,K)
197       &        *GGL90TKE(I,J,K,bi,bj)             &        *GGL90TKE(I,J,K,bi,bj)      
198  C     sum up contributions to form the right hand side  C     sum up contributions to form the right hand side
199           gTKE(I,J,K) = GGL90TKE(I,J,K,bi,bj)           gTKE(I,J,K) = GGL90TKE(I,J,K,bi,bj)
# Line 305  C--   Center diagonal Line 309  C--   Center diagonal
309          DO i=iMin,iMax          DO i=iMin,iMax
310            b(i,j,k) = 1. _d 0 - c(i,j,k) - a(i,j,k)            b(i,j,k) = 1. _d 0 - c(i,j,k) - a(i,j,k)
311       &        + ab15*deltaTggl90*GGL90ceps*SQRT(GGL90TKE(I,J,K,bi,bj))       &        + ab15*deltaTggl90*GGL90ceps*SQRT(GGL90TKE(I,J,K,bi,bj))
312       &        /GGL90mixingLength(I,J,K)       &        *rMixingLength(I,J,K)
313           ENDDO           ENDDO
314         ENDDO         ENDDO
315        ENDDO        ENDDO

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.22