265 |
DO j=1-OLy,sNy+OLy |
DO j=1-OLy,sNy+OLy |
266 |
DO i=1-OLx,sNx+OLx |
DO i=1-OLx,sNx+OLx |
267 |
localTij(i,j)=tracer(i,j,k,bi,bj) |
localTij(i,j)=tracer(i,j,k,bi,bj) |
268 |
maskLocW(i,j)=maskW(i,j,k,bi,bj) |
maskLocW(i,j)=_maskW(i,j,k,bi,bj) |
269 |
maskLocS(i,j)=maskS(i,j,k,bi,bj) |
maskLocS(i,j)=_maskS(i,j,k,bi,bj) |
270 |
ENDDO |
ENDDO |
271 |
ENDDO |
ENDDO |
272 |
|
|
282 |
C-- For cube need one pass for each of red, green and blue axes. |
C-- For cube need one pass for each of red, green and blue axes. |
283 |
DO ipass=1,nipass |
DO ipass=1,nipass |
284 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
285 |
passkey = ipass + (k-1) *maxcube |
passkey = ipass |
286 |
& + (igadkey-1)*maxcube*Nr |
& + (k-1) *maxpass |
287 |
|
& + (igadkey-1)*maxpass*Nr |
288 |
IF (nipass .GT. maxpass) THEN |
IF (nipass .GT. maxpass) THEN |
289 |
STOP 'GAD_ADVECTION: nipass > maxcube. check tamc.h' |
STOP 'GAD_ADVECTION: nipass > maxcube. check tamc.h' |
290 |
ENDIF |
ENDIF |
727 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
728 |
CADJ STORE rtrans(:,:) = |
CADJ STORE rtrans(:,:) = |
729 |
CADJ & comlev1_bibj_k_gad, key=kkey, byte=isbyte |
CADJ & comlev1_bibj_k_gad, key=kkey, byte=isbyte |
730 |
CADJ STORE wfld(:,:) = |
cphCADJ STORE wfld(:,:) = |
731 |
CADJ & comlev1_bibj_k_gad, key=kkey, byte=isbyte |
cphCADJ & comlev1_bibj_k_gad, key=kkey, byte=isbyte |
732 |
#endif |
#endif |
733 |
|
|
734 |
C-- Compute Vertical transport |
C-- Compute Vertical transport |
826 |
cphmultiCADJ & = comlev1_bibj_k_gad, key=kkey, byte=isbyte |
cphmultiCADJ & = comlev1_bibj_k_gad, key=kkey, byte=isbyte |
827 |
cphmultiCADJ STORE rTranskp1(:,:) |
cphmultiCADJ STORE rTranskp1(:,:) |
828 |
cphmultiCADJ & = comlev1_bibj_k_gad, key=kkey, byte=isbyte |
cphmultiCADJ & = comlev1_bibj_k_gad, key=kkey, byte=isbyte |
829 |
|
cph --- following storing of fVerT is critical for correct |
830 |
|
cph --- gradient with multiDimAdvection |
831 |
|
cph --- Without it, kDown component is not properly recomputed |
832 |
|
cph --- This is a TAF bug (and no warning available) |
833 |
|
CADJ STORE fVerT(:,:,:) |
834 |
|
CADJ & = comlev1_bibj_k_gad, key=kkey, byte=isbyte |
835 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
836 |
|
|
837 |
C-- Divergence of vertical fluxes |
C-- Divergence of vertical fluxes |