Distributor for walberla::field::GhostLayerField with kernel strategy.
This distributor uses a smoothed dirac kernel function to distribute values to the field at the given position. The applied weights are given in the namespace field::kernelweights. Needs the full neighborhood of the containing cell, i.e. 27 cells. Never construct this distributor directly, but use the functionality from DistributorCreators.h instead.
#include <KernelDistributor.h>
Public Types | |
using | BaseField_T = Field_T |
using | flag_t = typename FlagField_T::flag_t |
using | OwnType = KernelDistributor< Field_T, FlagField_T > |
Public Member Functions | |
KernelDistributor (const weak_ptr< StructuredBlockStorage > &blockStorage, const IBlock &block, BaseField_T &baseField, const FlagField_T &flagField, const flag_t &evaluationMask) | |
bool | operator== (const OwnType &other) |
template<typename ForwardIterator_T > | |
void | distribute (const Vector3< real_t > &position, ForwardIterator_T distributeValueBegin) |
template<typename ForwardIterator_T > | |
void | distribute (const real_t &x, const real_t &y, const real_t &z, ForwardIterator_T distributeValueBegin) |
Static Public Attributes | |
static const uint_t | F_SIZE = Field_T::F_SIZE |
Private Member Functions | |
template<typename ForwardIterator_T > | |
void | addWeightedCellValue (ForwardIterator_T distributeValueBegin, const Cell &curCell, const real_t &weighting) |
Private Attributes | |
weak_ptr< StructuredBlockStorage > | blockStorage_ |
const IBlock & | block_ |
BaseField_T & | baseField_ |
const FlagField_T & | flagField_ |
flag_t | evaluationMask_ |
using walberla::field::KernelDistributor< Field_T, FlagField_T >::BaseField_T = Field_T |
using walberla::field::KernelDistributor< Field_T, FlagField_T >::flag_t = typename FlagField_T::flag_t |
using walberla::field::KernelDistributor< Field_T, FlagField_T >::OwnType = KernelDistributor<Field_T, FlagField_T> |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
static |
|
private |