Module fd4_mpi_mod


Uses:
    module fd4_globaldef_mod
    module stack_mod
Types:
    public type fd4_mpi
Variables:
    integer, public, parameter :: MPI_I4K = MPI_INTEGER
    integer, public, parameter :: MPI_I8K = MPI_INTEGER8
    integer, public, parameter :: MPI_I_K = MPI_INTEGER
    integer, public, parameter :: MPI_R4K = MPI_REAL
    integer, public, parameter :: MPI_R8K = MPI_DOUBLE_PRECISION
    integer, public, parameter :: MPI_R_K = MPI_DOUBLE_PRECISION
    integer (kind=i_k), public, parameter :: MPI_R_K_size = 8

FD4 MPI context.

Author: Matthias Lieber

See also: module kinds_mod


Description of Types

fd4_mpi

public type fd4_mpi
    integer :: comm
    integer :: rank
    integer :: nprocs
    integer, pointer, dimension (:) :: recvcnt
    integer, pointer, dimension (:) :: recvdis
    integer, pointer, dimension (:) :: sendcnt
    integer, pointer, dimension (:) :: senddis
    integer (kind=i_k), pointer, dimension (:) :: sendint
    integer (kind=i_k), pointer, dimension (:) :: recvint
    real (kind=r4k), pointer, dimension (:) :: sendreal
    real (kind=r4k), pointer, dimension (:) :: recvreal
    type (stack) :: requests
    integer, pointer, dimension (:,:) :: statuses
end type fd4_mpi
Components:
comm MPI communicator
rank MPI rank
nprocs number of MPI processes
recvcnt for MPI_All2allv
recvdis for MPI_All2allv
sendcnt for MPI_All2allv
senddis for MPI_All2allv
sendint to exchange integers with neighbors
recvint to exchange integers with neighbors
sendreal to exchange integers with neighbors
recvreal to exchange integers with neighbors
requests requests for non-blocking communication
statuses array of statuses