1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
INTEGER FUNCTION INDXG2P( INDXGLOB, NB, IPROC, ISRCPROC, NPROCS )
*
* -- ScaLAPACK tools routine (version 1.7) --
* University of Tennessee, Knoxville, Oak Ridge National Laboratory,
* and University of California, Berkeley.
* May 1, 1997
*
* .. Scalar Arguments ..
INTEGER INDXGLOB, IPROC, ISRCPROC, NB, NPROCS
* ..
*
* Purpose
* =======
*
* INDXG2P computes the process coordinate which posseses the entry of a
* distributed matrix specified by a global index INDXGLOB.
*
* Arguments
* =========
*
* INDXGLOB (global input) INTEGER
* The global index of the element.
*
* NB (global input) INTEGER
* Block size, size of the blocks the distributed matrix is
* split into.
*
* IPROC (local dummy) INTEGER
* Dummy argument in this case in order to unify the calling
* sequence of the tool-routines.
*
* ISRCPROC (global input) INTEGER
* The coordinate of the process that possesses the first
* row/column of the distributed matrix.
*
* NPROCS (global input) INTEGER
* The total number processes over which the matrix is
* distributed.
*
* =====================================================================
*
* .. Intrinsic Functions ..
INTRINSIC MOD
* ..
* .. Executable Statements ..
*
INDXG2P = MOD( ISRCPROC + (INDXGLOB - 1) / NB, NPROCS )
*
RETURN
*
* End of INDXG2P
*
END
|