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

Annotation of /MITgcm/pkg/generic_advdiff/gad_c4_adv_y.F

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


Revision 1.1 - (hide annotations) (download)
Wed May 30 19:34:48 2001 UTC (23 years ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint40pre1
Added "gad" package. Needs generalizing to allow selection
of advection schemes at run-time and different schemes for
each tracer.

1 adcroft 1.1 C $Header: $
2     C $Name: $
3    
4     #include "GAD_OPTIONS.h"
5    
6     SUBROUTINE GAD_C4_ADV_Y(
7     I bi,bj,k,
8     I vTrans,
9     I tracer,
10     O vT,
11     I myThid )
12     IMPLICIT NONE
13    
14     C == GLobal variables ==
15     #include "SIZE.h"
16     #include "GRID.h"
17     #include "GAD.h"
18    
19     C == Routine arguments ==
20     INTEGER bi,bj,k
21     _RL vTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
22     _RL tracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
23     _RL vT (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
24     INTEGER myThid
25    
26     C == Local variables ==
27     INTEGER i,j
28     _RL Rjm,Rj,Rjp,Rjjm,Rjjp
29    
30    
31     DO i=1-Olx,sNx+Olx
32     vT(i,1-Oly)=0.
33     ENDDO
34     DO j=1-Oly+1,sNy+Oly
35     DO i=1-Olx,sNx+Olx
36     Rjp=(tracer(i,j+1)-tracer(i,j))*maskS(i,j+1,k,bi,bj)
37     Rj=(tracer(i,j)-tracer(i,j-1))*maskS(i,j,k,bi,bj)
38     Rjm=(tracer(i,j-1)-tracer(i,j-2))*maskS(i,j-1,k,bi,bj)
39     Rjjp=Rjp-Rj
40     Rjjm=Rj-Rjm
41     vT(i,j) =
42     & vTrans(i,j)*(
43     & Tracer(i,j)+Tracer(i,j-1)-oneSixth*( Rjjp+Rjjm )
44     & )*0.5 _d 0
45     ENDDO
46     ENDDO
47    
48     RETURN
49     END

  ViewVC Help
Powered by ViewVC 1.1.22