/[MITgcm]/MITgcm/pkg/gmredi/gmredi_ytransport.F
ViewVC logotype

Diff of /MITgcm/pkg/gmredi/gmredi_ytransport.F

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

revision 1.7 by heimbach, Sun Mar 24 02:33:16 2002 UTC revision 1.8 by heimbach, Tue Nov 12 20:42:24 2002 UTC
# Line 1  Line 1 
1    C $Header$
2    C $Name$
3    
4  #include "GMREDI_OPTIONS.h"  #include "GMREDI_OPTIONS.h"
5    
6        subroutine GMREDI_YTRANSPORT(        subroutine GMREDI_YTRANSPORT(
7       I     iMin,iMax,jMin,jMax,bi,bj,K,       I     iMin,iMax,jMin,jMax,bi,bj,K,
8       I     yA,Tracer,       I     yA,Tracer,tracerIdentity,
9       U     df,       U     df,
10       I     myThid)       I     myThid)
11  C     /==========================================================\  C     /==========================================================\
# Line 36  C     df               - Diffusive flux Line 38  C     df               - Diffusive flux
38        _RS yA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RS yA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
39        _RL Tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL Tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
40        _RL df    (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL df    (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
41          INTEGER tracerIdentity
42        INTEGER myThid        INTEGER myThid
43    
44  #ifdef ALLOW_GMREDI  #ifdef ALLOW_GMREDI
# Line 47  C     I, J - Loop counters Line 50  C     I, J - Loop counters
50        _RL vTrans, maskp1, dTdz        _RL vTrans, maskp1, dTdz
51    
52  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
53              act0 = tracerIdentity - 1
54              max0 = maxpass
55            act1 = bi - myBxLo(myThid)            act1 = bi - myBxLo(myThid)
56            max1 = myBxHi(myThid) - myBxLo(myThid) + 1            max1 = myBxHi(myThid) - myBxLo(myThid) + 1
57            act2 = bj - myByLo(myThid)            act2 = bj - myByLo(myThid)
# Line 54  C     I, J - Loop counters Line 59  C     I, J - Loop counters
59            act3 = myThid - 1            act3 = myThid - 1
60            max3 = nTx*nTy            max3 = nTx*nTy
61            act4 = ikey_dynamics - 1            act4 = ikey_dynamics - 1
62            ikey = (act1 + 1) + act2*max1            igadkey = (act0 + 1)
63       &                      + act3*max1*max2       &                      + act1*max0
64       &                      + act4*max1*max2*max3       &                      + act2*max0*max1
65            kkey = (ikey-1)*Nr + k       &                      + act3*max0*max1*max2
66         &                      + act4*max0*max1*max2*max3
67              kkey = (igadkey-1)*Nr + k
68              if (tracerIdentity.GT.maxpass)
69         &         STOP 'maxpass seems smaller than tracerIdentity'
70  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
71    
72        IF (useGMRedi) THEN        IF (useGMRedi) THEN
73    
 #ifdef GM_NON_UNITY_DIAGONAL  
74  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
75  CADJ STORE Kvy(:,:,k,bi,bj)     = comlev1_bibj_k, key=kkey, byte=isbyte  # ifdef GM_NON_UNITY_DIAGONAL
76  #endif  CADJ STORE Kvy(:,:,k,bi,bj) =
77    CADJ &     comlev1_gmredi_k_gad, key=kkey, byte=isbyte
78    # endif
79    # ifdef GM_EXTRA_DIAGONAL
80    CADJ STORE Kvz(:,:,k,bi,bj) =
81    CADJ &     comlev1_gmredi_k_gad, key=kkey, byte=isbyte
82    # endif
83  #endif  #endif
84    
85  C--   Area integrated meridional flux  C--   Area integrated meridional flux

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

  ViewVC Help
Powered by ViewVC 1.1.22