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

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

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

revision 1.2 by ce107, Tue Jul 31 23:01:58 2007 UTC revision 1.6 by gforget, Fri Aug 6 18:37:05 2010 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4  #include "GGL90_OPTIONS.h"  #include "GGL90_OPTIONS.h"
5    
6        SUBROUTINE GGL90_CALC_VISC(        SUBROUTINE GGL90_CALC_VISC(
7       I        bi,bj,iMin,iMax,jMin,jMax,K,       I        bi,bj,iMin,iMax,jMin,jMax,K,
8       U        KappaRU,KappaRV,       U        KappaRU,KappaRV,
9       I        myThid)       I        myThid)
10    
11  CBOP  CBOP
12  C     /==========================================================\  C     *==========================================================*
13  C     | SUBROUTINE GGL90_CALC_VISC                               |  C     | SUBROUTINE GGL90_CALC_VISC                               |
14  C     | o Add contrubution to net viscosity from GGL90 mixing    |  C     | o Add contrubution to net viscosity from GGL90 mixing    |
15  C     \==========================================================/  C     *==========================================================*
16        IMPLICIT NONE        IMPLICIT NONE
17    
18  C     == GLobal variables ==  C     == GLobal variables ==
# Line 20  C     == GLobal variables == Line 21  C     == GLobal variables ==
21  #include "PARAMS.h"  #include "PARAMS.h"
22  #include "DYNVARS.h"  #include "DYNVARS.h"
23  #include "GRID.h"  #include "GRID.h"
24    #include "GGL90.h"
25    
26  C     == Routine arguments ==  C     == Routine arguments ==
27  C     bi, bj, iMin, iMax, jMin, jMax - Range of points for which calculation  C     bi, bj, iMin, iMax, jMin, jMax - Range of points for which calculation
# Line 29  C Line 31  C
31        _RL KappaRU(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)        _RL KappaRU(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
32        _RL KappaRV(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)        _RL KappaRV(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
33        INTEGER myThid        INTEGER myThid
34    CEOP
35    
36  #ifdef ALLOW_GGL90  #ifdef ALLOW_GGL90
 #include "GGL90.h"  
37    
38  C     == Local variables ==  C     == Local variables ==
39  C     I, J, K - Loop counters  C     I, J, K - Loop counters
40        INTEGER i,j        INTEGER i,j
41  CEOP        _RL p4, p8, p16
42    
43          p4=0.25 _d 0
44          p8=0.125 _d 0
45          p16=0.0625 _d 0
46    
47        DO j=jMin,jMax        DO j=jMin,jMax
48         DO i=iMin,iMax         DO i=iMin,iMax
49          KappaRU(i,j,k) = max ( KappaRU(i,j,k),          KappaRU(i,j,k) = KappaRU(i,j,k) +
50       &     KappaRU(i,j,k) - viscAr + _maskW(i,j,k,bi,bj) *       &                   (GGL90viscArU(i,j,k,bi,bj) - viscArNr(k) )
      &     0.5*(GGL90viscAr(i,j,k,bi,bj)+GGL90viscAr(i-1,j,k,bi,bj)) )  
51         ENDDO         ENDDO
52        ENDDO        ENDDO
53    
54        DO j=jMin,jMax        DO j=jMin,jMax
55         DO i=iMin,iMax         DO i=iMin,iMax
56          KappaRV(i,j,k) = max ( KappaRV(i,j,k),          KappaRV(i,j,k) = KappaRV(i,j,k) + _maskS(i,j,k,bi,bj) *
57       &     KappaRV(i,j,k) - viscAr + _maskS(i,j,k,bi,bj) *       &                   (GGL90viscArV(i,j,k,bi,bj) - viscArNr(k) )
      &     0.5*(GGL90viscAr(i,j,k,bi,bj)+GGL90viscAr(i,j-1,k,bi,bj)) )  
58         ENDDO         ENDDO
59        ENDDO        ENDDO
60    

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

  ViewVC Help
Powered by ViewVC 1.1.22