|
VirtualFluids 0.2.0
Parallel CFD LBM Solver
|
Split the interpolation cells into two groups: cells which are at the border between gpus and therefore involved in the communication between gpus, and cells which are not directly related to the communication between gpus. More...
#include <InterpolationCellGrouper.h>
Public Member Functions | |
| InterpolationCellGrouper (const LBMSimulationParameters &parHs, const LBMSimulationParameters &parDs, SPtr< GridBuilder > builder) | |
| void | splitCoarseToFineIntoBorderAndBulk (uint level) const |
| Split the interpolation cells from coarse to fine into border an bulk. | |
| void | splitFineToCoarseIntoBorderAndBulk (uint level) const |
| Split the interpolation cells from fine to coarse into border an bulk. | |
Protected Member Functions | |
| void | reorderCoarseToFineIntoBorderAndBulk (uint level) const |
| This function reorders the arrays of CFC/CFF indices and sets the pointers and sizes of the new subarrays: | |
| void | reorderFineToCoarseIntoBorderAndBulk (uint level) const |
| This function reorders the arrays of FCC/FCF indices and return pointers and sizes of the new subarrays: | |
Split the interpolation cells into two groups: cells which are at the border between gpus and therefore involved in the communication between gpus, and cells which are not directly related to the communication between gpus.
See [master thesis of Anna Wellmann]
Definition at line 54 of file InterpolationCellGrouper.h.
| vf::gpu::InterpolationCellGrouper::InterpolationCellGrouper | ( | const LBMSimulationParameters & | parHs, |
| const LBMSimulationParameters & | parDs, | ||
| SPtr< GridBuilder > | builder | ||
| ) |
Definition at line 42 of file InterpolationCellGrouper.cpp.
|
protected |
This function reorders the arrays of CFC/CFF indices and sets the pointers and sizes of the new subarrays:
The coarse cells for interpolation from coarse to fine (coarseToFineCoarse) are divided into two subgroups: border and bulk. The fine cells (coarseToFineFine) are reordered accordingly. The offset cells (xOffCF, yOffCF, zOffCF) must be reordered in the same way.
Definition at line 141 of file InterpolationCellGrouper.cpp.
|
protected |
This function reorders the arrays of FCC/FCF indices and return pointers and sizes of the new subarrays:
The coarse cells for interpolation from fine to coarse (fineToCoarseCoarse) are divided into two subgroups: border and bulk. The fine cells (fineToCoarseFine) are reordered accordingly. The offset cells (xOffFC, yOffFC, zOffFC) must be reordered in the same way.
Definition at line 63 of file InterpolationCellGrouper.cpp.
Split the interpolation cells from coarse to fine into border an bulk.
For communication hiding, the interpolation cells from the coarse to the fine grid need to be split into two groups:
see [master thesis of Anna Wellmann (p. 62-68: "Überdeckung der reduzierten Kommunikation")]
Definition at line 126 of file InterpolationCellGrouper.cpp.
Split the interpolation cells from fine to coarse into border an bulk.
For communication hiding, the interpolation cells from the fine to the coarse grid need to be split into two groups:
See [master thesis of Anna Wellmann (p. 62-68: "Überdeckung der reduzierten Kommunikation")]
Definition at line 48 of file InterpolationCellGrouper.cpp.