template<typename Interpolator_T, typename FlagField_T>
class walberla::field::InterpolatorHandling< Interpolator_T, FlagField_T >
FieldInterpolatorCreators.
Interpolator_T: A field interpolator that has a constructor ( const weak_ptr<StructuredBlockStorage> & blockStorage, const IBlock & block, const BaseField_T & baseField, const FlagField_T & flagField, const flag_t & evaluationMask ) and getter functions: template< typename ForwardIterator_T > inline void get( const Vector3<real_t> & position, ForwardIterator_T interpolationResultBegin ) template< typename ForwardIterator_T > inline void get( const real_t & x, const real_t & y, const real_t & z, ForwardIterator_T interpolationResultBegin )
See TrilinearFieldInterpolator for an example implementation.
A field interpolator is aware of the flag field (FlagField_T) and uses only values that contain flags from a given mask.
Field Interpolators can be used to sample the underlying field at certain positions. E.g. the fluid velocity can be interpolated to a desired global position from a velocity field.
|
| InterpolatorHandling (const weak_ptr< StructuredBlockStorage > &blockStorage, const ConstBlockDataID &interpolatedFieldID, const ConstBlockDataID &flagFieldID, const Set< FlagUID > &cellsToEvaluate) |
|
Interpolator_T * | initialize (IBlock *const block) override |
| must be thread-safe ! More...
|
|
Public Member Functions inherited from walberla::blockforest::AlwaysInitializeBlockDataHandling< Interpolator_T > |
| ~AlwaysInitializeBlockDataHandling () override=default |
|
void | serialize (IBlock *const, const BlockDataID &, mpi::SendBuffer &) override |
| must be thread-safe ! More...
|
|
void | serializeCoarseToFine (Block *const, const BlockDataID &, mpi::SendBuffer &, const uint_t) override |
| must be thread-safe ! More...
|
|
void | serializeFineToCoarse (Block *const, const BlockDataID &, mpi::SendBuffer &) override |
| must be thread-safe ! More...
|
|
Interpolator_T * | deserialize (IBlock *const block) override |
| must be thread-safe ! More...
|
|
void | deserialize (IBlock *const, const BlockDataID &, mpi::RecvBuffer &) override |
| must be thread-safe ! More...
|
|
Interpolator_T * | deserializeCoarseToFine (Block *const block) override |
| must be thread-safe ! More...
|
|
void | deserializeCoarseToFine (Block *const, const BlockDataID &, mpi::RecvBuffer &) override |
| must be thread-safe ! More...
|
|
Interpolator_T * | deserializeFineToCoarse (Block *const block) override |
| must be thread-safe ! More...
|
|
void | deserializeFineToCoarse (Block *const, const BlockDataID &, mpi::RecvBuffer &, const uint_t) override |
| must be thread-safe ! More...
|
|
Public Member Functions inherited from walberla::blockforest::BlockDataHandling< Interpolator_T > |
| ~BlockDataHandling () override=default |
|