walberla::lbm::internal::PdfFieldHandling< LatticeModel_T > Class Template Reference

#include <AddToStorage.h>

+ Inheritance diagram for walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >:

Public Types

using PdfField_T = PdfField< LatticeModel_T >
 
using Base_T = field::BlockDataHandling< PdfField_T, LatticeModel_T::Stencil::D==2 >
 
- Public Types inherited from walberla::field::BlockDataHandling< PdfField< LatticeModel_T >, LatticeModel_T::Stencil::D==2 >
using Value_T = typename PdfField< LatticeModel_T > ::value_type
 
using InitializationFunction_T = std::function< void(PdfField< LatticeModel_T > *, IBlock *const)>
 
- Public Types inherited from walberla::domain_decomposition::BlockDataHandling< PdfField< LatticeModel_T > >
using value_type = PdfField< LatticeModel_T >
 

Public Member Functions

 PdfFieldHandling (const weak_ptr< StructuredBlockStorage > &blocks, const LatticeModel_T &latticeModel, const bool _initialize, const Vector3< real_t > &initialVelocity, const real_t initialDensity, const uint_t nrOfGhostLayers, const field::Layout &layout, const shared_ptr< field::FieldAllocator< real_t > > alloc=nullptr)
 
void serialize (IBlock *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe ! More...
 
void serializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer, const uint_t child) override
 must be thread-safe ! More...
 
void serializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe ! More...
 
void deserialize (IBlock *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
 must be thread-safe ! More...
 
void deserializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
 must be thread-safe ! More...
 
void deserializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer, const uint_t child) override
 must be thread-safe ! More...
 
- Public Member Functions inherited from walberla::field::BlockDataHandling< PdfField< LatticeModel_T >, LatticeModel_T::Stencil::D==2 >
 ~BlockDataHandling () override=default
 
void addInitializationFunction (const InitializationFunction_T &initFunction)
 
PdfField< LatticeModel_T > * initialize (IBlock *const block) override
 must be thread-safe ! More...
 
void serialize (IBlock *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe ! More...
 
void serializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer, const uint_t child) override
 must be thread-safe ! More...
 
void serializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe ! More...
 
PdfField< LatticeModel_T > * deserialize (IBlock *const block) override
 must be thread-safe ! More...
 
void deserialize (IBlock *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
 must be thread-safe ! More...
 
PdfField< LatticeModel_T > * deserializeCoarseToFine (Block *const block) override
 must be thread-safe ! More...
 
void deserializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
 must be thread-safe ! More...
 
PdfField< LatticeModel_T > * deserializeFineToCoarse (Block *const block) override
 must be thread-safe ! More...
 
void deserializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer, const uint_t child) override
 must be thread-safe ! More...
 

Protected Member Functions

PdfField< LatticeModel_T > * allocate (IBlock *const block) override
 must be thread-safe ! More...
 
PdfField< LatticeModel_T > * reallocate (IBlock *const block) override
 must be thread-safe ! More...
 
- Protected Member Functions inherited from walberla::field::BlockDataHandling< PdfField< LatticeModel_T >, LatticeModel_T::Stencil::D==2 >
void sizeCheck (const uint_t xSize, const uint_t ySize, const uint_t zSize)
 

Private Member Functions

void packLatticeModel (IBlock *const block, const BlockDataID &id, mpi::SendBuffer &buffer) const
 
void unpackLatticeModel (IBlock *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) const
 
PdfField< LatticeModel_T > * allocateDispatch (IBlock *const block, const bool _initialize, const real_t initialDensity)
 

Private Attributes

weak_ptr< StructuredBlockStorageblocks_
 
LatticeModel_T latticeModel_
 
bool initialize_
 
Vector3< real_tinitialVelocity_
 
real_t initialDensity_
 
uint_t nrOfGhostLayers_
 
field::Layout layout_
 
shared_ptr< field::FieldAllocator< real_t > > alloc_
 

Additional Inherited Members

