walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T > Class Template Reference

#include <TimeStep.h>

Classes

class  BlockFunctionWrappper
 
class  SharedBlockFunctor
 
class  SharedVoidFunctor
 
class  VoidFunctionWrappper
 

Public Types

typedef NeighborsStencil< LatticeModel_T >::type CommunicationStencil_T
 
typedef std::function< void(const uint_t, const uint_t) > VoidFunction
 
typedef std::function< void(IBlock *, const uint_t, const uint_t) > BlockFunction
 
typedef LatticeModel_T::Stencil Stencil
 

Public Member Functions

 TimeStep (weak_ptr< StructuredBlockForest > blocks, shared_ptr< Sweep_T > &sweep, const BlockDataID &pdfFieldId, const BlockDataID &boundaryHandlingId, const Set< SUID > &requiredBlockSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleBlockSelectors=Set< SUID >::emptySet())
 
 TimeStep (weak_ptr< StructuredBlockForest > blocks, shared_ptr< Sweep_T > &sweep, const BlockDataID &pdfFieldId, const BlockDataID &boundaryHandlingId, const shared_ptr< TimeStepPdfPackInfo > &pdfPackInfo, const Set< SUID > &requiredBlockSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleBlockSelectors=Set< SUID >::emptySet())
 
bool asynchronousCommunicationIsUsed () const
 
void asynchronousCommunication (const bool value=true)
 
bool optimizedCommunicationIsUsed () const
 
void optimizeCommunication (const bool value=true)
 
bool equalLevelBorderStreamCorrectionIsPerformed () const
 
void performEqualLevelBorderStreamCorrection (const bool value=true)
 
bool linearExplosionIsPerformed () const
 
void performLinearExplosion (const bool value=true)
 
void deactivateTiming ()
 
void enableTiming (const shared_ptr< WcTimingPool > &timingPool, const shared_ptr< WcTimingPool > &levelwiseTimingPool)
 
void enableTiming ()
 
const shared_ptr< WcTimingPool > & getTimingPool () const
 
const shared_ptr< WcTimingPool > & getLevelWiseTimingPool () const
 
void operator() ()
 
void addPackInfo (const typename blockforest::communication::NonUniformBufferedScheme< CommunicationStencil_T >::PackInfo &packInfo)
 
void addPostCollideVoidFunction (const VoidFunction &function, const std::string &identifier)
 
void addPostCollideBlockFunction (const BlockFunction &function, const std::string &identifier)
 
void addPostCollideVoidFunction (const VoidFunction &function, const std::string &identifier, const uint_t level)
 
void addPostCollideBlockFunction (const BlockFunction &function, const std::string &identifier, const uint_t level)
 
void addPostBoundaryHandlingVoidFunction (const VoidFunction &function, const std::string &identifier)
 
void addPostBoundaryHandlingBlockFunction (const BlockFunction &function, const std::string &identifier)
 
void addPostBoundaryHandlingVoidFunction (const VoidFunction &function, const std::string &identifier, const uint_t level)
 
void addPostBoundaryHandlingBlockFunction (const BlockFunction &function, const std::string &identifier, const uint_t level)
 
void addPostStreamVoidFunction (const VoidFunction &function, const std::string &identifier)
 
void addPostStreamBlockFunction (const BlockFunction &function, const std::string &identifier)
 
void addPostStreamVoidFunction (const VoidFunction &function, const std::string &identifier, const uint_t level)
 
void addPostStreamBlockFunction (const BlockFunction &function, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostCollideVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostCollideBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostCollideVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostCollideBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostBoundaryHandlingVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostBoundaryHandlingBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostBoundaryHandlingVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostBoundaryHandlingBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostStreamVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostStreamBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier)
 
template<typename F >
void addPostStreamVoidFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 
template<typename F >
void addPostStreamBlockFunction (const shared_ptr< F > &functorPtr, const std::string &identifier, const uint_t level)
 

