8 |
|
|
9 |
C !INTERFACE: ========================================================== |
C !INTERFACE: ========================================================== |
10 |
SUBROUTINE GAD_FLUXLIMIT_ADV_Y( |
SUBROUTINE GAD_FLUXLIMIT_ADV_Y( |
11 |
I bi,bj,k,deltaT, |
I bi,bj,k,deltaTloc, |
12 |
I vTrans, vVel, |
I vTrans, vVel, |
13 |
I maskLocS, tracer, |
I maskLocS, tracer, |
14 |
O vT, |
O vT, |
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 vTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL vTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
45 |
_RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
46 |
_RS maskLocS(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RS maskLocS(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
96 |
& vTrans(i,j)*(Tracer(i,j)+Tracer(i,j-1))*0.5 _d 0 |
& vTrans(i,j)*(Tracer(i,j)+Tracer(i,j-1))*0.5 _d 0 |
97 |
& -0.5*( |
& -0.5*( |
98 |
& (1-Cr)*ABS(vTrans(i,j)) |
& (1-Cr)*ABS(vTrans(i,j)) |
99 |
& +vTrans(i,j)*vFld*deltaT |
& +vTrans(i,j)*vFld*deltaTloc |
100 |
& *recip_dyC(i,j,bi,bj)*Cr |
& *recip_dyC(i,j,bi,bj)*Cr |
101 |
& )*Rj |
& )*Rj |
102 |
ENDDO |
ENDDO |