8 |
|
|
9 |
C !INTERFACE: ========================================================== |
C !INTERFACE: ========================================================== |
10 |
SUBROUTINE GAD_FLUXLIMIT_ADV_X( |
SUBROUTINE GAD_FLUXLIMIT_ADV_X( |
11 |
I bi,bj,k,deltaT, |
I bi,bj,k,deltaTloc, |
12 |
I uTrans, uVel, |
I uTrans, uVel, |
13 |
I maskLocW, tracer, |
I maskLocW, tracer, |
14 |
O uT, |
O uT, |
40 |
C tracer :: tracer field |
C tracer :: tracer field |
41 |
C myThid :: thread number |
C myThid :: thread number |
42 |
INTEGER bi,bj,k |
INTEGER bi,bj,k |
43 |
_RL deltaT |
_RL deltaTloc |
44 |
_RL uTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL uTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
45 |
_RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
46 |
_RS maskLocW(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RS maskLocW(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
94 |
& uTrans(i,j)*(Tracer(i,j)+Tracer(i-1,j))*0.5 _d 0 |
& uTrans(i,j)*(Tracer(i,j)+Tracer(i-1,j))*0.5 _d 0 |
95 |
& -0.5*( |
& -0.5*( |
96 |
& (1-Cr)*ABS(uTrans(i,j)) |
& (1-Cr)*ABS(uTrans(i,j)) |
97 |
& +uTrans(i,j)*uFld*deltaT |
& +uTrans(i,j)*uFld*deltaTloc |
98 |
& *recip_dxC(i,j,bi,bj)*Cr |
& *recip_dxC(i,j,bi,bj)*Cr |
99 |
& )*Rj |
& )*Rj |
100 |
ENDDO |
ENDDO |