PMD_Comm_Info_1DD - Returns usefull informations from the PMD process group.
CALL PMD_Comm_Info_1DD( Comm=comm[, Rank=rank][, Size=size][, ProcCoord=coords][, GridDim=dims] )
<IN> comm : PMD handel of type PMD_Comm_1D or PMD_Comm_2D.
<OUT> rank : OPTIONAL parameter. INTEGER scalar. Returns the rank of the calling process.
<OUT> size : OPTIONAL parameter. INTEGER scalar. Returns the size of the PMD process group.
<OUT> coords : OPTIONAL parameter. INTEGER rank 1 array POINTER. Returns the coordinates
of the calling process.
<OUT> dims : OPTIONAL parameter. INTEGER rank 1 array POINTER. Returns the dimensions.
of the PMD process grid.
USE PMD
INCLUDE "mpif.h"
TYPE(PMD_Comm_2D) :: comm
INTEGER :: info, rank, size
INTEGER, POINTER, DIMENSION(:) :: coords, dims
...
CALL MPI_INIT( info )
CALL PMD_Init_1DD( MPI_COMM_WORLD, comm )
CALL PMD_Comm_Info_1DD( comm, Size=size, Rank=rank )
...
CALL PMD_Comm_Info_1DD( comm, Rank=rank, ProcCoord=coords )
PRINT *,"My rank and my coordinates in the process grid: ", rank, coords(:)
...
CALL PMD_Comm_Info_1DD( comm, GridDim=dims )
PRINT *,"The dimensions of the PMD process grid: ", dims(:)