walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T > Class Template Referenceabstract

#include <PdfRefillingSweep.h>

+ Inheritance diagram for walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >:

Public Types

using RefillingSweepBase_T = RefillingSweepBase< LatticeModel_T, FlagField_T >
 
using PdfField_T = typename RefillingSweepBase_T::PdfField_T
 
using flag_t = typename RefillingSweepBase_T::flag_t
 
using Stencil_T = typename RefillingSweepBase_T::Stencil_T
 
- Public Types inherited from walberla::free_surface::RefillingSweepBase< LatticeModel_T, FlagField_T >
using PdfField_T = lbm::PdfField< LatticeModel_T >
 
using flag_t = typename FlagField_T::flag_t
 
using Stencil_T = typename LatticeModel_T::Stencil
 

Public Member Functions

 ExtrapolationRefillingSweepBase (const BlockDataID &pdfFieldID, const ConstBlockDataID &flagFieldID, const ConstBlockDataID &fillFieldID, const FlagInfo< FlagField_T > &flagInfo, uint_t extrapolationOrder, bool useDataFromGhostLayers)
 
virtual ~ExtrapolationRefillingSweepBase ()=default
 
virtual void operator() (IBlock *const block)=0
 
Vector3< cell_idx_tfindCorrespondingLatticeDirection (const Vector3< real_t > &direction)
 
Vector3< cell_idx_tfindExtrapolationDirection (const Cell &cell, const FlagField_T &flagField, const ScalarField_T &fillField)
 
uint_t getNumberOfExtrapolationCells (const Cell &cell, const FlagField_T &flagField, const PdfField_T &pdfField, const Vector3< cell_idx_t > &extrapolationDirection)
 
std::vector< real_tgetNonEquilibriumPdfsInCell (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField)
 
std::vector< real_tgetPdfsInCell (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField)
 
void applyQuadraticExtrapolation (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField, const Vector3< cell_idx_t > &extrapolationDirection, bool includeThisCell, const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &getPdfFunc)
 
void applyLinearExtrapolation (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField, const Vector3< cell_idx_t > &extrapolationDirection, bool includeThisCell, const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &getPdfFunc)
 
void applyConstantExtrapolation (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField, const Vector3< cell_idx_t > &extrapolationDirection, bool includeThisCell, const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &getPdfFunc)
 
- Public Member Functions inherited from walberla::free_surface::RefillingSweepBase< LatticeModel_T, FlagField_T >
 RefillingSweepBase (const BlockDataID &pdfFieldID, const ConstBlockDataID &flagFieldID, const FlagInfo< FlagField_T > &flagInfo, bool useDataFromGhostLayers)
 
virtual ~RefillingSweepBase ()=default
 
real_t getAverageDensityAndVelocity (const Cell &cell, const PdfField_T &pdfField, const FlagField_T &flagField, const FlagInfo< FlagField_T > &flagInfo, Vector3< real_t > &avgVelocity)
 
real_t getAverageDensityAndVelocity (const Cell &cell, const PdfField_T &pdfField, const FlagField_T &flagField, const FlagInfo< FlagField_T > &flagInfo, Vector3< real_t > &avgVelocity, std::vector< bool > &validStencilIndices)
 
std::vector< real_tgetAveragePdfs (const Cell &cell, const PdfField_T &pdfField, const FlagField_T &flagField, const FlagInfo< FlagField_T > &flagInfo)
 

Protected Attributes

ConstBlockDataID fillFieldID_
 
uint_t extrapolationOrder_
 
- Protected Attributes inherited from walberla::free_surface::RefillingSweepBase< LatticeModel_T, FlagField_T >
BlockDataID pdfFieldID_
 
ConstBlockDataID flagFieldID_
 
FlagInfo< FlagField_TflagInfo_
 
bool useDataFromGhostLayers_
 

Member Typedef Documentation

◆ flag_t

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::flag_t = typename RefillingSweepBase_T::flag_t

◆ PdfField_T

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::PdfField_T = typename RefillingSweepBase_T::PdfField_T

◆ RefillingSweepBase_T

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::RefillingSweepBase_T = RefillingSweepBase< LatticeModel_T, FlagField_T >

◆ Stencil_T

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::Stencil_T = typename RefillingSweepBase_T::Stencil_T

Constructor & Destructor Documentation

◆ ExtrapolationRefillingSweepBase()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::ExtrapolationRefillingSweepBase ( const BlockDataID pdfFieldID,
const ConstBlockDataID flagFieldID,
const ConstBlockDataID fillFieldID,
const FlagInfo< FlagField_T > &  flagInfo,
uint_t  extrapolationOrder,
bool  useDataFromGhostLayers 
)
inline

◆ ~ExtrapolationRefillingSweepBase()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
virtual walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::~ExtrapolationRefillingSweepBase ( )
virtualdefault

Member Function Documentation

◆ applyConstantExtrapolation()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
void walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::applyConstantExtrapolation ( const Cell cell,
lbm::PdfField< LatticeModel_T > &  pdfField,
const Vector3< cell_idx_t > &  extrapolationDirection,
bool  includeThisCell,
const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &  getPdfFunc 
)

◆ applyLinearExtrapolation()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
void walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::applyLinearExtrapolation ( const Cell cell,
lbm::PdfField< LatticeModel_T > &  pdfField,
const Vector3< cell_idx_t > &  extrapolationDirection,
bool  includeThisCell,
const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &  getPdfFunc 
)

◆ applyQuadraticExtrapolation()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
void walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::applyQuadraticExtrapolation ( const Cell cell,
lbm::PdfField< LatticeModel_T > &  pdfField,
const Vector3< cell_idx_t > &  extrapolationDirection,
bool  includeThisCell,
const std::function< std::vector< real_t >(const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) > &  getPdfFunc 
)

◆ findCorrespondingLatticeDirection()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
Vector3< cell_idx_t > walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::findCorrespondingLatticeDirection ( const Vector3< real_t > &  direction)

◆ findExtrapolationDirection()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
Vector3< cell_idx_t > walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::findExtrapolationDirection ( const Cell cell,
const FlagField_T flagField,
const ScalarField_T &  fillField 
)

◆ getNonEquilibriumPdfsInCell()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
std::vector< real_t > walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::getNonEquilibriumPdfsInCell ( const Cell cell,
lbm::PdfField< LatticeModel_T > &  pdfField 
)

◆ getNumberOfExtrapolationCells()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
uint_t walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::getNumberOfExtrapolationCells ( const Cell cell,
const FlagField_T flagField,
const PdfField_T pdfField,
const Vector3< cell_idx_t > &  extrapolationDirection 
)

◆ getPdfsInCell()

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
std::vector< real_t > walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::getPdfsInCell ( const Cell cell,
lbm::PdfField< LatticeModel_T > &  pdfField 
)

◆ operator()()

Member Data Documentation

◆ extrapolationOrder_

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
uint_t walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::extrapolationOrder_
protected

◆ fillFieldID_

template<typename LatticeModel_T , typename FlagField_T , typename ScalarField_T , typename VectorField_T >
ConstBlockDataID walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::fillFieldID_
protected

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