53class BoundaryConditionKernelManager;
54class GridScalingKernelManager;
56class BoundaryConditionFactory;
57class GridScalingFactory;
58class TurbulenceModelFactory;
59class TurbulenceModelManager;
75 void collisionAllNodes(
int level,
unsigned int t);
78 void postCollisionBC(
int level,
unsigned int t);
79 void preCollisionBC(
int level,
unsigned int t);
85 void prepareExchangeMultiGPUAfterFtoC(
int level,
CudaStreamIndex streamIndex);
89 void exchangeMultiGPU_noStreams_withPrepare(
int level,
bool useReducedComm);
91 void swapBetweenEvenAndOddTimestep(
int level);
93 void calcMacroscopicQuantities(
int level);
94 void calcTurbulentViscosity(
int level);
95 void interact(
int level,
unsigned int t);
96 void sample(
int level,
unsigned int t);
117 std::vector<SPtr<Kernel>> kernels;
118 std::vector<std::shared_ptr<AdvectionDiffusionKernel>> kernelsAD;
120 std::shared_ptr<BoundaryConditionKernelManager> bcKernelManager;
122 std::shared_ptr<GridScalingKernelManager> gridScalingKernelManager;
124 std::shared_ptr<TurbulenceModelManager> tmManager;
Version of collision: for multi-gpu simulations, without communication hiding ("streams"),...
Version of collision: for multi-gpu simulations, without communication hiding ("streams"),...
Version of collision: for multi-gpu simulations, with communication hiding ("streams"),...
Version of refinement: for uniform simulations (no grid refinement)
Class for LBM-parameter management.
Version of refinement: for single-gpu simulations.
Version of refinement: for multi-gpu simulations, without communication hiding ("streams"),...
Version of refinement: for multi-gpu simulations, without communication hiding ("streams"),...
Version of refinement: for multi-gpu simulations, with communication hiding ("streams"),...
Version of refinement: for multi-gpu simulations, with communication hiding ("streams"),...
void updateGrid(int level, unsigned int t)
void exchangeData(int level)
friend class CollisionAndExchange_noStreams_withReadWriteFlags
An abstract class for communication between processes in parallel computation.
std::shared_ptr< T > SPtr
CollisionTemplate
An enumeration for selecting a template of the collision kernel (CumulantK17)
std::function< void(UpdateGrid27 *updateGrid, Parameter *para, int level, unsigned int t)> CollisionStrategy
std::function< void(UpdateGrid27 *updateGrid, Parameter *para, int level)> RefinementStrategy
stores location of neighboring cell (necessary for refinement into the wall)