/[MITgcm]/MITgcm/pkg/ptracers/ptracers_integrate.F
ViewVC logotype

Diff of /MITgcm/pkg/ptracers/ptracers_integrate.F

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

revision 1.30 by jmc, Tue Mar 7 15:28:39 2006 UTC revision 1.31 by heimbach, Tue Apr 4 14:52:43 2006 UTC
# Line 27  C !USES: =============================== Line 27  C !USES: ===============================
27  #include "PTRACERS_SIZE.h"  #include "PTRACERS_SIZE.h"
28  #include "PTRACERS.h"  #include "PTRACERS.h"
29  #include "GAD.h"  #include "GAD.h"
30    #ifdef ALLOW_AUTODIFF_TAMC
31    # include "tamc.h"
32    # include "tamc_keys.h"
33    #endif
34    
35  C !INPUT PARAMETERS: ===================================================  C !INPUT PARAMETERS: ===================================================
36  C  bi,bj                :: tile indices  C  bi,bj                :: tile indices
# Line 76  C  GAD_TR               :: passive trace Line 80  C  GAD_TR               :: passive trace
80        INTEGER iterNb        INTEGER iterNb
81  CEOP  CEOP
82    
83    C Loop ranges for daughter routines
84          iMin = 1-OLx+2
85          iMax = sNx+OLx-1
86          jMin = 1-OLy+2
87          jMax = sNy+OLy-1
88          
89          km1  = MAX(1,k-1)
90          kUp  = 1+MOD(k+1,2)
91          kDown= 1+MOD(k,2)
92    
93  C Loop over tracers  C Loop over tracers
94        DO iTracer=1,PTRACERS_numInUse        DO iTracer=1,PTRACERS_numInUse
95    
96  C Loop ranges for daughter routines  #ifdef ALLOW_AUTODIFF_TAMC
97         iMin = 1-OLx+2            act0 = iTracer - 1
98         iMax = sNx+OLx-1            max0 = PTRACERS_num
99         jMin = 1-OLy+2            act1 = bi - myBxLo(myThid)
100         jMax = sNy+OLy-1            max1 = myBxHi(myThid) - myBxLo(myThid) + 1
101              act2 = bj - myByLo(myThid)
102         km1  = MAX(1,k-1)            max2 = myByHi(myThid) - myByLo(myThid) + 1
103         kUp  = 1+MOD(k+1,2)            act3 = myThid - 1
104         kDown= 1+MOD(k,2)            max3 = nTx*nTy
105              act4 = ikey_dynamics - 1
106              iptrkey = (act0 + 1)
107         &                      + act1*max0
108         &                      + act2*max0*max1
109         &                      + act3*max0*max1*max2
110         &                      + act4*max0*max1*max2*max3
111              kkey = (iptrkey-1)*Nr + k
112    #endif /* ALLOW_AUTODIFF_TAMC */
113    
114    #ifdef ALLOW_AUTODIFF_TAMC
115          rFlx(1,1,kDown,iTracer) = rFlx(1,1,kDown,iTracer)
116    c
117    CADJ STORE ptracer(:,:,k,bi,bj,iTracer)
118    CADJ &      = comlev1_bibj_k_ptracers, key=kkey, byte=isbyte
119    CADJ STORE gPtrnm1(:,:,k,bi,bj,iTracer)
120    CADJ &      = comlev1_bibj_k_ptracers, key=kkey, byte=isbyte
121    #endif /* ALLOW_AUTODIFF_TAMC */
122    
123  C Calculate active tracer tendencies (gPtr) due to internal processes  C Calculate active tracer tendencies (gPtr) due to internal processes
124  C (advection, [explicit] diffusion, parameterizations,...)  C (advection, [explicit] diffusion, parameterizations,...)
125         calcAdvection = .NOT.multiDimAdvection         calcAdvection = .NOT.multiDimAdvection

Legend:
Removed from v.1.30  
changed lines
  Added in v.1.31

  ViewVC Help
Powered by ViewVC 1.1.22