40 |
_RL psiP,psiM,thetaP,thetaM |
_RL psiP,psiM,thetaP,thetaM |
41 |
_RL vFld |
_RL vFld |
42 |
_RL smallNo |
_RL smallNo |
43 |
_RL Rjjm,Rjjp |
c _RL Rjjm,Rjjp |
44 |
|
|
45 |
IF (inAdMode) THEN |
IF (inAdMode) THEN |
46 |
smallNo = 1.0D-20 |
smallNo = 1.0D-20 |
65 |
cfl=abs(vFld*deltaTloc*recip_dyC(i,j,bi,bj)) |
cfl=abs(vFld*deltaTloc*recip_dyC(i,j,bi,bj)) |
66 |
d0=(2.-cfl)*(1.-cfl)*oneSixth |
d0=(2.-cfl)*(1.-cfl)*oneSixth |
67 |
d1=(1.-cfl*cfl)*oneSixth |
d1=(1.-cfl*cfl)*oneSixth |
68 |
|
#ifdef ALLOW_MATRIX |
69 |
|
IF (.NOT.useMATRIX) THEN |
70 |
|
#endif /* ALLOW_MATRIX */ |
71 |
IF ( ABS(Rj).LT.smallNo .OR. |
IF ( ABS(Rj).LT.smallNo .OR. |
72 |
& ABS(Rjm).LT.smallNo ) THEN |
& ABS(Rjm).LT.smallNo ) THEN |
73 |
thetaP=0. |
thetaP=0. |
89 |
& *( Tracer(i,j-1) + psiP*Rj ) |
& *( Tracer(i,j-1) + psiP*Rj ) |
90 |
& +0.5*(vTrans(i,j)-abs(vTrans(i,j))) |
& +0.5*(vTrans(i,j)-abs(vTrans(i,j))) |
91 |
& *( Tracer(i, j ) - psiM*Rj ) |
& *( Tracer(i, j ) - psiM*Rj ) |
92 |
|
#ifdef ALLOW_MATRIX |
93 |
|
ELSE |
94 |
|
vT(i,j)= |
95 |
|
& 0.5*(vTrans(i,j)+abs(vTrans(i,j))) |
96 |
|
& *( Tracer(i,j-1) + (d0*Rj+d1*Rjm) ) |
97 |
|
& +0.5*(vTrans(i,j)-abs(vTrans(i,j))) |
98 |
|
& *( Tracer(i, j ) - (d0*Rj+d1*Rjp) ) |
99 |
|
ENDIF |
100 |
|
#endif /* ALLOW_MATRIX */ |
101 |
|
|
102 |
ENDDO |
ENDDO |
103 |
ENDDO |
ENDDO |