138 |
LOGICAL calc_fluxes_X, calc_fluxes_Y, withSigns |
LOGICAL calc_fluxes_X, calc_fluxes_Y, withSigns |
139 |
LOGICAL interiorOnly, overlapOnly |
LOGICAL interiorOnly, overlapOnly |
140 |
INTEGER nipass,ipass |
INTEGER nipass,ipass |
141 |
INTEGER myTile, nCFace |
INTEGER nCFace |
142 |
LOGICAL N_edge, S_edge, E_edge, W_edge |
LOGICAL N_edge, S_edge, E_edge, W_edge |
143 |
|
#ifdef ALLOW_EXCH2 |
144 |
|
INTEGER myTile |
145 |
|
#endif |
146 |
#ifdef ALLOW_DIAGNOSTICS |
#ifdef ALLOW_DIAGNOSTICS |
147 |
CHARACTER*8 diagName |
CHARACTER*8 diagName |
148 |
CHARACTER*4 GAD_DIAG_SUFX, diagSufx |
CHARACTER*4 GAD_DIAG_SUFX, diagSufx |
193 |
fVerT(i,j,1) = 0. _d 0 |
fVerT(i,j,1) = 0. _d 0 |
194 |
fVerT(i,j,2) = 0. _d 0 |
fVerT(i,j,2) = 0. _d 0 |
195 |
rTransKp1(i,j)= 0. _d 0 |
rTransKp1(i,j)= 0. _d 0 |
196 |
|
#ifdef ALLOW_AUTODIFF_TAMC |
197 |
|
localTij(i,j) = 0. _d 0 |
198 |
|
#endif |
199 |
ENDDO |
ENDDO |
200 |
ENDDO |
ENDDO |
201 |
|
|
221 |
#endif |
#endif |
222 |
ELSE |
ELSE |
223 |
nipass=2 |
nipass=2 |
224 |
|
nCFace = bi |
225 |
N_edge = .FALSE. |
N_edge = .FALSE. |
226 |
S_edge = .FALSE. |
S_edge = .FALSE. |
227 |
E_edge = .FALSE. |
E_edge = .FALSE. |
317 |
|
|
318 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
319 |
C-- X direction |
C-- X direction |
320 |
|
C- Advective flux in X |
321 |
|
DO j=1-Oly,sNy+Oly |
322 |
|
DO i=1-Olx,sNx+Olx |
323 |
|
af(i,j) = 0. |
324 |
|
ENDDO |
325 |
|
ENDDO |
326 |
|
C |
327 |
|
#ifdef ALLOW_AUTODIFF_TAMC |
328 |
|
# ifndef DISABLE_MULTIDIM_ADVECTION |
329 |
|
CADJ STORE localTij(:,:) = |
330 |
|
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
331 |
|
CADJ STORE af(:,:) = |
332 |
|
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
333 |
|
# endif |
334 |
|
#endif /* ALLOW_AUTODIFF_TAMC */ |
335 |
|
C |
336 |
IF (calc_fluxes_X) THEN |
IF (calc_fluxes_X) THEN |
337 |
|
|
338 |
C- Do not compute fluxes if |
C- Do not compute fluxes if |
352 |
ENDIF |
ENDIF |
353 |
#endif |
#endif |
354 |
|
|
|
C- Advective flux in X |
|
|
DO j=1-Oly,sNy+Oly |
|
|
DO i=1-Olx,sNx+Olx |
|
|
af(i,j) = 0. |
|
|
ENDDO |
|
|
ENDDO |
|
|
|
|
355 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
356 |
#ifndef DISABLE_MULTIDIM_ADVECTION |
# ifndef DISABLE_MULTIDIM_ADVECTION |
357 |
CADJ STORE localTij(:,:) = |
CADJ STORE localTij(:,:) = |
358 |
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
359 |
#endif |
# endif |
360 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
361 |
|
|
362 |
IF ( advectionScheme.EQ.ENUM_UPWIND_1RST |
IF ( advectionScheme.EQ.ENUM_UPWIND_1RST |
473 |
|
|
474 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
475 |
C-- Y direction |
C-- Y direction |
476 |
|
cph-test |
477 |
|
C- Advective flux in Y |
478 |
|
DO j=1-Oly,sNy+Oly |
479 |
|
DO i=1-Olx,sNx+Olx |
480 |
|
af(i,j) = 0. |
481 |
|
ENDDO |
482 |
|
ENDDO |
483 |
|
C |
484 |
|
#ifdef ALLOW_AUTODIFF_TAMC |
485 |
|
# ifndef DISABLE_MULTIDIM_ADVECTION |
486 |
|
CADJ STORE localTij(:,:) = |
487 |
|
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
488 |
|
CADJ STORE af(:,:) = |
489 |
|
CADJ & comlev1_bibj_k_gad_pass, key=passkey, byte=isbyte |
490 |
|
# endif |
491 |
|
#endif /* ALLOW_AUTODIFF_TAMC */ |
492 |
|
C |
493 |
IF (calc_fluxes_Y) THEN |
IF (calc_fluxes_Y) THEN |
494 |
|
|
495 |
C- Do not compute fluxes if |
C- Do not compute fluxes if |