#include <PdfRefillingSweep.h>
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_t > | findCorrespondingLatticeDirection (const Vector3< real_t > &direction) |
Vector3< cell_idx_t > | findExtrapolationDirection (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_t > | getNonEquilibriumPdfsInCell (const Cell &cell, lbm::PdfField< LatticeModel_T > &pdfField) |
std::vector< real_t > | getPdfsInCell (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_t > | getAveragePdfs (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_T > | flagInfo_ |
bool | useDataFromGhostLayers_ |
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::flag_t = typename RefillingSweepBase_T::flag_t |
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::PdfField_T = typename RefillingSweepBase_T::PdfField_T |
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::RefillingSweepBase_T = RefillingSweepBase< LatticeModel_T, FlagField_T > |
using walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::Stencil_T = typename RefillingSweepBase_T::Stencil_T |
|
inline |
|
virtualdefault |
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 | ||
) |
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 | ||
) |
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 | ||
) |
Vector3< cell_idx_t > walberla::free_surface::ExtrapolationRefillingSweepBase< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >::findCorrespondingLatticeDirection | ( | const Vector3< real_t > & | direction | ) |
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 | ||
) |
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 | ||
) |
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 | ||
) |
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 | ||
) |
|
pure virtual |
Implements walberla::free_surface::RefillingSweepBase< LatticeModel_T, FlagField_T >.
Implemented in walberla::free_surface::ExtrapolationRefillingSweep< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >, and walberla::free_surface::EquilibriumAndNonEquilibriumRefillingSweep< LatticeModel_T, FlagField_T, ScalarField_T, VectorField_T >.
|
protected |
|
protected |