Remove unnecessary case conditions from boundary_variables().

This commit is contained in:
Grzegorz Kowal 2011-05-17 14:14:01 -03:00
parent 8c4e774d1f
commit 70f3098d31

View File

@ -627,53 +627,27 @@ module boundaries
! !
call mrecvf(size(rbuf(:,:,:,:,:)), isend, itag, rbuf(:,:,:,:,:)) call mrecvf(size(rbuf(:,:,:,:,:)), isend, itag, rbuf(:,:,:,:,:))
! update boundaries using the data received in the buffer ! iterate over all received blocks and update boundaries
! !
select case(idir) l = 1
case(1) pinfo => block_array(1,irecv,isend)%ptr
l = 1 do while(associated(pinfo))
pinfo => block_array(1,irecv,isend)%ptr
do while(associated(pinfo))
iside = pinfo%side ! set indices
pdata => pinfo%block%data !
iside = pinfo%side
call boundary_copy(pdata, rbuf(l,:,:,:,:), idir, iside) ! assign a pointer to the data structure of the current block
!
pdata => pinfo%block%data
pinfo => pinfo%prev ! update the boundaries of the current block
l = l + 1 !
end do call boundary_copy(pdata, rbuf(l,:,:,:,:), idir, iside)
case(2) pinfo => pinfo%prev
l = 1 l = l + 1
pinfo => block_array(1,irecv,isend)%ptr end do
do while(associated(pinfo))
iside = pinfo%side
pdata => pinfo%block%data
call boundary_copy(pdata, rbuf(l,:,:,:,:), idir, iside)
pinfo => pinfo%prev
l = l + 1
end do
#if NDIMS == 3
case(3)
l = 1
pinfo => block_array(1,irecv,isend)%ptr
do while(associated(pinfo))
iside = pinfo%side
pdata => pinfo%block%data
call boundary_copy(pdata, rbuf(l,:,:,:,:), idir, iside)
pinfo => pinfo%prev
l = l + 1
end do
#endif /* NDIMS == 3 */
end select
end if ! irecv = ncpu end if ! irecv = ncpu
@ -808,20 +782,9 @@ module boundaries
! update the boundaries of the current block ! update the boundaries of the current block
! !
select case(idir) call boundary_restrict(pdata, rbuf(l,:,:,:,:) &
case(1)
call boundary_restrict(pdata, rbuf(l,:,:,:,:) &
, idir, iside, iface) , idir, iside, iface)
case(2)
call boundary_restrict(pdata, rbuf(l,:,:,:,:) &
, idir, iside, iface)
case(3)
call boundary_restrict(pdata, rbuf(l,:,:,:,:) &
, idir, iside, iface)
end select
pinfo => pinfo%prev pinfo => pinfo%prev
l = l + 1 l = l + 1
end do end do