walberla::field::TrilinearInterpolator< GlField, ResType, FactorType > Class Template Reference

Detailed Description

template<typename GlField, typename ResType, typename FactorType>
class walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >

Trilinear interpolation for GhostLayerFields.

Template parameter GlField has to be a GhostLayerField or a class that implements the methods CellInterval xyzSizeWithGhostLayer() GlField::value_type get( cell_idx_t x, cell_idx_t y, cell_idx_t z )

Provides access to a field with real valued coordinates. Values are interpolated with a trilinear scheme.

Coordinate System:

#include <TrilinearInterpolatorFwd.h>

Public Member Functions

 TrilinearInterpolator (const GlField &fieldToInterpolate)
 
ResType operator() (real_t x, real_t y, real_t z) const
 
ResType operator() (real_t x, real_t y, real_t z, cell_idx_t f) const
 
ResType operator() (const Vector3< real_t > &p, cell_idx_t f) const
 
ResType operator() (const Vector3< real_t > &p) const
 
const AABB & getValidRegion () const
 

Static Public Attributes

static const uint_t F_SIZE = GlField::F_SIZE
 

Protected Attributes

const GlField & field_
 
AABB validRegion_
 

Constructor & Destructor Documentation

◆ TrilinearInterpolator()

template<typename GlField , typename ResType , typename FactorType >
walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::TrilinearInterpolator ( const GlField &  fieldToInterpolate)
inline

Member Function Documentation

◆ getValidRegion()

template<typename GlField , typename ResType , typename FactorType >
const AABB& walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::getValidRegion ( ) const
inline

◆ operator()() [1/4]

template<typename GlField , typename ResType , typename FactorType >
ResType walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::operator() ( const Vector3< real_t > &  p) const
inline

◆ operator()() [2/4]

template<typename GlField , typename ResType , typename FactorType >
ResType walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::operator() ( const Vector3< real_t > &  p,
cell_idx_t  f 
) const
inline

◆ operator()() [3/4]

template<typename GlField , typename ResType , typename FactorType >
ResType walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::operator() ( real_t  x,
real_t  y,
real_t  z 
) const
inline

◆ operator()() [4/4]

template<typename GlField , typename ResType , typename FactorType >
ResType walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::operator() ( real_t  x,
real_t  y,
real_t  z,
cell_idx_t  f 
) const
inline

Member Data Documentation

◆ F_SIZE

template<typename GlField , typename ResType , typename FactorType >
const uint_t walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::F_SIZE = GlField::F_SIZE
static

◆ field_

template<typename GlField , typename ResType , typename FactorType >
const GlField& walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::field_
protected

◆ validRegion_

template<typename GlField , typename ResType , typename FactorType >
AABB walberla::field::TrilinearInterpolator< GlField, ResType, FactorType >::validRegion_
protected

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