MPI_Cart_get
MPI_Cart_get retrieves properties such as periodicity and size of a subgrid.
On occasions, a subgrid communicator may be created in one routine and is subsequently used in another routine. If only the communicator is available in the latter, this routine, along with MPI_Cartdim_get
, may be used to determine the size and other pertinent information regarding the subgrid.
Fortran Syntax
Subroutine MPI_Cart_get(subgrid_comm, ndims, dims, period, coords, ierr)
C Syntax
int MPI_Cart_get(MPI_Comm subgrid_comm, int dims, int *ndims, int *periods, int *coords)
Example in Fortran

Shown in Figure a below is a 3by2 cartesian topology (grid) where the index pair “i,j” represent row “i” and column “j”. The number in parentheses represents the rank number associated with the cartesian grid.
0,0 (0)  0,1 (1) 
1,0 (2)  1,1 (3) 
2,0 (4)  2,1 (5) 
We have just demonstrated the use of MPI_Cart_get to retrieve information on a subgrid communicator. Often, MPI_Cartdim_get needs to be called first, as ndims
, the dimensions of the subgrid, is needed as input to MPI_Cart_get
.