7.17 psb_rcv — Receive data

call psb_rcv(ctxt, dat, src, m)

This subroutine receives a packet of data to a destination.

Type:
Synchronous: see usage notes.
On Entry
ctxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable.
src
Source process.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer value 0 <= src <= np - 1.
m
Number of rows.
Scope: global.
Type: Optional.
Intent: in.
Specified as: an integer value 0 <= m <= size(dat,1).
When dat is a rank 2 array, specifies the number of rows to be sent independently of the leading dimension size(dat,1); must have the same value on sending and receiving processes.

On Return
dat
The data to be received.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, or a rank 1 or 2 array, or a character or logical scalar.  Type, kind and rank must agree on sender and receiver process; if m is not specified, size must agree as well.

Notes

  1. This subroutine implies a synchronization, but only between the calling process and the source process src.