waLBerla 7.3
Loading...
Searching...
No Matches
walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T > Class Template Reference

#include <Permeability.h>

Public Types

using PdfField = PdfField_T
using BoundaryHandling = BoundaryHandling_T
using LatticeModel = typename PdfField_T::LatticeModel
using FlagField = typename BoundaryHandling_T::FlagField
using flag_t = typename FlagField::flag_t

Public Member Functions

 Permeability (real_t viscosity, const BlockDataID &pdfFieldId, const BlockDataID &boundaryHandlingId, const FlagUID &fluid, const shared_ptr< blockforest::StructuredBlockForest > blocks)
void init (const Config::BlockHandle &config)
 Initializes the permeability evaluation with the parameters given in the config file.
void init (const AABB &sampleVolume, uint_t flowAxis, uint_t calcFrequency, real_t convCrit=real_t(1.0E-20))
 Initializes the permeability evaluation with the given set of parameters.
void init (const CellInterval &sampleVolume, uint_t flowAxis, uint_t calcFrequency, real_t convCrit=real_t(1.0E-20))
 Initializes the permeability evaluation with the given set of parameters.
real_t convCriterion () const
real_t currentDelta () const
real_t currentValue () const
bool hasConverged () const
void operator() ()
 Main evaluation procedure.

Private Member Functions

void initSampleVolume ()

Private Attributes

const real_t nu_
const BlockDataIDpdfFieldId_
const BlockDataIDboundaryHandlingId_
const FlagUID & fluid_
const shared_ptr< StructuredBlockForestblocks_
uint_t time_
uint_t numSampleFluidNodes_
uint_t numC0FluidNodes_
uint_t numC1FluidNodes_
uint_t flowAxis_
uint_t interval_
CellInterval sampleVolume_
CellInterval c0_
CellInterval c1_
real_t delta_
real_t convCrit_
real_t lastU_
real_t k_
bool initialized_

Member Typedef Documentation

◆ BoundaryHandling

◆ flag_t

◆ FlagField

◆ LatticeModel

◆ PdfField

Constructor & Destructor Documentation

◆ Permeability()

template<typename PdfField_T, typename BoundaryHandling_T>
walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::Permeability ( real_t viscosity,
const BlockDataID & pdfFieldId,
const BlockDataID & boundaryHandlingId,
const FlagUID & fluid,
const shared_ptr< blockforest::StructuredBlockForest > blocks )

Member Function Documentation

◆ convCriterion()

template<typename PdfField_T, typename BoundaryHandling_T>
real_t walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::convCriterion ( ) const
inline

◆ currentDelta()

template<typename PdfField_T, typename BoundaryHandling_T>
real_t walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::currentDelta ( ) const
inline

◆ currentValue()

template<typename PdfField_T, typename BoundaryHandling_T>
real_t walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::currentValue ( ) const
inline

◆ hasConverged()

template<typename PdfField_T, typename BoundaryHandling_T>
bool walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::hasConverged ( ) const
inline

◆ init() [1/3]

template<typename PdfField_T, typename BoundaryHandling_T>
void walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::init ( const AABB & sampleVolume,
uint_t flowAxis,
uint_t calcFrequency,
real_t convCrit = real_t(1.0E-20) )

Initializes the permeability evaluation with the given set of parameters.

Parameters
sampleVolumeThe volume to be considered during permeability evaluation.
flowAxisThe flow axis (0 = x-axis, 1 = y-axis, 2 = z-axis) along which the permeability is evaluated.
calcFrequencyThe frequency (in time steps) in which the permeability is evaluated.
convCritThe delta value (du/dt) at which the flow is considered to have reached steady state.

◆ init() [2/3]

template<typename PdfField_T, typename BoundaryHandling_T>
void walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::init ( const CellInterval & sampleVolume,
uint_t flowAxis,
uint_t calcFrequency,
real_t convCrit = real_t(1.0E-20) )

Initializes the permeability evaluation with the given set of parameters.

Parameters
sampleVolumeThe global cell interval to be considered during permeability evaluation.
flowAxisThe flow axis (0 = x-axis, 1 = y-axis, 2 = z-axis) along which the permeability is evaluated.
calcFrequencyThe frequency (in time steps) in which the permeability is evaluated.
convCritThe delta value (du/dt) at which the flow is considered to have reached steady state.

◆ init() [3/3]

Initializes the permeability evaluation with the parameters given in the config file.

Configuration block:

<some_name>
{
sampleVolume [<0, 0, 0> , <100, 100, 100>]; [optional, default = domain]
flowAxis 2; [required, 0-2]
calcFrequency 100; [required, unsigned int]
convCrit 1E-20; [optional, default = 1E-20]
}
Parameters
configThe config block handle containing the parameters.

◆ initSampleVolume()

template<typename PdfField_T, typename BoundaryHandling_T>
void walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::initSampleVolume ( )
private

◆ operator()()

Main evaluation procedure.

Member Data Documentation

◆ blocks_

◆ boundaryHandlingId_

template<typename PdfField_T, typename BoundaryHandling_T>
const BlockDataID& walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::boundaryHandlingId_
private

◆ c0_

◆ c1_

◆ convCrit_

◆ delta_

◆ flowAxis_

◆ fluid_

template<typename PdfField_T, typename BoundaryHandling_T>
const FlagUID& walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::fluid_
private

◆ initialized_

template<typename PdfField_T, typename BoundaryHandling_T>
bool walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::initialized_
private

◆ interval_

◆ k_

◆ lastU_

◆ nu_

◆ numC0FluidNodes_

◆ numC1FluidNodes_

◆ numSampleFluidNodes_

template<typename PdfField_T, typename BoundaryHandling_T>
uint_t walberla::lbm::evaluations::Permeability< PdfField_T, BoundaryHandling_T >::numSampleFluidNodes_
private

◆ pdfFieldId_

◆ sampleVolume_

◆ time_


The documentation for this class was generated from the following files:
  • /builds/administration/walberla-website/walberla/src/lbm/evaluations/Permeability.h
  • /builds/administration/walberla-website/walberla/src/lbm/evaluations/Permeability.impl.h