|
Go to the source code of this file.
Classes | |
class | MPIContainer |
This class contains all information and functions required for communication between processors. More... | |
Namespaces | |
Detail | |
Macros | |
#define | MERCURYDPM_ASSERTS true |
Enumerations | |
enum | MercuryMPIType { PARTICLE = 0 , POSITION = 1 , VELOCITY = 2 , FORCE = 3 , INTERACTION = 4 , SUPERQUADRIC = 5 } |
An enum that indicates what type of data is being send over MPI. More... | |
enum | MercuryMPITag { PARTICLE_COUNT = 0 , PARTICLE_DATA = 1 , POSITION_DATA = 2 , PERIODIC_POSITION_DATA = 3 , VELOCITY_DATA = 4 , INTERACTION_COUNT = 5 , INTERACTION_DATA = 6 , PERIODIC_COMPLEXITY = 7 , PARTICLE_INDEX = 8 , SUPERQUADRIC_DATA = 9 } |
An enum that facilitates the creation of unique communication tags in the parallel code. More... | |
Functions | |
void | initialiseMPI () |
Inialises the MPI library. More... | |
Class MPIContainer
#define MERCURYDPM_ASSERTS true |
enum MercuryMPITag |
An enum that facilitates the creation of unique communication tags in the parallel code.
The MercuryMPITag is the last digit of a communication tag in the parallel code. This ensures that when various data types are queued simultationously, there is no communication confusion. Additionally this is a useful feature for developers so they can trace back what message was being send if something went wrong.
Enumerator | |
---|---|
PARTICLE_COUNT | |
PARTICLE_DATA | |
POSITION_DATA | |
PERIODIC_POSITION_DATA | |
VELOCITY_DATA | |
INTERACTION_COUNT | |
INTERACTION_DATA | |
PERIODIC_COMPLEXITY | |
PARTICLE_INDEX | |
SUPERQUADRIC_DATA |
enum MercuryMPIType |
An enum that indicates what type of data is being send over MPI.
MPI requires knowledge on the memory lay out of a data object that is being send. Various types of data are being send in the parallel code, i.e. a whole particle or only the position. This enum indicates what type is being send
Enumerator | |
---|---|
PARTICLE | |
POSITION | |
VELOCITY | |
FORCE | |
INTERACTION | |
SUPERQUADRIC |
void initialiseMPI | ( | ) |
Inialises the MPI library.
References MPIContainer::deleteMercuryMPITypes(), MPIContainer::Instance(), and PROCESSOR_ID.
Referenced by DPMBase::constructor(), printError(), printFatalError(), printInfo(), and printWarn().