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

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

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

revision 1.9 by jmc, Sat Oct 22 20:12:23 2005 UTC revision 1.10 by jmc, Sun Jun 18 23:31:35 2006 UTC
# Line 7  CBOP Line 7  CBOP
7  C !ROUTINE: GAD_FLUXLIMIT_ADV_R  C !ROUTINE: GAD_FLUXLIMIT_ADV_R
8    
9  C !INTERFACE: ==========================================================  C !INTERFACE: ==========================================================
10        SUBROUTINE GAD_FLUXLIMIT_ADV_R(        SUBROUTINE GAD_FLUXLIMIT_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 38  C !INPUT PARAMETERS: =================== Line 38  C !INPUT PARAMETERS: ===================
38  C  bi,bj              :: tile indices  C  bi,bj              :: tile indices
39  C  k                  :: vertical level  C  k                  :: vertical level
40  C  rTrans             :: vertical volume transport  C  rTrans             :: vertical volume transport
41  C  wVel               :: vertical flow  C  wFld               :: vertical flow
42  C  tracer             :: tracer field  C  tracer             :: tracer field
43  C  myThid             :: thread number  C  myThid             :: thread number
44        INTEGER bi,bj,k        INTEGER bi,bj,k
45        _RL dTarg        _RL dTarg
46        _RL rTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL rTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
47        _RL wVel  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL wFld  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
48        _RL tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
49        INTEGER myThid        INTEGER myThid
50    
# Line 60  C  km2                :: =max( k-2 , 1 ) Line 60  C  km2                :: =max( k-2 , 1 )
60  C  bi,bj              :: tile indices or (1,1) depending on use  C  bi,bj              :: tile indices or (1,1) depending on use
61  C  Cr                 :: slope ratio  C  Cr                 :: slope ratio
62  C  Rjm,Rj,Rjp         :: differences at i-1,i,i+1  C  Rjm,Rj,Rjp         :: differences at i-1,i,i+1
63  C  wFld               :: velocity, vertical component  C  wLoc               :: velocity, vertical component
64        INTEGER i,j,kp1,km1,km2        INTEGER i,j,kp1,km1,km2
65        _RL Cr,Rjm,Rj,Rjp        _RL Cr,Rjm,Rj,Rjp
66        _RL wFld        _RL wLoc
67  C Statement function provides Limiter(Cr)  C Statement function provides Limiter(Cr)
68  #include "GAD_FLUX_LIMITER.h"  #include "GAD_FLUX_LIMITER.h"
69  CEOP  CEOP
# Line 82  CEOP Line 82  CEOP
82         DO j=1-Oly,sNy+Oly         DO j=1-Oly,sNy+Oly
83          DO i=1-Olx,sNx+Olx          DO i=1-Olx,sNx+Olx
84    
85  c        wFld = wVel(i,j,k,bi,bj)  c        wLoc = wFld(i,j)
86           wFld = rTrans(i,j)*recip_rA(i,j,bi,bj)           wLoc = rTrans(i,j)*recip_rA(i,j,bi,bj)
87           Rjp=(tracer(i,j,kp1)-tracer(i,j,k))           Rjp=(tracer(i,j,kp1)-tracer(i,j,k))
88       &        *maskC(i,j,kp1,bi,bj)       &        *maskC(i,j,kp1,bi,bj)
89           Rj= (tracer(i,j,k)  -tracer(i,j,kM1))           Rj= (tracer(i,j,k)  -tracer(i,j,kM1))
# Line 108  c        wFld = wVel(i,j,k,bi,bj) Line 108  c        wFld = wVel(i,j,k,bi,bj)
108       &     rTrans(i,j)*       &     rTrans(i,j)*
109       &        (tracer(i,j,k)+tracer(i,j,kM1))*0.5 _d 0       &        (tracer(i,j,k)+tracer(i,j,kM1))*0.5 _d 0
110       &    +(ABS(rTrans(i,j))*(1-Cr)       &    +(ABS(rTrans(i,j))*(1-Cr)
111       &      +rTrans(i,j)*wFld*dTarg*recip_drC(k)       &      +rTrans(i,j)*wLoc*dTarg*recip_drC(k)
112       &                  *Cr       &                  *Cr
113       &     )*Rj*0.5 _d 0                )       &     )*Rj*0.5 _d 0                )
114          ENDDO          ENDDO

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22