ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
walberla::lbm::DynamicUBBDoublePrecisionCUDA Class Reference

#include <DynamicUBBDoublePrecisionCUDA.h>

+ Collaboration diagram for walberla::lbm::DynamicUBBDoublePrecisionCUDA:

Classes

struct  ForceStruct
 
class  ForceVector
 
struct  IndexInfo
 
class  IndexVectors
 

Public Member Functions

 DynamicUBBDoublePrecisionCUDA (const std::shared_ptr< StructuredBlockForest > &blocks, BlockDataID pdfsID_, std::function< Vector3< double >(const Cell &, const shared_ptr< StructuredBlockForest > &, IBlock &)> &velocityCallbackDynamicUBBDoublePrecisionCUDA)
 
void run (IBlock *block, gpuStream_t stream=nullptr)
 
void operator() (IBlock *block, gpuStream_t stream=nullptr)
 
void inner (IBlock *block, gpuStream_t stream=nullptr)
 
void outer (IBlock *block, gpuStream_t stream=nullptr)
 
Vector3< doublegetForce (IBlock *block)
 
std::function< void(IBlock *)> getSweep (gpuStream_t stream=nullptr)
 
std::function< void(IBlock *)> getInnerSweep (gpuStream_t stream=nullptr)
 
std::function< void(IBlock *)> getOuterSweep (gpuStream_t stream=nullptr)
 
template<typename FlagField_T >
void fillFromFlagField (const std::shared_ptr< StructuredBlockForest > &blocks, ConstBlockDataID flagFieldID, FlagUID boundaryFlagUID, FlagUID domainFlagUID)
 
template<typename FlagField_T >
void fillFromFlagField (const shared_ptr< StructuredBlockForest > &blocks, IBlock *block, ConstBlockDataID flagFieldID, FlagUID boundaryFlagUID, FlagUID domainFlagUID)
 
auto constgetForceVector (IBlock const *block) const
 
auto constgetIndexVector (IBlock const *block) const
 
BlockDataID getIndexVectorID () const
 
BlockDataID getForceVectorID () const
 

Public Attributes

BlockDataID pdfsID
 

Static Public Attributes

static constexpr std::array< std::array< int, 19u >, 3uneighborOffset
 

Detailed Description

Definition at line 75 of file DynamicUBBDoublePrecisionCUDA.h.

Constructor & Destructor Documentation

◆ DynamicUBBDoublePrecisionCUDA()

walberla::lbm::DynamicUBBDoublePrecisionCUDA::DynamicUBBDoublePrecisionCUDA ( const std::shared_ptr< StructuredBlockForest > &  blocks,
BlockDataID  pdfsID_,
std::function< Vector3< double >(const Cell &, const shared_ptr< StructuredBlockForest > &, IBlock &)> &  velocityCallbackDynamicUBBDoublePrecisionCUDA 
)
inline

Definition at line 219 of file DynamicUBBDoublePrecisionCUDA.h.

References stream.

Member Function Documentation

◆ fillFromFlagField() [1/2]

◆ fillFromFlagField() [2/2]

template<typename FlagField_T >
void walberla::lbm::DynamicUBBDoublePrecisionCUDA::fillFromFlagField ( const std::shared_ptr< StructuredBlockForest > &  blocks,
ConstBlockDataID  flagFieldID,
FlagUID  boundaryFlagUID,
FlagUID  domainFlagUID 
)
inline

Definition at line 268 of file DynamicUBBDoublePrecisionCUDA.h.

References block(), and stream.

◆ getForce()

Vector3< double > walberla::lbm::DynamicUBBDoublePrecisionCUDA::getForce ( IBlock *  block)
inline

◆ getForceVector()

auto const & walberla::lbm::DynamicUBBDoublePrecisionCUDA::getForceVector ( IBlock const block) const
inline

◆ getForceVectorID()

BlockDataID walberla::lbm::DynamicUBBDoublePrecisionCUDA::getForceVectorID ( ) const
inline

Definition at line 734 of file DynamicUBBDoublePrecisionCUDA.h.

◆ getIndexVector()

auto const & walberla::lbm::DynamicUBBDoublePrecisionCUDA::getIndexVector ( IBlock const block) const
inline

◆ getIndexVectorID()

BlockDataID walberla::lbm::DynamicUBBDoublePrecisionCUDA::getIndexVectorID ( ) const
inline

Definition at line 733 of file DynamicUBBDoublePrecisionCUDA.h.

◆ getInnerSweep()

std::function< void(IBlock *)> walberla::lbm::DynamicUBBDoublePrecisionCUDA::getInnerSweep ( gpuStream_t  stream = nullptr)
inline

Definition at line 259 of file DynamicUBBDoublePrecisionCUDA.h.

References inner(), and stream.

◆ getOuterSweep()

std::function< void(IBlock *)> walberla::lbm::DynamicUBBDoublePrecisionCUDA::getOuterSweep ( gpuStream_t  stream = nullptr)
inline

Definition at line 263 of file DynamicUBBDoublePrecisionCUDA.h.

References outer(), and stream.

◆ getSweep()

std::function< void(IBlock *)> walberla::lbm::DynamicUBBDoublePrecisionCUDA::getSweep ( gpuStream_t  stream = nullptr)
inline

Definition at line 255 of file DynamicUBBDoublePrecisionCUDA.h.

References run(), and stream.

◆ inner()

void walberla::lbm::DynamicUBBDoublePrecisionCUDA::inner ( IBlock *  block,
gpuStream_t  stream = nullptr 
)

◆ operator()()

void walberla::lbm::DynamicUBBDoublePrecisionCUDA::operator() ( IBlock *  block,
gpuStream_t  stream = nullptr 
)
inline

Definition at line 240 of file DynamicUBBDoublePrecisionCUDA.h.

References block(), run(), and stream.

◆ outer()

void walberla::lbm::DynamicUBBDoublePrecisionCUDA::outer ( IBlock *  block,
gpuStream_t  stream = nullptr 
)

◆ run()

void walberla::lbm::DynamicUBBDoublePrecisionCUDA::run ( IBlock *  block,
gpuStream_t  stream = nullptr 
)

Member Data Documentation

◆ neighborOffset

constexpr std::array<std::array<int, 19u>, 3u> walberla::lbm::DynamicUBBDoublePrecisionCUDA::neighborOffset
staticconstexpr
Initial value:
= {{
{0, 0, 0, -1, 1, 0, 0, -1, 1, -1, 1, 0, 0, -1, 1, 0, 0, -1, 1},
{0, 1, -1, 0, 0, 0, 0, 1, 1, -1, -1, 1, -1, 0, 0, 1, -1, 0, 0},
{0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 1, 1, 1, 1, -1, -1, -1, -1},
}}

Definition at line 717 of file DynamicUBBDoublePrecisionCUDA.h.

◆ pdfsID

BlockDataID walberla::lbm::DynamicUBBDoublePrecisionCUDA::pdfsID

Definition at line 737 of file DynamicUBBDoublePrecisionCUDA.h.


The documentation for this class was generated from the following files: