Blocking receive of a contiguous 2D double-precision array
with explicit count. No dim-prefix protocol — the caller
has already shaped data. Mirrors comm_send_real_dp_array_2d_n.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_t), | intent(in) | :: | comm | |||
| real(kind=dp), | intent(out) | :: | data(:,:) | |||
| integer(kind=int32), | intent(in) | :: | count | |||
| integer(kind=int32), | intent(in) | :: | source | |||
| integer(kind=int32), | intent(in) | :: | tag | |||
| type(MPI_Status), | intent(out), | optional | :: | status |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=int32), | private | :: | ierr |
subroutine comm_recv_real_dp_array_2d_n(comm, data, count, source, tag, status) !! Blocking receive of a contiguous 2D double-precision array !! with explicit `count`. No dim-prefix protocol — the caller !! has already shaped `data`. Mirrors `comm_send_real_dp_array_2d_n`. type(comm_t), intent(in) :: comm real(dp), intent(out) :: data(:, :) integer(int32), intent(in) :: count integer(int32), intent(in) :: source integer(int32), intent(in) :: tag type(MPI_Status), intent(out), optional :: status integer(int32) :: ierr if (present(status)) then call MPI_Recv(data, count, MPI_DOUBLE_PRECISION, source, tag, & comm%m_comm, status, ierr) else call MPI_Recv(data, count, MPI_DOUBLE_PRECISION, source, tag, & comm%m_comm, MPI_STATUS_IGNORE, ierr) end if end subroutine comm_recv_real_dp_array_2d_n