/[MITgcm]/MITgcm/model/src/calc_gs.F
ViewVC logotype

Diff of /MITgcm/model/src/calc_gs.F

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

revision 1.18 by adcroft, Tue May 18 18:01:12 1999 UTC revision 1.19 by adcroft, Wed May 26 20:26:41 1999 UTC
# Line 95  C     I, J, K - Loop counters Line 95  C     I, J, K - Loop counters
95        _RL afFacS, dfFacS        _RL afFacS, dfFacS
96        _RL dSdx(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL dSdx(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
97        _RL dSdy(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL dSdy(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
98          _RL df4   (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
99    
100        afFacS = 1. _d 0        afFacS = 1. _d 0
101        dfFacS = 1. _d 0        dfFacS = 1. _d 0
# Line 102  C     I, J, K - Loop counters Line 103  C     I, J, K - Loop counters
103    
104  C---  Calculate advective and diffusive fluxes between cells.  C---  Calculate advective and diffusive fluxes between cells.
105    
106    #ifdef INCLUDE_T_DIFFUSION_CODE
107    C     o Zonal tracer gradient
108          DO j=1-Oly,sNy+Oly
109           DO i=1-Olx+1,sNx+Olx
110            dSdx(i,j) = _recip_dxC(i,j,bi,bj)*
111         &  (salt(i,j,k,bi,bj)-salt(i-1,j,k,bi,bj))
112           ENDDO
113          ENDDO
114    C     o Meridional tracer gradient
115          DO j=1-Oly+1,sNy+Oly
116           DO i=1-Olx,sNx+Olx
117            dSdy(i,j) = _recip_dyC(i,j,bi,bj)*
118         &  (salt(i,j,k,bi,bj)-salt(i,j-1,k,bi,bj))
119           ENDDO
120          ENDDO
121    
122    C--   del^2 of S, needed for bi-harmonic (del^4) term
123          IF (diffK4S .NE. 0.) THEN
124           DO j=1-Oly+1,sNy+Oly-1
125            DO i=1-Olx+1,sNx+Olx-1
126             df4(i,j)= _recip_hFacC(i,j,k,bi,bj)
127         &             *recip_drF(k)/_rA(i,j,bi,bj)
128         &            *(
129         &             +( xA(i+1,j)*dSdx(i+1,j)-xA(i,j)*dSdx(i,j) )
130         &             +( yA(i,j+1)*dSdy(i,j+1)-yA(i,j)*dSdy(i,j) )
131         &             )
132            ENDDO
133           ENDDO
134          ENDIF
135    #endif
136    
137  C--   Zonal flux (fZon is at west face of "salt" cell)  C--   Zonal flux (fZon is at west face of "salt" cell)
138  C     Advective component of zonal flux  C     Advective component of zonal flux
139        DO j=jMin,jMax        DO j=jMin,jMax
# Line 110  C     Advective component of zonal flux Line 142  C     Advective component of zonal flux
142       &   uTrans(i,j)*(salt(i,j,k,bi,bj)+salt(i-1,j,k,bi,bj))*0.5 _d 0       &   uTrans(i,j)*(salt(i,j,k,bi,bj)+salt(i-1,j,k,bi,bj))*0.5 _d 0
143         ENDDO         ENDDO
144        ENDDO        ENDDO
145  C     Zonal tracer gradient  C     o Diffusive component of zonal flux
       DO j=jMin,jMax  
        DO i=iMin,iMax  
         dSdx(i,j) = _recip_dxC(i,j,bi,bj)*  
      &  (salt(i,j,k,bi,bj)-salt(i-1,j,k,bi,bj))  
        ENDDO  
       ENDDO  
 C     Diffusive component of zonal flux  
146        DO j=jMin,jMax        DO j=jMin,jMax
147         DO i=iMin,iMax         DO i=iMin,iMax
148          df(i,j) = -(diffKhS+0.5*(KapGM(i,j)+KapGM(i-1,j)))*          df(i,j) = -(diffKhS+0.5*(KapGM(i,j)+KapGM(i-1,j)))*
149       &            xA(i,j)*dSdx(i,j)       &            xA(i,j)*dSdx(i,j)
150         ENDDO         ENDDO
151        ENDDO        ENDDO
152    C     o Add the bi-harmonic contribution
153          IF (diffK4S .NE. 0.) THEN
154           DO j=jMin,jMax
155            DO i=iMin,iMax
156             df(i,j) = df(i,j) + xA(i,j)*
157         &    diffK4S*(df4(i,j)-df4(i-1,j))*_recip_dxC(i,j,bi,bj)
158            ENDDO
159           ENDDO
160          ENDIF
161  C     Net zonal flux  C     Net zonal flux
162        DO j=jMin,jMax        DO j=jMin,jMax
163         DO i=iMin,iMax         DO i=iMin,iMax
# Line 140  C       Advective component of meridiona Line 174  C       Advective component of meridiona
174       &   vTrans(i,j)*(salt(i,j,k,bi,bj)+salt(i,j-1,k,bi,bj))*0.5 _d 0       &   vTrans(i,j)*(salt(i,j,k,bi,bj)+salt(i,j-1,k,bi,bj))*0.5 _d 0
175         ENDDO         ENDDO
176        ENDDO        ENDDO
 C     Zonal tracer gradient  
       DO j=jMin,jMax  
        DO i=iMin,iMax  
         dSdy(i,j) = _recip_dyC(i,j,bi,bj)*  
      &  (salt(i,j,k,bi,bj)-salt(i,j-1,k,bi,bj))  
        ENDDO  
       ENDDO  
177  C     Diffusive component of meridional flux  C     Diffusive component of meridional flux
178        DO j=jMin,jMax        DO j=jMin,jMax
179         DO i=iMin,iMax         DO i=iMin,iMax
# Line 154  C     Diffusive component of meridional Line 181  C     Diffusive component of meridional
181       &            yA(i,j)*dSdy(i,j)       &            yA(i,j)*dSdy(i,j)
182         ENDDO         ENDDO
183        ENDDO        ENDDO
184    C     o Add the bi-harmonic contribution
185          IF (diffK4S .NE. 0.) THEN
186           DO j=jMin,jMax
187            DO i=iMin,iMax
188             df(i,j) = df(i,j) + yA(i,j)*
189         &    diffK4S*(df4(i,j)-df4(i,j-1))*_recip_dyC(i,j,bi,bj)
190            ENDDO
191           ENDDO
192          ENDIF
193    
194  C     Net meridional flux  C     Net meridional flux
195        DO j=jMin,jMax        DO j=jMin,jMax
196         DO i=iMin,iMax         DO i=iMin,iMax

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.22