mpi.cart.shift: MPI_Cart_shift

View source: R/Rmpi.R

mpi.cart.shiftR Documentation

MPI_Cart_shift

Description

mpi.cart.shift shifts the Cartesian topology in both manners, displacement and direction.

Usage

 mpi.cart.shift(comm=3, direction, disp)

Arguments

comm

Communicator with Cartesian structure

direction

Coordinate dimension of the shift

disp

displacement (>0 for upwards or left shift, <0 for downwards or right shift)

Details

mpi.cart.shift provides neighbor ranks from given direction and displacement. The direction argument indicates the dimension of the shift. direction=1 means the first dim, direction=2 means the second dim, etc. disp=1 or -1 provides immediate neighbor ranks and disp=2 or -2 provides neighbor's neighbor ranks. Negative ranks mean out of boundary. They correspond to mpi.proc.null.

Value

mpi.cart.shift returns a vector containing information regarding the rank of the source process and rank of the destination process.

Author(s)

Alek Hunchak and Hao Yu

References

https://www.open-mpi.org/

See Also

mpi.cart.create,mpi.proc.null

Examples


#Need at least 9 slaves
#mpi.bcast.cmd(mpi.cart.create(1,c(3,3),c(F,T)))
#mpi.cart.create(1,c(3,3),c(F,T))
#mpi.remote.exec(mpi.cart.shift(3,2,1))#get neighbor ranks
#mpi.remote.exec(mpi.cart.shift(3,1,1))


Rmpi documentation built on Sept. 23, 2024, 5:09 p.m.

Related to mpi.cart.shift in Rmpi...