The functions nrow()
, ncol()
, length()
and dim()
are the natural extensions of their ordinary matrix counterparts.
ldim()
will give the dimension of the matrix stored locally on the
process which runs the function. This is a local value, so its return is
process-dependent. For example, if the 3x3 global matrix x
is
distributed as the ddmatrix
dx
across two processors with
process 0 owning the first two rows and process 1 owning the third, then
ldim(dx)
will return 2 3
on process 0 and 1 3
on
process 1.
bldim()
will give the blocking dimension that was used to
block-cyclically distribute the distributed matrix.
submatrix()
will give the local storage for the requested object.
ICTXT()
will give the current BLACS context (slot ICTXT) for the
requested object.
ownany()
is intended mostly for developers. It answers the question
"do I own any of the data?". The user can either pass a distributed matrix
object or the dim, bldim, and ICTXT of one.