Alsvinn
0.5.3
The fast FVM simulator with UQ support
|
Functions | |
std::vector< int > | computeDisplacements (int side, int dimensions, ivec3 numberOfCellsPerDirection, int ghostCells, int baseOffset) |
std::vector< int > | computeLengths (int side, int dimensions, ivec3 numberOfCellsPerDirection, int ghostCells) |
int | computeNumberOfSegments (int side, int dimensions, ivec3 numberOfCellsPerDirection) |
ivec3 | getCoordinates (int rank, const ivec3 &numberOfProcessors) |
int | getRankIndex (const ivec3 &coordinate, const ivec3 &numberOfProcessors) |
|
inline |
Computes the displacmenets (offsets) of the segments
side | an integer from 0 to 5 (inclusive)
| ||||||||||||||||||||||||||||
dimensions | the number of dimension (from 1 to 3) | ||||||||||||||||||||||||||||
numberOfCellsPerDirection | for each direction, list the total number of cells in that direction (this includes ghost cells) | ||||||||||||||||||||||||||||
ghostCells | number of ghost cells in the given direction | ||||||||||||||||||||||||||||
baseOffset | the offset to use in the direction. This is to handle the receive and send types. This should always be of non-negative quantity, the sign will be deduced |
|
inline |
Computes the lengths (in number of reals) of the segments
side | an integer from 0 to 5 (inclusive)
| ||||||||||||||||||||||||||||
dimensions | the number of dimension (from 1 to 3) | ||||||||||||||||||||||||||||
numberOfCellsPerDirection | for each direction, list the total number of cells in that direction (this includes ghost cells) | ||||||||||||||||||||||||||||
ghostCells | number of ghost cells in the given direction |
|
inline |
Returns the number of segment needed for the MPI_Type
side | an integer from 0 to 5 (inclusive)
| ||||||||||||||||||||||||||||
dimensions | the number of dimension (from 1 to 3) | ||||||||||||||||||||||||||||
numberOfCellsPerDirection | for each direction, list the total number of cells in that direction (this includes ghost cells) |
Computes the 3d coordinates of a linear rank (this is for domain decomposition to know where your CPU is "in space")
rank | the mpi rank |
numberOfProcessors | the number of processors in each direction |
int alsfvm::mpi::cartesian::getRankIndex | ( | const ivec3 & | coordinate, |
const ivec3 & | numberOfProcessors | ||
) |
Computes the rank from the 3d coordinates (this is for domain decomposition to know where your CPU is "in space")
coordinate | the coordinates |
numberOfProcessors | the number of processors in each direction |