FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(out), | dimension (:) | :: | f | ||
integer, | intent(in) | :: | src | |||
integer, | intent(in), | optional | :: | tag |
subroutine receive_logical_array (f, src, tag)
implicit none
logical, dimension (:), intent (out) :: f
integer, intent (in) :: src
integer, intent (in), optional :: tag
# ifdef MPI
integer :: ierror
integer :: tagp
integer, dimension (mp_status_size) :: status
tagp = 0
if (present(tag)) tagp = tag
!$OMP MASTER
call time_message(.false., time_mp_ptp, ' MPI Point-to-point')
!$OMP END MASTER
call mpi_recv (f, size(f), MPI_LOGICAL, src, tagp, mp_comm, &
status, ierror)
!$OMP MASTER
call time_message(.false., time_mp_ptp, ' MPI Point-to-point')
!$OMP END MASTER
# else
call mp_abort ("receive")
UNUSED_DUMMY(src); UNUSED_DUMMY(tag)
f = .false.
# endif
end subroutine receive_logical_array