- Protected Attributes inherited from walberla::field::BlockDataHandling< PdfField< LatticeModel_T >, LatticeModel_T::Stencil::D==2 >
InitializationFunction_T initFunction_
 

Member Typedef Documentation

◆ Base_T

template<typename LatticeModel_T >
using walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::Base_T = field::BlockDataHandling<PdfField_T, LatticeModel_T::Stencil::D == 2>

◆ PdfField_T

Constructor & Destructor Documentation

◆ PdfFieldHandling()

template<typename LatticeModel_T >
walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::PdfFieldHandling ( const weak_ptr< StructuredBlockStorage > &  blocks,
const LatticeModel_T latticeModel,
const bool  _initialize,
const Vector3< real_t > &  initialVelocity,
const real_t  initialDensity,
const uint_t  nrOfGhostLayers,
const field::Layout layout,
const shared_ptr< field::FieldAllocator< real_t > >  alloc = nullptr 
)
inline

Member Function Documentation

◆ allocate()

template<typename LatticeModel_T >
PdfField<LatticeModel_T>* walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::allocate ( IBlock *const  block)
inlineoverrideprotectedvirtual

◆ allocateDispatch()

template<typename LatticeModel_T >
PdfField<LatticeModel_T>* walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::allocateDispatch ( IBlock *const  block,
const bool  _initialize,
const real_t  initialDensity 
)
inlineprivate

◆ deserialize()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::deserialize ( IBlock *const  block,
const BlockDataID id,
mpi::RecvBuffer buffer 
)
inlineoverridevirtual

◆ deserializeCoarseToFine()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::deserializeCoarseToFine ( Block *const  block,
const BlockDataID id,
mpi::RecvBuffer buffer 
)
inlineoverridevirtual

◆ deserializeFineToCoarse()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::deserializeFineToCoarse ( Block *const  block,
const BlockDataID id,
mpi::RecvBuffer buffer,
const uint_t  child 
)
inlineoverridevirtual

◆ packLatticeModel()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::packLatticeModel ( IBlock *const  block,
const BlockDataID id,
mpi::SendBuffer buffer 
) const
inlineprivate

◆ reallocate()

template<typename LatticeModel_T >
PdfField<LatticeModel_T>* walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::reallocate ( IBlock *const  block)
inlineoverrideprotectedvirtual

◆ serialize()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::serialize ( IBlock *const  block,
const BlockDataID id,
mpi::SendBuffer buffer 
)
inlineoverridevirtual

◆ serializeCoarseToFine()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::serializeCoarseToFine ( Block *const  block,
const BlockDataID id,
mpi::SendBuffer buffer,
const uint_t  child 
)
inlineoverridevirtual

◆ serializeFineToCoarse()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::serializeFineToCoarse ( Block *const  block,
const BlockDataID id,
mpi::SendBuffer buffer 
)
inlineoverridevirtual

◆ unpackLatticeModel()

template<typename LatticeModel_T >
void walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::unpackLatticeModel ( IBlock *const  block,
const BlockDataID id,
mpi::RecvBuffer buffer 
) const
inlineprivate

Member Data Documentation

◆ alloc_

template<typename LatticeModel_T >
shared_ptr< field::FieldAllocator<real_t> > walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::alloc_
private

◆ blocks_

template<typename LatticeModel_T >
weak_ptr< StructuredBlockStorage > walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::blocks_
private

◆ initialDensity_

template<typename LatticeModel_T >
real_t walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::initialDensity_
private

◆ initialize_

template<typename LatticeModel_T >
bool walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::initialize_
private

◆ initialVelocity_

template<typename LatticeModel_T >
Vector3< real_t > walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::initialVelocity_
private

◆ latticeModel_

template<typename LatticeModel_T >
LatticeModel_T walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::latticeModel_
private

◆ layout_

template<typename LatticeModel_T >
field::Layout walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::layout_
private

◆ nrOfGhostLayers_

template<typename LatticeModel_T >
uint_t walberla::lbm::internal::PdfFieldHandling< LatticeModel_T >::nrOfGhostLayers_
private

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