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

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

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

revision 1.6 by jmc, Sat Oct 22 20:12:23 2005 UTC revision 1.7 by jmc, Sun Jun 18 23:31:35 2006 UTC
# Line 7  CBOP Line 7  CBOP
7  C !ROUTINE: GAD_DST3_ADV_R  C !ROUTINE: GAD_DST3_ADV_R
8    
9  C !INTERFACE: ==========================================================  C !INTERFACE: ==========================================================
10        SUBROUTINE GAD_DST3_ADV_R(        SUBROUTINE GAD_DST3_ADV_R(
11       I           bi,bj,k,dTarg,       I           bi,bj,k,dTarg,
12       I           rTrans, wVel,       I           rTrans, wFld,
13       I           tracer,       I           tracer,
14       O           wT,       O           wT,
15       I           myThid )       I           myThid )
# Line 34  C  bi,bj             :: tile indices Line 34  C  bi,bj             :: tile indices
34  C  k                 :: vertical level  C  k                 :: vertical level
35  C  deltaTloc         :: local time-step (s)  C  deltaTloc         :: local time-step (s)
36  C  rTrans            :: vertical volume transport  C  rTrans            :: vertical volume transport
37  C  wVel              :: vertical flow  C  wFld              :: vertical flow
38  C  tracer            :: tracer field  C  tracer            :: tracer field
39  C  myThid            :: thread number  C  myThid            :: thread number
40        INTEGER bi,bj,k        INTEGER bi,bj,k
41        _RL dTarg        _RL dTarg
42        _RL rTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL rTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
43        _RL wVel(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL wFld  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
44        _RL tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
45        INTEGER myThid        INTEGER myThid
46    
# Line 53  C !LOCAL VARIABLES: ==================== Line 53  C !LOCAL VARIABLES: ====================
53  C  i,j               :: loop indices  C  i,j               :: loop indices
54  C  km1               :: =max( k-1 , 1 )  C  km1               :: =max( k-1 , 1 )
55  C  rLimit            :: centered (vs upwind) fraction  C  rLimit            :: centered (vs upwind) fraction
56  C  wFld              :: velocity, vertical component  C  wLoc              :: velocity, vertical component
57  C  wCFL              :: Courant-Friedrich-Levy number  C  wCFL              :: Courant-Friedrich-Levy number
58        INTEGER i,j,kp1,km1,km2        INTEGER i,j,kp1,km1,km2
59        _RL Rjm,Rj,Rjp,cfl,d0,d1        _RL Rjm,Rj,Rjp,cfl,d0,d1
60        _RL psiP,psiM,thetaP,thetaM        _RL psiP,psiM,thetaP,thetaM
61        _RL wFld        _RL wLoc
62        _RL smallNo        _RL smallNo
63    
64        IF (inAdMode) THEN        IF (inAdMode) THEN
# Line 80  C  wCFL              :: Courant-Friedric Line 80  C  wCFL              :: Courant-Friedric
80          Rjm=(tracer(i,j,km2)-tracer(i,j,km1))          Rjm=(tracer(i,j,km2)-tracer(i,j,km1))
81       &         *maskC(i,j,km1,bi,bj)       &         *maskC(i,j,km1,bi,bj)
82    
83  c       wFld = wVel(i,j,k,bi,bj)  c       wLoc = wFld(i,j)
84          wFld = rTrans(i,j)*recip_rA(i,j,bi,bj)          wLoc = rTrans(i,j)*recip_rA(i,j,bi,bj)
85          cfl=abs(wFld*dTarg*recip_drC(k))          cfl=abs(wLoc*dTarg*recip_drC(k))
86          d0=(2.-cfl)*(1.-cfl)*oneSixth          d0=(2.-cfl)*(1.-cfl)*oneSixth
87          d1=(1.-cfl*cfl)*oneSixth          d1=(1.-cfl*cfl)*oneSixth
88  #ifdef ALLOW_MATRIX  #ifdef ALLOW_MATRIX
89          IF (.NOT.useMATRIX) THEN          IF (.NOT.useMATRIX) THEN
90  #endif /* ALLOW_MATRIX */          #endif /* ALLOW_MATRIX */
91          IF ( ABS(Rj).LT.smallNo .OR.          IF ( ABS(Rj).LT.smallNo .OR.
92       &       ABS(Rjm).LT.smallNo ) THEN       &       ABS(Rjm).LT.smallNo ) THEN
93           thetaP=0.           thetaP=0.

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

  ViewVC Help
Powered by ViewVC 1.1.22