2.13.4.2. Virtual Topology Addressing
int MPI_Cart_rank (MPI_Comm comm, const int coords [], int *rank);
int MPI_Cart_coords (MPI_Comm comm, int rank, int maxdims, int coords []);
int MPI_Cart_shift (MPI_Comm comm, int direction, int disp, int *rank_source, int *rank_dest);
int MPI_Graph_neighbors (MPI_Comm comm, int rank, int maxneighbors, int neighbors []);
int MPI_Dist_graph_neighbors (
MPI_Comm comm,
int maxindegree, int sources [], int sourceweights [],
int maxoutdegree, int destinations [], int destweights []);