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

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

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

revision 1.2 by jmc, Wed Jul 11 22:46:32 2001 UTC revision 1.3 by jmc, Mon Aug 20 20:45:15 2001 UTC
# Line 13  C     /================================= Line 13  C     /=================================
13  C     | SUBROUTINE GAD_C4_ADV_X                                  |  C     | SUBROUTINE GAD_C4_ADV_X                                  |
14  C     | o Compute Zonal advective Flux of Tracer using           |  C     | o Compute Zonal advective Flux of Tracer using           |
15  C     |   4th Order Centered Scheme                              |  C     |   4th Order Centered Scheme                              |
16    C     | o reduced to 2nd or 3rd Order near a boundary            |
17  C     |==========================================================|  C     |==========================================================|
18        IMPLICIT NONE        IMPLICIT NONE
19    
# Line 37  C     == Local variables == Line 38  C     == Local variables ==
38         uT(2-Olx,j)=0.         uT(2-Olx,j)=0.
39         uT(sNx+Olx,j)=0.         uT(sNx+Olx,j)=0.
40         DO i=1-Olx+2,sNx+Olx-1         DO i=1-Olx+2,sNx+Olx-1
41          Rjp=(tracer(i+1,j)-tracer(i,j))*maskW(i+1,j,k,bi,bj)          Rjp=(tracer(i+1,j)-tracer(i,j))
42          Rj=(tracer(i,j)-tracer(i-1,j))*maskW(i,j,k,bi,bj)  c    &     *maskW(i+1,j,k,bi,bj)
43          Rjm=(tracer(i-1,j)-tracer(i-2,j))*maskW(i-1,j,k,bi,bj)          Rj =(tracer(i,j)-tracer(i-1,j))
44          Rjjp=Rjp-Rj  c    &     *maskW(i,j,k,bi,bj)
45          Rjjm=Rj-Rjm          Rjm=(tracer(i-1,j)-tracer(i-2,j))
46          uT(i,j) =  c    &     *maskW(i-1,j,k,bi,bj)
47    C- jmc: mask not needed here above if Rjjp & Rjjm & uTrans are masked
48            Rjjp=(Rjp-Rj)*maskW(i+1,j,k,bi,bj)
49            Rjjm=(Rj-Rjm)*maskW(i-1,j,k,bi,bj)
50            uT(i,j) =
51       &   uTrans(i,j)*(       &   uTrans(i,j)*(
52       &     Tracer(i,j)+Tracer(i-1,j)-oneSixth*( Rjjp+Rjjm )       &     Tracer(i,j)+Tracer(i-1,j)-oneSixth*( Rjjp+Rjjm )
53       &               )*0.5 _d 0       &               )*0.5 _d 0
54         &  +ABS( uTrans(i,j) )*0.5 _d 0*oneSixth*( Rjjp-Rjjm )
55         &    *( 1. _d 0 - maskW(i-1,j,k,bi,bj)*maskW(i+1,j,k,bi,bj) )
56         ENDDO         ENDDO
57        ENDDO        ENDDO
58    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

  ViewVC Help
Powered by ViewVC 1.1.22