Static Public Attributes

static const uint_t StreamIncludedGhostLayers = 2
 

Private Member Functions

void init (const BlockDataID &pdfFieldId, const BlockDataID &boundaryHandlingId)
 
void consistencyChecks (const BlockDataID &pdfFieldId, const BlockDataID &boundaryHandlingId) const
 
void refresh (const uint_t levels)
 
std::string getTimingPoolString (const std::string &name, const std::string &suffix=std::string("")) const
 
std::string getLevelwiseTimingPoolString (const std::string &name, const uint_t level, const std::string &suffix=std::string("")) const
 
void createTimers (const uint_t levels)
 
template<typename Function >
void addFunction (std::vector< std::vector< std::pair< Function, std::string > > > &functions, const Function &function, const std::string &identifier)
 
template<typename Function >
void addFunction (std::vector< std::vector< std::pair< Function, std::string > > > &functions, const Function &function, const std::string &identifier, const uint_t level)
 
std::vector< Block * > selectedBlocks (const uint_t level) const
 
void startTiming (const std::string &name, const uint_t level, const std::string &suffix=std::string(""))
 
void stopTiming (const std::string &name, const uint_t level, const std::string &suffix=std::string(""))
 
void collide (std::vector< Block * > &blocks, const uint_t level, const uint_t executionCount)
 
void stream (std::vector< Block * > &blocks, const uint_t level, const uint_t executionCount)
 
void finishStream (std::vector< Block * > &blocks, const uint_t level, const uint_t executionCount)
 
void streamCollide (std::vector< Block * > &blocks, const uint_t level, const uint_t executionCount)
 
void startCommunicationEqualLevel (const uint_t level)
 
void endCommunicationEqualLevel (const uint_t level)
 
void startCommunicationCoarseToFine (const uint_t level)
 
void endCommunicationCoarseToFine (const uint_t level)
 
void startCommunicationFineToCoarse (const uint_t level)
 
void endCommunicationFineToCoarse (const uint_t level)
 
void performLinearExplosion (std::vector< Block * > &blocks, const uint_t level)
 
void recursiveStep (const uint_t level, const uint_t executionCount)
 

Private Attributes

weak_ptr< StructuredBlockForest > blocks_
 
shared_ptr< Sweep_T > sweep_
 
BoundaryHandling_T::BlockSweep boundarySweep_
 
BoundaryHandling_T::BlockSweep boundarySweepWithLayers_
 
bool asynchronousCommunication_
 
bool optimizedCommunication_
 
shared_ptr< TimeStepPdfPackInfopdfPackInfo_
 
blockforest::communication::NonUniformBufferedScheme< CommunicationStencil_Tcommunication_
 
bool performEqualLevelBorderStreamCorrection_
 
EqualLevelBorderStreamCorrection< LatticeModel_TequalLevelBorderStreamCorrection_
 
bool performLinearExplosion_
 
LinearExplosion< LatticeModel_T, BoundaryHandling_TlinearExplosion_
 
bool timing_
 
shared_ptr< WcTimingPooltimingPool_
 
shared_ptr< WcTimingPoollevelwiseTimingPool_
 
Set< SUID > requiredBlockSelectors_
 
Set< SUID > incompatibleBlockSelectors_
 
std::vector< std::pair< VoidFunction, std::string > > globalPostCollideVoidFunctions_
 
std::vector< std::pair< BlockFunction, std::string > > globalPostCollideBlockFunctions_
 
std::vector< std::pair< VoidFunction, std::string > > globalPostBoundaryHandlingVoidFunctions_
 
std::vector< std::pair< BlockFunction, std::string > > globalPostBoundaryHandlingBlockFunctions_
 
std::vector< std::pair< VoidFunction, std::string > > globalPostStreamVoidFunctions_
 
std::vector< std::pair< BlockFunction, std::string > > globalPostStreamBlockFunctions_
 
