26 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
27 |
#include "smooth.h" |
#include "smooth.h" |
28 |
|
|
29 |
integer i,j,k, bi,bj, iMin,iMax,jMin,jMax |
integer i,j,k, bi,bj, iMin,iMax,jMin,jMax |
30 |
integer itlo,ithi, jtlo,jthi |
integer itlo,ithi, jtlo,jthi |
31 |
integer myThid, myIter(nSx,nSy) |
integer myThid, myIter(nSx,nSy) |
32 |
integer mykkey, smoothkey |
integer mykkey, smoothkey |
42 |
|
|
43 |
c for now: useless, because level 3 is recomputed anyway |
c for now: useless, because level 3 is recomputed anyway |
44 |
c but : if level3 was computed during the fwd loop by callung |
c but : if level3 was computed during the fwd loop by callung |
45 |
c mdsmooth_diff3D (assumes that it would be called |
c mdsmooth_diff3D (assumes that it would be called |
46 |
c directly by the_main_loop) then I would need to pass key_in |
c directly by the_main_loop) then I would need to pass key_in |
47 |
c as a parameter, with different values for T, S, ... |
c as a parameter, with different values for T, S, ... |
48 |
c in order not to overwrite the same tape |
c in order not to overwrite the same tape |
49 |
key_in=0 |
key_in=0 |
50 |
|
|
51 |
jtlo = mybylo(mythid) |
jtlo = mybylo(mythid) |
92 |
do ilev_2 = 1,nchklev_2 |
do ilev_2 = 1,nchklev_2 |
93 |
if(ilev_2.le.max_lev2) then |
if(ilev_2.le.max_lev2) then |
94 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
95 |
CADJ STORE fld_in = tape_smooth_lev2 , |
CADJ STORE fld_in = tape_smooth_lev2 , |
96 |
CADJ & key = key_in*nchklev_2 + ilev_2 |
CADJ & key = key_in*nchklev_2 + ilev_2 |
97 |
CADJ STORE gTm1_in = tape_smooth_lev2 , |
CADJ STORE gTm1_in = tape_smooth_lev2 , |
98 |
CADJ & key = key_in*nchklev_2 + ilev_2 |
CADJ & key = key_in*nchklev_2 + ilev_2 |
99 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
100 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
107 |
if ( iloop .le. nbt_in ) then |
if ( iloop .le. nbt_in ) then |
108 |
|
|
109 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
110 |
CADJ STORE gTm1_in(:,:,:,bi,bj) = tape_smooth_lev1 , |
CADJ STORE gTm1_in(:,:,:,bi,bj) = tape_smooth_lev1 , |
111 |
CADJ & key = key_in*nchklev_1 + ilev_1 |
CADJ & key = key_in*nchklev_1 + ilev_1 |
112 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
113 |
|
|
143 |
& gT_in, gTm1_in, |
& gT_in, gTm1_in, |
144 |
& myIter(bi,bj) , myThid ) |
& myIter(bi,bj) , myThid ) |
145 |
ENDDO |
ENDDO |
146 |
c time stepping: |
c time stepping: |
147 |
DO k=1,Nr |
DO k=1,Nr |
148 |
DO j=1-OLy,sNy+OLy |
DO j=1-OLy,sNy+OLy |
149 |
DO i=1-OLx,sNx+OLx |
DO i=1-OLx,sNx+OLx |
183 |
endif |
endif |
184 |
enddo |
enddo |
185 |
#else /* ALLOW_TAMC_CHECKPOINTING */ |
#else /* ALLOW_TAMC_CHECKPOINTING */ |
186 |
enddo |
enddo |
187 |
#endif |
#endif |
188 |
|
|
189 |
END |
END |