34#ifndef GridScalingKernelManager_H
35#define GridScalingKernelManager_H
50class CudaMemoryManager;
51class GridScalingFactory;
53struct LBMSimulationParameter;
56 std::function<
void(LBMSimulationParameter *, LBMSimulationParameter *, ICells *, ICellNeigh &,
CUstream_st *
stream)>;
84 throw std::runtime_error(
"The scaling function " +
scalingName +
" was not set!");
#define VF_LOG_WARNING(...)
manage the cuda kernel calls
void runCoarseToFineKernelLB(const int level, InterpolationCells *coarseToFine, ICellNeigh &neighborCoarseToFine, CudaStreamIndex streamIndex) const
calls the device function of the coarse to fine grid interpolation kernel
void runFineToCoarseKernelLB(const int level, InterpolationCells *fineToCoarse, ICellNeigh &neighborFineToCoarse, CudaStreamIndex streamIndex) const
calls the device function of the fine to coarse grid interpolation kernelH
std::shared_ptr< T > SPtr
std::function< void(LBMSimulationParameter *, LBMSimulationParameter *, ICells *, ICellNeigh &, CUstream_st *stream)> gridScaling
stores location of neighboring cell (necessary for refinement into the wall)