179 |
IF (advectionScheme.EQ.ENUM_CENTERED_2ND) THEN |
IF (advectionScheme.EQ.ENUM_CENTERED_2ND) THEN |
180 |
CALL GAD_C2_ADV_X(bi,bj,k,uTrans,localT,af,myThid) |
CALL GAD_C2_ADV_X(bi,bj,k,uTrans,localT,af,myThid) |
181 |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
182 |
CALL GAD_FLUXLIMIT_ADV_X( bi,bj,k, deltaTtracer, |
CALL GAD_FLUXLIMIT_ADV_X( bi,bj,k, dTtracerLev(k), |
183 |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
184 |
O af, myThid ) |
O af, myThid ) |
185 |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD ) THEN |
187 |
ELSEIF (advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
ELSEIF (advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
188 |
CALL GAD_C4_ADV_X(bi,bj,k,uTrans,localT,af,myThid) |
CALL GAD_C4_ADV_X(bi,bj,k,uTrans,localT,af,myThid) |
189 |
ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN |
190 |
CALL GAD_DST3_ADV_X( bi,bj,k, deltaTtracer, |
CALL GAD_DST3_ADV_X( bi,bj,k, dTtracerLev(k), |
191 |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
192 |
O af, myThid ) |
O af, myThid ) |
193 |
ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
194 |
CALL GAD_DST3FL_ADV_X( bi,bj,k, deltaTtracer, |
CALL GAD_DST3FL_ADV_X( bi,bj,k, dTtracerLev(k), |
195 |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
I uTrans, uVel, maskW(1-Olx,1-Oly,k,bi,bj), localT, |
196 |
O af, myThid ) |
O af, myThid ) |
197 |
ELSE |
ELSE |
254 |
IF (advectionScheme.EQ.ENUM_CENTERED_2ND) THEN |
IF (advectionScheme.EQ.ENUM_CENTERED_2ND) THEN |
255 |
CALL GAD_C2_ADV_Y(bi,bj,k,vTrans,localT,af,myThid) |
CALL GAD_C2_ADV_Y(bi,bj,k,vTrans,localT,af,myThid) |
256 |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN |
257 |
CALL GAD_FLUXLIMIT_ADV_Y( bi,bj,k, deltaTtracer, |
CALL GAD_FLUXLIMIT_ADV_Y( bi,bj,k, dTtracerLev(k), |
258 |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
259 |
O af, myThid ) |
O af, myThid ) |
260 |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_UPWIND_3RD ) THEN |
262 |
ELSEIF (advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
ELSEIF (advectionScheme.EQ.ENUM_CENTERED_4TH) THEN |
263 |
CALL GAD_C4_ADV_Y(bi,bj,k,vTrans,localT,af,myThid) |
CALL GAD_C4_ADV_Y(bi,bj,k,vTrans,localT,af,myThid) |
264 |
ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN |
265 |
CALL GAD_DST3_ADV_Y( bi,bj,k, deltaTtracer, |
CALL GAD_DST3_ADV_Y( bi,bj,k, dTtracerLev(k), |
266 |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
267 |
O af, myThid ) |
O af, myThid ) |
268 |
ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
269 |
CALL GAD_DST3FL_ADV_Y( bi,bj,k, deltaTtracer, |
CALL GAD_DST3FL_ADV_Y( bi,bj,k, dTtracerLev(k), |
270 |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
I vTrans, vVel, maskS(1-Olx,1-Oly,k,bi,bj), localT, |
271 |
O af, myThid ) |
O af, myThid ) |
272 |
ELSE |
ELSE |
332 |
CALL GAD_C2_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
CALL GAD_C2_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
333 |
ELSEIF (vertAdvecScheme.EQ.ENUM_FLUX_LIMIT) THEN |
ELSEIF (vertAdvecScheme.EQ.ENUM_FLUX_LIMIT) THEN |
334 |
CALL GAD_FLUXLIMIT_ADV_R( |
CALL GAD_FLUXLIMIT_ADV_R( |
335 |
& bi,bj,k,deltaTtracer,rTrans,wVel,tracer,af,myThid) |
& bi,bj,k,dTtracerLev(k),rTrans,wVel,tracer,af,myThid) |
336 |
ELSEIF (vertAdvecScheme.EQ.ENUM_UPWIND_3RD ) THEN |
ELSEIF (vertAdvecScheme.EQ.ENUM_UPWIND_3RD ) THEN |
337 |
CALL GAD_U3_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
CALL GAD_U3_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
338 |
ELSEIF (vertAdvecScheme.EQ.ENUM_CENTERED_4TH) THEN |
ELSEIF (vertAdvecScheme.EQ.ENUM_CENTERED_4TH) THEN |
339 |
CALL GAD_C4_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
CALL GAD_C4_ADV_R(bi,bj,k,rTrans,tracer,af,myThid) |
340 |
ELSEIF (vertAdvecScheme.EQ.ENUM_DST3 ) THEN |
ELSEIF (vertAdvecScheme.EQ.ENUM_DST3 ) THEN |
341 |
CALL GAD_DST3_ADV_R( |
CALL GAD_DST3_ADV_R( |
342 |
& bi,bj,k,deltaTtracer,rTrans,wVel,tracer,af,myThid) |
& bi,bj,k,dTtracerLev(k),rTrans,wVel,tracer,af,myThid) |
343 |
ELSEIF (vertAdvecScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
ELSEIF (vertAdvecScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN |
344 |
CALL GAD_DST3FL_ADV_R( |
CALL GAD_DST3FL_ADV_R( |
345 |
& bi,bj,k,deltaTtracer,rTrans,wVel,tracer,af,myThid) |
& bi,bj,k,dTtracerLev(k),rTrans,wVel,tracer,af,myThid) |
346 |
ELSE |
ELSE |
347 |
STOP 'GAD_CALC_RHS: Bad vertAdvecScheme (R)' |
STOP 'GAD_CALC_RHS: Bad vertAdvecScheme (R)' |
348 |
ENDIF |
ENDIF |