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

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

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

revision 1.18 by adcroft, Tue Mar 5 14:15:34 2002 UTC revision 1.21 by jmc, Tue Apr 30 22:53:17 2002 UTC
# Line 2  C $Header$ Line 2  C $Header$
2  C $Name$  C $Name$
3    
4  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
5    #ifdef ALLOW_AUTODIFF_TAMC
6    # ifdef ALLOW_GMREDI
7    #  include "GMREDI_OPTIONS.h"
8    # endif
9    # ifdef ALLOW_KPP
10    #  include "KPP_OPTIONS.h"
11    # endif
12    #endif /* ALLOW_AUTODIFF_TAMC */
13    
14  CBOP  CBOP
15  C     !ROUTINE: THERMODYNAMICS  C     !ROUTINE: THERMODYNAMICS
# Line 169  C     uninitialised but inert locations. Line 177  C     uninitialised but inert locations.
177          yA(i,j)      = 0. _d 0          yA(i,j)      = 0. _d 0
178          uTrans(i,j)  = 0. _d 0          uTrans(i,j)  = 0. _d 0
179          vTrans(i,j)  = 0. _d 0          vTrans(i,j)  = 0. _d 0
         DO k=1,Nr  
          phiHyd(i,j,k)  = 0. _d 0  
          sigmaX(i,j,k) = 0. _d 0  
          sigmaY(i,j,k) = 0. _d 0  
          sigmaR(i,j,k) = 0. _d 0  
         ENDDO  
         rhoKM1 (i,j) = 0. _d 0  
180          rhok   (i,j) = 0. _d 0          rhok   (i,j) = 0. _d 0
181          phiSurfX(i,j) = 0. _d 0          phiSurfX(i,j) = 0. _d 0
182          phiSurfY(i,j) = 0. _d 0          phiSurfY(i,j) = 0. _d 0
# Line 223  C--     Set up work arrays that need val Line 224  C--     Set up work arrays that need val
224            fVerS  (i,j,2) = 0. _d 0            fVerS  (i,j,2) = 0. _d 0
225            fVerTr1(i,j,1) = 0. _d 0            fVerTr1(i,j,1) = 0. _d 0
226            fVerTr1(i,j,2) = 0. _d 0            fVerTr1(i,j,2) = 0. _d 0
227              rhoKM1 (i,j)   = 0. _d 0
228           ENDDO           ENDDO
229          ENDDO          ENDDO
230    
# Line 230  C--     Set up work arrays that need val Line 232  C--     Set up work arrays that need val
232           DO j=1-OLy,sNy+OLy           DO j=1-OLy,sNy+OLy
233            DO i=1-OLx,sNx+OLx            DO i=1-OLx,sNx+OLx
234  C This is currently also used by IVDC and Diagnostics  C This is currently also used by IVDC and Diagnostics
235               phiHyd(i,j,k)  = 0. _d 0
236               sigmaX(i,j,k) = 0. _d 0
237               sigmaY(i,j,k) = 0. _d 0
238               sigmaR(i,j,k) = 0. _d 0
239             ConvectCount(i,j,k) = 0.             ConvectCount(i,j,k) = 0.
240             KappaRT(i,j,k) = 0. _d 0             KappaRT(i,j,k) = 0. _d 0
241             KappaRS(i,j,k) = 0. _d 0             KappaRS(i,j,k) = 0. _d 0
# Line 239  C This is currently also used by IVDC an Line 245  C This is currently also used by IVDC an
245  #ifdef ALLOW_PASSIVE_TRACER  #ifdef ALLOW_PASSIVE_TRACER
246             gTr1(i,j,k,bi,bj) = 0. _d 0             gTr1(i,j,k,bi,bj) = 0. _d 0
247  #endif  #endif
248    #ifdef ALLOW_GMREDI
249               Kwx(i,j,k,bi,bj)    = 0. _d 0
250               Kwy(i,j,k,bi,bj)    = 0. _d 0
251               Kwz(i,j,k,bi,bj)    = 0. _d 0
252    #ifdef GM_NON_UNITY_DIAGONAL
253               Kux(i,j,k,bi,bj)    = 0. _d 0
254               Kvy(i,j,k,bi,bj)    = 0. _d 0
255    #endif
256    #endif /* ALLOW_GMREDI */
257  #endif  #endif
258            ENDDO            ENDDO
259           ENDDO           ENDDO
260          ENDDO          ENDDO
261    
262          iMin = 1-OLx+1          iMin = 1-OLx
263          iMax = sNx+OLx          iMax = sNx+OLx
264          jMin = 1-OLy+1          jMin = 1-OLy
265          jMax = sNy+OLy          jMax = sNy+OLy
266    
267    
# Line 364  CADJ &     = comlev1_bibj, key=ikey, byt Line 379  CADJ &     = comlev1_bibj, key=ikey, byt
379    
380  #ifdef  ALLOW_GMREDI  #ifdef  ALLOW_GMREDI
381    
 #ifdef ALLOW_AUTODIFF_TAMC  
 CADJ STORE sigmaX(:,:,:) = comlev1, key=ikey, byte=isbyte  
 CADJ STORE sigmaY(:,:,:) = comlev1, key=ikey, byte=isbyte  
 CADJ STORE sigmaR(:,:,:) = comlev1, key=ikey, byte=isbyte  
 #endif /* ALLOW_AUTODIFF_TAMC */  
382  C--     Calculate iso-neutral slopes for the GM/Redi parameterisation  C--     Calculate iso-neutral slopes for the GM/Redi parameterisation
383          IF (useGMRedi) THEN          IF (useGMRedi) THEN
384            CALL GMREDI_CALC_TENSOR(            CALL GMREDI_CALC_TENSOR(
# Line 510  C--       Get temporary terms used by te Line 520  C--       Get temporary terms used by te
520       O         xA,yA,uTrans,vTrans,rTrans,maskUp,       O         xA,yA,uTrans,vTrans,rTrans,maskUp,
521       I         myThid)       I         myThid)
522    
523    #ifdef ALLOW_GMREDI
524    C--   Residual transp = Bolus transp + Eulerian transp
525              IF (useGMRedi) THEN
526                CALL GMREDI_CALC_UVFLOW(
527         &            uTrans, vTrans, bi, bj, k, myThid)
528                IF (K.GE.2) CALL GMREDI_CALC_WFLOW(
529         &                    rTrans, bi, bj, k, myThid)
530              ENDIF
531    #endif /* ALLOW_GMREDI */
532    
533  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
534  CADJ STORE KappaRT(:,:,k)    = comlev1_bibj_k, key=kkey, byte=isbyte  CADJ STORE KappaRT(:,:,k)    = comlev1_bibj_k, key=kkey, byte=isbyte
535  CADJ STORE KappaRS(:,:,k)    = comlev1_bibj_k, key=kkey, byte=isbyte  CADJ STORE KappaRS(:,:,k)    = comlev1_bibj_k, key=kkey, byte=isbyte

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

  ViewVC Help
Powered by ViewVC 1.1.22