46#include <blitz/array.h>
53 inline void assignRanks();
104 static inline int pmod(
int a,
int b) {
return (a % b + b) % b;};
Class for all the global variables and functions related to parallelization.
Definition: parallel.h:51
int xRank
xRank and yRank indicates the rank in terms of sub-domain divisions along the X and Y directions resp...
Definition: parallel.h:78
blitz::Array< int, 1 > edgeRanks
Array of ranks of the 4 neighbouring sub-domains across edges - Left-Front, Left-Back,...
Definition: parallel.h:85
const int npX
npX and npY indicates the number of sub-domain divisions along the X and Y directions respectively
Definition: parallel.h:67
int rank
The MPI rank of each sub-domain.
Definition: parallel.h:60
int findRank(int xR, int yR)
Function to calculate the global rank of a sub-domain using its xRank and yRank.
Definition: parallel.h:121
MPI_Comm MPI_ROW_COMM
Row and column communicators.
Definition: parallel.h:72
blitz::Array< int, 1 > faceRanks
Array of ranks of the 4 neighbouring sub-domains across faces - Left, Right, Front,...
Definition: parallel.h:82
static int pmod(int a, int b)
Function to calculate the positive modulus of two numbers.
Definition: parallel.h:104
parallel(const parser &iDat)
Constructor of the parallel class.
Definition: parallel.cc:57
int nProc
The total number of cores available for computation.
Definition: parallel.h:63
Contains all the global variables set by the user through the yaml file.
Definition: parser.h:63
Class declaration of parser.