Dune Core Modules (2.8.0)

A real mpi helper. More...

#include <dune/common/parallel/mpihelper.hh>

Public Types

enum  { isFake = false }
 
typedef MPI_Comm MPICommunicator
 The type of the mpi communicator.
 

Public Member Functions

int rank () const
 return rank of process
 
int size () const
 return number of processes
 
 ~MPIHelper ()
 calls MPI_Finalize
 

Static Public Member Functions

static MPICommunicator getCommunicator ()
 get the default communicator More...
 
static MPICommunicator getLocalCommunicator ()
 get a local communicator More...
 
static DUNE_EXPORT MPIHelperinstance (int &argc, char **&argv)
 Get the singleton instance of the helper. More...
 

Detailed Description

A real mpi helper.

This helper should be used for parallel programs.

Examples
recipe-integration.cc, and recipe-iterate-over-grid.cc.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
isFake 

Are we fake (i. e. pretend to have MPI support but are compiled without.

Member Function Documentation

◆ getCommunicator()

static MPICommunicator Dune::MPIHelper::getCommunicator ( )
inlinestatic

get the default communicator

Return a communicator to exchange data with all processes

Returns
MPI_COMM_WORLD

◆ getLocalCommunicator()

static MPICommunicator Dune::MPIHelper::getLocalCommunicator ( )
inlinestatic

get a local communicator

Returns a communicator to exchange data with the local process only

Returns
MPI_COMM_SELF

Referenced by Dune::GridFactoryInterface< GridType >::comm().

◆ instance()

static DUNE_EXPORT MPIHelper & Dune::MPIHelper::instance ( int &  argc,
char **&  argv 
)
inlinestatic

Get the singleton instance of the helper.

This method has to be called with the same arguments that the main method of the program was called:

int main(int argc, char** argv){
MPIHelper::instance(argc, argv);
// program code comes here
...
}
Parameters
argcThe number of arguments provided to main.
argvThe arguments provided to main.

The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 22, 23:30, 2024)