124 |
DO j=jMin,jMax |
DO j=jMin,jMax |
125 |
DO i=iMin,iMax |
DO i=iMin,iMax |
126 |
IF (maskC(i,j,k-1,bi,bj).EQ.1.) |
IF (maskC(i,j,k-1,bi,bj).EQ.1.) |
127 |
& b5d(i,j,k) = -deltaTtracer |
& b5d(i,j,k) = -dTtracerLev(1) |
128 |
& *recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
& *recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
129 |
& *kappaRX(i,j, k )*recip_drC( k ) |
& *kappaRX(i,j, k )*recip_drC( k ) |
130 |
ENDDO |
ENDDO |
135 |
DO j=jMin,jMax |
DO j=jMin,jMax |
136 |
DO i=iMin,iMax |
DO i=iMin,iMax |
137 |
IF (maskC(i,j,k+1,bi,bj).EQ.1.) |
IF (maskC(i,j,k+1,bi,bj).EQ.1.) |
138 |
& d5d(i,j,k) = -deltaTtracer |
& d5d(i,j,k) = -dTtracerLev(1) |
139 |
& *recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
& *recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
140 |
& *KappaRX(i,j,k+1)*recip_drC(k+1) |
& *KappaRX(i,j,k+1)*recip_drC(k+1) |
141 |
ENDDO |
ENDDO |
196 |
DO i=iMin,iMax |
DO i=iMin,iMax |
197 |
c localTijk(i,j,k) = gTracer(i,j,k,bi,bj) |
c localTijk(i,j,k) = gTracer(i,j,k,bi,bj) |
198 |
gTracer(i,j,k,bi,bj) = gTracer(i,j,k,bi,bj) |
gTracer(i,j,k,bi,bj) = gTracer(i,j,k,bi,bj) |
199 |
& + deltaTtracer*recip_rA(i,j,bi,bj) |
& + dTtracerLev(1)*recip_rA(i,j,bi,bj) |
200 |
& *_recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
& *_recip_hFacC(i,j,k,bi,bj)*recip_drF(k) |
201 |
& *tracer(i,j,k,bi,bj)*(rTrans(i,j)-rTransKp1(i,j))*rkFac |
& *tracer(i,j,k,bi,bj)*(rTrans(i,j)-rTransKp1(i,j))*rkFac |
202 |
ENDDO |
ENDDO |
214 |
IF ( advectionScheme.EQ.ENUM_CENTERED_2ND ) THEN |
IF ( advectionScheme.EQ.ENUM_CENTERED_2ND ) THEN |
215 |
diagonalNumber = 3 |
diagonalNumber = 3 |
216 |
CALL GAD_C2_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
CALL GAD_C2_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
217 |
I deltaTtracer, rTrans, |
I dTtracerLev(1), rTrans, |
218 |
U b5d, c5d, d5d, |
U b5d, c5d, d5d, |
219 |
I myThid) |
I myThid) |
220 |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
221 |
diagonalNumber = 3 |
diagonalNumber = 3 |
222 |
CALL GAD_FLUXLIMIT_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
CALL GAD_FLUXLIMIT_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
223 |
I deltaTtracer, rTrans, localTijk, |
I dTtracerLev(1), rTrans, localTijk, |
224 |
U b5d, c5d, d5d, |
U b5d, c5d, d5d, |
225 |
I myThid) |
I myThid) |
226 |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD .OR. |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD .OR. |
227 |
& advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
& advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
228 |
diagonalNumber = 5 |
diagonalNumber = 5 |
229 |
CALL GAD_U3C4_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
CALL GAD_U3C4_IMPL_R( bi,bj,k, iMin,iMax,jMin,jMax, |
230 |
I advectionScheme, deltaTtracer, rTrans, |
I advectionScheme, dTtracerLev(1), rTrans, |
231 |
U a5d, b5d, c5d, d5d, e5d, |
U a5d, b5d, c5d, d5d, e5d, |
232 |
I myThid) |
I myThid) |
233 |
ELSE |
ELSE |