std::vector< std::vector< std::pair< VoidFunction, std::string > > > postCollideVoidFunctions_
 
std::vector< std::vector< std::pair< BlockFunction, std::string > > > postCollideBlockFunctions_
 
std::vector< std::vector< std::pair< VoidFunction, std::string > > > postBoundaryHandlingVoidFunctions_
 
std::vector< std::vector< std::pair< BlockFunction, std::string > > > postBoundaryHandlingBlockFunctions_
 
std::vector< std::vector< std::pair< VoidFunction, std::string > > > postStreamVoidFunctions_
 
std::vector< std::vector< std::pair< BlockFunction, std::string > > > postStreamBlockFunctions_
 

Member Typedef Documentation

template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
typedef std::function< void ( IBlock *, const uint_t, const uint_t ) > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::BlockFunction
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
typedef NeighborsStencil<LatticeModel_T>::type walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::CommunicationStencil_T
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
typedef LatticeModel_T::Stencil walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::Stencil
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
typedef std::function< void ( const uint_t, const uint_t ) > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::VoidFunction

Constructor & Destructor Documentation

template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::TimeStep ( weak_ptr< StructuredBlockForest >  blocks,
shared_ptr< Sweep_T > &  sweep,
const BlockDataID &  pdfFieldId,
const BlockDataID &  boundaryHandlingId,
const Set< SUID > &  requiredBlockSelectors = Set<SUID>::emptySet(),
const Set< SUID > &  incompatibleBlockSelectors = Set<SUID>::emptySet() 
)
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::TimeStep ( weak_ptr< StructuredBlockForest >  blocks,
shared_ptr< Sweep_T > &  sweep,
const BlockDataID &  pdfFieldId,
const BlockDataID &  boundaryHandlingId,
const shared_ptr< TimeStepPdfPackInfo > &  pdfPackInfo,
const Set< SUID > &  requiredBlockSelectors = Set<SUID>::emptySet(),
const Set< SUID > &  incompatibleBlockSelectors = Set<SUID>::emptySet() 
)

Member Function Documentation

