pic_mpi Module

General MPI interface module


Uses

  • module~~pic_mpi~~UsesGraph module~pic_mpi pic_mpi module~pic_types pic_types module~pic_mpi->module~pic_types mpi_f08 mpi_f08 module~pic_mpi->mpi_f08 iso_fortran_env iso_fortran_env module~pic_types->iso_fortran_env

Variables

Type Visibility Attributes Name Initial
type(pic_comm_type), public :: world_comm

our world comm


Derived Types

type, public ::  pic_comm_type

custom data type that holds the MPI communicators

Components

Type Visibility Attributes Name Initial
type(MPI_COMM), public :: comm

use the MPI_COMM from the mpi_f08 module interface

integer(kind=int32), public :: m_ierr
integer(kind=int32), public :: m_rank

MPI rank

integer(kind=int32), public :: m_size

MPI size

Type-Bound Procedures

procedure, public :: finalize => pic_comm_finalize
procedure, public :: init => pic_comm_init

Subroutines

private subroutine pic_comm_finalize(self)

finalize the MPI library

Arguments

Type IntentOptional Attributes Name
class(pic_comm_type), intent(inout) :: self

private subroutine pic_comm_init(self)

initilalize the MPI library and get the size and rank variables

Arguments

Type IntentOptional Attributes Name
class(pic_comm_type), intent(inout) :: self