waLBerla 7.3
Loading...
Searching...
No Matches
Sweeper.hpp File Reference

Detailed Description

#include "blockforest/StructuredBlockForest.h"
#include "core/OpenMP.h"
#include "core/cell/all.h"
#include <memory>
#include "./ExecutionTags.hpp"

Classes

class  walberla::v8::sweep::SerialSweeper

Namespaces

namespace  walberla
 Storage for detected contacts which can be used to perform actions for all contacts, e.g.
namespace  walberla::v8
namespace  walberla::v8::sweep

Functions

template<CellFunction Func>
void walberla::v8::sweep::forAllCells (const exectag::Serial &, const CellInterval &ci, Func &&func)
 Single-thread CPU cellwise kernel dispatcher.
template<CellFunction Func>
void walberla::v8::sweep::forAllCells (const exectag::OpenMP &, const CellInterval &ci, Func &&func)
 Multi-threaded CPU cellwise kernel dispatcher using OpenMP.
template<CellFunction Func>
void walberla::v8::sweep::forAllCells (const exectag::GPU &, const CellInterval &, Func &&)
 GPU-accelerated kernel dispatcher.
template<ExecTag XTag, CellFunction Func>
void walberla::v8::sweep::forAllCells (const XTag &exTag, const StructuredBlockForest &blocks, Func &&func)
 Invoke forAllCells on the default per-block cell interval.
void walberla::v8::sweep::sync ()
 Synchronize with concurrent execution on the default stream.
template<ExecTag XTag, CellPairFunction Func>
void walberla::v8::sweep::forAllCellPairs (XTag xtag, const CellInterval &firstCi, const CellInterval &secondCi, Func func)
 Run an operation for every pair of cells in the given intervals.