template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename Function >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addFunction ( std::vector< std::vector< std::pair< Function, std::string > > > &  functions,
const Function &  function,
const std::string &  identifier 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename Function >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addFunction ( std::vector< std::vector< std::pair< Function, std::string > > > &  functions,
const Function &  function,
const std::string &  identifier,
const uint_t  level 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPackInfo ( const typename blockforest::communication::NonUniformBufferedScheme< CommunicationStencil_T >::PackInfo &  packInfo)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingBlockFunction ( const BlockFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingBlockFunction ( const BlockFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingVoidFunction ( const VoidFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingVoidFunction ( const VoidFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostBoundaryHandlingVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideBlockFunction ( const BlockFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideBlockFunction ( const BlockFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideVoidFunction ( const VoidFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideVoidFunction ( const VoidFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostCollideVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamBlockFunction ( const BlockFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamBlockFunction ( const BlockFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamBlockFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamVoidFunction ( const VoidFunction function,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamVoidFunction ( const VoidFunction function,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
template<typename F >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::addPostStreamVoidFunction ( const shared_ptr< F > &  functorPtr,
const std::string &  identifier,
const uint_t  level 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::asynchronousCommunication ( const bool  value = true)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::asynchronousCommunicationIsUsed ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::collide ( std::vector< Block * > &  blocks,
const uint_t  level,
const uint_t  executionCount 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::consistencyChecks ( const BlockDataID &  pdfFieldId,
const BlockDataID &  boundaryHandlingId 
) const
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::createTimers ( const uint_t  levels)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::deactivateTiming ( )
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::enableTiming ( const shared_ptr< WcTimingPool > &  timingPool,
const shared_ptr< WcTimingPool > &  levelwiseTimingPool 
)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::enableTiming ( )
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::endCommunicationCoarseToFine ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::endCommunicationEqualLevel ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::endCommunicationFineToCoarse ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::equalLevelBorderStreamCorrectionIsPerformed ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::finishStream ( std::vector< Block * > &  blocks,
const uint_t  level,
const uint_t  executionCount 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
const shared_ptr<WcTimingPool>& walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::getLevelWiseTimingPool ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::string walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::getLevelwiseTimingPoolString ( const std::string &  name,
const uint_t  level,
const std::string &  suffix = std::string("") 
) const
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
const shared_ptr<WcTimingPool>& walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::getTimingPool ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::string walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::getTimingPoolString ( const std::string &  name,
const std::string &  suffix = std::string("") 
) const
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::init ( const BlockDataID &  pdfFieldId,
const BlockDataID &  boundaryHandlingId 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::linearExplosionIsPerformed ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::operator() ( )
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::optimizeCommunication ( const bool  value = true)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::optimizedCommunicationIsUsed ( ) const
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::performEqualLevelBorderStreamCorrection ( const bool  value = true)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::performLinearExplosion ( const bool  value = true)
inline
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::performLinearExplosion ( std::vector< Block * > &  blocks,
const uint_t  level 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::recursiveStep ( const uint_t  level,
const uint_t  executionCount 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::refresh ( const uint_t  levels)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< Block * > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::selectedBlocks ( const uint_t  level) const
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::startCommunicationCoarseToFine ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::startCommunicationEqualLevel ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::startCommunicationFineToCoarse ( const uint_t  level)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::startTiming ( const std::string &  name,
const uint_t  level,
const std::string &  suffix = std::string("") 
)
inlineprivate
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::stopTiming ( const std::string &  name,
const uint_t  level,
const std::string &  suffix = std::string("") 
)
inlineprivate
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::stream ( std::vector< Block * > &  blocks,
const uint_t  level,
const uint_t  executionCount 
)
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
void walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::streamCollide ( std::vector< Block * > &  blocks,
const uint_t  level,
const uint_t  executionCount 
)
private

Member Data Documentation

template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::asynchronousCommunication_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
weak_ptr< StructuredBlockForest > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::blocks_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
BoundaryHandling_T::BlockSweep walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::boundarySweep_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
BoundaryHandling_T::BlockSweep walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::boundarySweepWithLayers_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
blockforest::communication::NonUniformBufferedScheme< CommunicationStencil_T > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::communication_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
EqualLevelBorderStreamCorrection< LatticeModel_T > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::equalLevelBorderStreamCorrection_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< BlockFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostBoundaryHandlingBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< VoidFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostBoundaryHandlingVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< BlockFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostCollideBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< VoidFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostCollideVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< BlockFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostStreamBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::pair< VoidFunction, std::string > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::globalPostStreamVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
Set<SUID> walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::incompatibleBlockSelectors_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
shared_ptr<WcTimingPool> walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::levelwiseTimingPool_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
LinearExplosion< LatticeModel_T, BoundaryHandling_T > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::linearExplosion_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::optimizedCommunication_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
shared_ptr< TimeStepPdfPackInfo > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::pdfPackInfo_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::performEqualLevelBorderStreamCorrection_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::performLinearExplosion_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< BlockFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postBoundaryHandlingBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< VoidFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postBoundaryHandlingVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< BlockFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postCollideBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< VoidFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postCollideVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< BlockFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postStreamBlockFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
std::vector< std::vector< std::pair< VoidFunction, std::string > > > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::postStreamVoidFunctions_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
Set<SUID> walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::requiredBlockSelectors_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
const uint_t walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::StreamIncludedGhostLayers = 2
static
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
shared_ptr< Sweep_T > walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::sweep_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
bool walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::timing_
private
template<typename LatticeModel_T , typename Sweep_T , typename BoundaryHandling_T >
shared_ptr<WcTimingPool> walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::timingPool_
private

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