/[MITgcm]/MITgcm/pkg/generic_advdiff/gad_calc_rhs.F
ViewVC logotype

Diff of /MITgcm/pkg/generic_advdiff/gad_calc_rhs.F

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

revision 1.38 by jmc, Sun Nov 6 22:14:02 2005 UTC revision 1.39 by jmc, Sun Feb 26 01:56:27 2006 UTC
# Line 66  C uVel,vVel,wVel   :: 3 components of th Line 66  C uVel,vVel,wVel   :: 3 components of th
66  C diffKh           :: horizontal diffusion coefficient  C diffKh           :: horizontal diffusion coefficient
67  C diffK4           :: bi-harmonic diffusion coefficient  C diffK4           :: bi-harmonic diffusion coefficient
68  C KappaR           :: 2-D array for vertical diffusion coefficient, interf k  C KappaR           :: 2-D array for vertical diffusion coefficient, interf k
69  C Tracer           :: tracer field  C Tracer           :: tracer field @ time-step n (Note: only used
70  C TracAB           :: tracer field but extrapolated fwd in time (to nIter+1/2)  C                     if applying AB on tracer field rather than on tendency Gtr)
71  C                     if applying AB on tracer field (instead of on tendency)  C TracAB           :: current tracer field (@ time-step n if applying AB on Gtr
72    C                     or extrapolated fwd in time to n+1/2 if applying AB on Tr)
73  C tracerIdentity   :: tracer identifier (required for KPP,GM)  C tracerIdentity   :: tracer identifier (required for KPP,GM)
74  C advectionScheme  :: advection scheme to use (Horizontal plane)  C advectionScheme  :: advection scheme to use (Horizontal plane)
75  C vertAdvecScheme  :: advection scheme to use (Vertical direction)  C vertAdvecScheme  :: advection scheme to use (Vertical direction)
# Line 160  C--   Set diagnostic suffix for the curr Line 161  C--   Set diagnostic suffix for the curr
161        ENDDO        ENDDO
162    
163  C--   Make local copy of tracer array  C--   Make local copy of tracer array
164    #ifdef ALLOW_ADAMSBASHFORTH_3
165        DO j=1-OLy,sNy+OLy        DO j=1-OLy,sNy+OLy
166         DO i=1-OLx,sNx+OLx         DO i=1-OLx,sNx+OLx
167          localT(i,j)=Tracer(i,j,k,bi,bj)          localT(i,j)=Tracer(i,j,k,bi,bj)
168          locABT(i,j)=TracAB(i,j,k,bi,bj)          locABT(i,j)=TracAB(i,j,k,bi,bj)
169         ENDDO         ENDDO
170        ENDDO        ENDDO
171    #else /* ALLOW_ADAMSBASHFORTH_3 */
172          DO j=1-OLy,sNy+OLy
173           DO i=1-OLx,sNx+OLx
174            localT(i,j)=TracAB(i,j,k,bi,bj)
175            locABT(i,j)=TracAB(i,j,k,bi,bj)
176           ENDDO
177          ENDDO
178    #endif /* ALLOW_ADAMSBASHFORTH_3 */
179    
180  C--   Unless we have already calculated the advection terms we initialize  C--   Unless we have already calculated the advection terms we initialize
181  C     the tendency to zero.  C     the tendency to zero.
# Line 264  C-    GM/Redi flux in X Line 274  C-    GM/Redi flux in X
274  C *note* should update GMREDI_XTRANSPORT to set df  *aja*  C *note* should update GMREDI_XTRANSPORT to set df  *aja*
275          CALL GMREDI_XTRANSPORT(          CALL GMREDI_XTRANSPORT(
276       I     iMin,iMax,jMin,jMax,bi,bj,K,       I     iMin,iMax,jMin,jMax,bi,bj,K,
277    #ifdef ALLOW_ADAMSBASHFORTH_3
278       I     xA,Tracer,tracerIdentity,       I     xA,Tracer,tracerIdentity,
279    #else
280         I     xA,TracAB,tracerIdentity,
281    #endif
282       U     df,       U     df,
283       I     myThid)       I     myThid)
284        ENDIF        ENDIF
# Line 364  C-    GM/Redi flux in Y Line 378  C-    GM/Redi flux in Y
378  C *note* should update GMREDI_YTRANSPORT to set df  *aja*  C *note* should update GMREDI_YTRANSPORT to set df  *aja*
379         CALL GMREDI_YTRANSPORT(         CALL GMREDI_YTRANSPORT(
380       I     iMin,iMax,jMin,jMax,bi,bj,K,       I     iMin,iMax,jMin,jMax,bi,bj,K,
381    #ifdef ALLOW_ADAMSBASHFORTH_3
382       I     yA,Tracer,tracerIdentity,       I     yA,Tracer,tracerIdentity,
383    #else
384         I     yA,TracAB,tracerIdentity,
385    #endif
386       U     df,       U     df,
387       I     myThid)       I     myThid)
388        ENDIF        ENDIF
# Line 458  C           boundary condition. Line 476  C           boundary condition.
476          ENDDO          ENDDO
477         ENDDO         ENDDO
478        ELSE        ELSE
479    #ifdef ALLOW_ADAMSBASHFORTH_3
480         CALL GAD_DIFF_R(bi,bj,k,KappaR,Tracer,df,myThid)         CALL GAD_DIFF_R(bi,bj,k,KappaR,Tracer,df,myThid)
481    #else
482           CALL GAD_DIFF_R(bi,bj,k,KappaR,TracAB,df,myThid)
483    #endif
484        ENDIF        ENDIF
485    
486  #ifdef ALLOW_GMREDI  #ifdef ALLOW_GMREDI
# Line 467  C-    GM/Redi flux in R Line 489  C-    GM/Redi flux in R
489  C *note* should update GMREDI_RTRANSPORT to set df  *aja*  C *note* should update GMREDI_RTRANSPORT to set df  *aja*
490         CALL GMREDI_RTRANSPORT(         CALL GMREDI_RTRANSPORT(
491       I     iMin,iMax,jMin,jMax,bi,bj,K,       I     iMin,iMax,jMin,jMax,bi,bj,K,
492    #ifdef ALLOW_ADAMSBASHFORTH_3
493       I     Tracer,tracerIdentity,       I     Tracer,tracerIdentity,
494    #else
495         I     TracAB,tracerIdentity,
496    #endif
497       U     df,       U     df,
498       I     myThid)       I     myThid)
499        ENDIF        ENDIF

Legend:
Removed from v.1.38  
changed lines
  Added in v.1.39

  ViewVC Help
Powered by ViewVC 1.1.22