1D Shift

Non-Local and Local Iteration Splitting
(Before Localization and Linearization)


C       
C       --<< Iterations that might access non-local values >>-- 
C       
C       Loop section ---[ i = ((25 * myid1) + 1) ]---
C       
        if (1 .le. 25 * myid1 .and. 25 * myid1 .le. 98) then
          i = 25 * myid1 + 1
          lnltmp1 = hpf_nonlocal_lookupd(hash$nonlocals, b$data, i - 1)
          a(i) = 0.25 * lnltmp1
        endif
C       
C       --<< Iterations that access only local values >>-- 
C       
C       Loop section ---[ max(((25 * myid1) + 2), 2) <= i <= min(((25 * myid1) +
C 25), 99) ]---
C       
        do i = max(25 * myid1 + 2, 2), min(25 * myid1 + 25, 99)
          a(i) = 0.25 * b(i - 1)
        enddo