walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation > Class Template Reference

#include <ActiveCellSweep.h>

+ Inheritance diagram for walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >:

Public Types

using PdfField_T = typename FlagFieldSweepBase< LatticeModel_T, FlagField_T >::PdfField_T
 

Public Member Functions

 ActiveCellSweep (const CellOperation &op, const BlockDataID &pdfField, const ConstBlockDataID &flagField, const Set< FlagUID > &lbmMask, const bool _useIterators=false)
 
 ActiveCellSweep (const CellOperation &op, const BlockDataID &src, const BlockDataID &dst, const ConstBlockDataID &flagField, const Set< FlagUID > &lbmMask, const bool _useIterators=false)
 
virtual ~ActiveCellSweep ()=default
 
const CellOperation & getCellOperation () const
 
CellOperation & getCellOperation ()
 
bool usesIterators () const
 
void useIterators (const bool _useIterators)
 
void operator() (IBlock *const block)
 

Private Member Functions

void itLoop (typename PdfField_T::iterator &srcIter, typename PdfField_T::iterator &dstIter, typename FlagField_T::const_iterator &flgIter, const typename FlagField_T::flag_t &lbm)
 
- Private Member Functions inherited from walberla::lbm::FlagFieldSweepBase< LatticeModel_T, FlagField_T >
 FlagFieldSweepBase (const BlockDataID &pdfField, const ConstBlockDataID &flagField, const Set< FlagUID > &lbmMask)
 
 FlagFieldSweepBase (const BlockDataID &src, const BlockDataID &dst, const ConstBlockDataID &flagField, const Set< FlagUID > &lbmMask)
 
void getFields (IBlock *const block, PdfField_T *&src, PdfField_T *&dst, const FlagField_T *&flags)
 
void getFields (IBlock *const block, PdfField_T *&src, const FlagField_T *&flags)
 
flag_t getLbmMaskAndFields (IBlock *const block, PdfField_T *&src, PdfField_T *&dst, const FlagField_T *&flags)
 
flag_t getLbmMaskAndFields (IBlock *const block, PdfField_T *&src, const FlagField_T *&flags)
 
- Private Member Functions inherited from walberla::lbm::SweepBase< LatticeModel_T >
 SweepBase (const BlockDataID &pdfField, const walberla::field::DefaultEvaluationFilter &_filter=walberla::field::DefaultEvaluationFilter(), const DefaultDensityEquilibriumVelocityCalculation &_densityVelocityIn=DefaultDensityEquilibriumVelocityCalculation(), const DefaultDensityVelocityCallback &_densityVelocityOut=DefaultDensityVelocityCallback())
 
 SweepBase (const BlockDataID &src, const BlockDataID &dst, const walberla::field::DefaultEvaluationFilter &_filter=walberla::field::DefaultEvaluationFilter(), const DefaultDensityEquilibriumVelocityCalculation &_densityVelocityIn=DefaultDensityEquilibriumVelocityCalculation(), const DefaultDensityVelocityCallback &_densityVelocityOut=DefaultDensityVelocityCallback())
 
virtual ~SweepBase ()
 
void filter (IBlock &block)
 
bool filter (const cell_idx_t x, const cell_idx_t y, const cell_idx_t z) const
 
void densityVelocityIn (IBlock &block)
 
real_t densityVelocityIn (Vector3< real_t > &velocity, const PdfField_T *const field, const cell_idx_t x, const cell_idx_t y, const cell_idx_t z)
 
void densityVelocityOut (IBlock &block)
 
void densityVelocityOut (const cell_idx_t x, const cell_idx_t y, const cell_idx_t z, const LatticeModel_T &lm, const Vector3< real_t > &velocity, const real_t rho)
 
PdfField_TgetSrcField (IBlock *const block) const
 
PdfField_TgetDstField (IBlock *const block, PdfField_T *const src)
 
void getFields (IBlock *const block, PdfField_T *&src, PdfField_T *&dst)
 

Private Attributes

CellOperation cellOperation_
 
bool useIterators_
 
- Private Attributes inherited from walberla::lbm::FlagFieldSweepBase< LatticeModel_T, FlagField_T >
const ConstBlockDataID flagField_
 
const Set< FlagUID > lbmMask_
 
- Private Attributes inherited from walberla::lbm::SweepBase< LatticeModel_T >
const BlockDataID src_
 
const bool dstFromBlockData_
 
const BlockDataID dst_
 
std::set< PdfField_T *, field::SwapableCompare< PdfField_T * > > dstFields_
 
walberla::field::DefaultEvaluationFilter filter_
 
DefaultDensityEquilibriumVelocityCalculation densityVelocityIn_
 
DefaultDensityVelocityCallback densityVelocityOut_
 

Additional Inherited Members

- Private Types inherited from walberla::lbm::FlagFieldSweepBase< LatticeModel_T, FlagField_T >
using PdfField_T = typename SweepBase< LatticeModel_T >::PdfField_T
 
using flag_t = typename FlagField_T::flag_t
 
- Private Types inherited from walberla::lbm::SweepBase< LatticeModel_T >
using PdfField_T = PdfField< LatticeModel_T >
 

Member Typedef Documentation

◆ PdfField_T

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
using walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::PdfField_T = typename FlagFieldSweepBase<LatticeModel_T, FlagField_T>::PdfField_T

Constructor & Destructor Documentation

◆ ActiveCellSweep() [1/2]

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::ActiveCellSweep ( const CellOperation &  op,
const BlockDataID pdfField,
const ConstBlockDataID flagField,
const Set< FlagUID > &  lbmMask,
const bool  _useIterators = false 
)
inline

◆ ActiveCellSweep() [2/2]

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::ActiveCellSweep ( const CellOperation &  op,
const BlockDataID src,
const BlockDataID dst,
const ConstBlockDataID flagField,
const Set< FlagUID > &  lbmMask,
const bool  _useIterators = false 
)
inline

◆ ~ActiveCellSweep()

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
virtual walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::~ActiveCellSweep ( )
virtualdefault

Member Function Documentation

◆ getCellOperation() [1/2]

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
CellOperation& walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::getCellOperation ( )
inline

◆ getCellOperation() [2/2]

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
const CellOperation& walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::getCellOperation ( ) const
inline

◆ itLoop()

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
void walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::itLoop ( typename PdfField_T::iterator srcIter,
typename PdfField_T::iterator dstIter,
typename FlagField_T::const_iterator flgIter,
const typename FlagField_T::flag_t lbm 
)
inlineprivate

◆ operator()()

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
void walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::operator() ( IBlock *const  block)

◆ useIterators()

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
void walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::useIterators ( const bool  _useIterators)
inline

◆ usesIterators()

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
bool walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::usesIterators ( ) const
inline

Member Data Documentation

◆ cellOperation_

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
CellOperation walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::cellOperation_
private

◆ useIterators_

template<typename LatticeModel_T , typename FlagField_T , typename CellOperation >
bool walberla::lbm::ActiveCellSweep< LatticeModel_T, FlagField_T, CellOperation >::useIterators_
private

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