#include <TimeStep.h>
Classes | |
class | BlockFunctionWrappper |
class | SharedBlockFunctor |
class | SharedVoidFunctor |
class | VoidFunctionWrappper |
Public Types | |
using | CommunicationStencil_T = typename NeighborsStencil< LatticeModel_T >::type |
using | VoidFunction = std::function< void(const uint_t, const uint_t)> |
using | BlockFunction = std::function< void(IBlock *, const uint_t, const uint_t)> |
using | Stencil = typename LatticeModel_T::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) |
using walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::BlockFunction = std::function<void (IBlock *, const uint_t, const uint_t)> |
using walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::CommunicationStencil_T = typename NeighborsStencil<LatticeModel_T>::type |
using walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::Stencil = typename LatticeModel_T::Stencil |
using walberla::lbm::refinement::TimeStep< LatticeModel_T, Sweep_T, BoundaryHandling_T >::VoidFunction = std::function<void (const uint_t, const uint_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() |
||
) |
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() |
||
) |
|
private |
|
private |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
inline |
|
private |
|
inline |
|
private |
|
inline |
|
private |
|
private |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inlineprivate |
|
inlineprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
static |
|
private |
|
private |
|
private |