anchor.diff:      if (east.ne.MPI_PROC_NULL) then
          p(:,1:ny,nx+1:nx+nh) = recvE
       else !!Homogenous Neumann  
  -       p(:,1:ny,nx+1:nx+nh) = p(:,1:ny,nx:nx-nh:-1)
  +       p(:,1:ny,nx+1:nx+nh) = p(:,1:ny,nx:nx-nh+1:-1)
       end if
       !
       deallocate(sendE)
  
positive.code: 
      integer(kind=is) :: etag, wtag, ntag, stag
      integer(kind=is) :: ierr,status1 
      integer(kind=is) :: ilev
  
      real(kind=rl),dimension(:,:,:),allocatable :: sendN,recvN,sendS,recvS
      real(kind=rl),dimension(:,:,:),allocatable :: sendE,recvE,sendW,recvW
  
negative.code:     if (north.ne.MPI_PROC_NULL) then
         p(:,ny+1:ny+nh,1:nx)  = recvN
      else!!Homogenous Neumann  
         p(:,ny+1:ny+nh,1:nx) = p(:,ny:ny-nh+1:-1,1:nx)
      end if
      !
      deallocate(sendN)
  