interpolation< Type > Class Template Referenceabstract

Abstract base class for volume field interpolation. More...

Inheritance diagram for interpolation< Type >:
[legend]
Collaboration diagram for interpolation< Type >:
[legend]

Public Member Functions

virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, interpolation, dictionary,(const GeometricField< Type, fvPatchField, volMesh > &psi),(psi))
 
 interpolation (const GeometricField< Type, fvPatchField, volMesh > &psi)
 Construct from components. More...
 
virtual ~interpolation ()=default
 Destructor. More...
 
const GeometricField< Type, fvPatchField, volMesh > & psi () const noexcept
 Return the field to be interpolated. More...
 
virtual Type interpolate (const vector &position, const label celli, const label facei=-1) const =0
 Interpolate field to the given point in the given cell. More...
 
virtual Type interpolate (const barycentric &coordinates, const tetIndices &tetIs, const label facei=-1) const
 

Static Public Member Functions

static autoPtr< interpolation< Type > > New (const word &interpolationType, const GeometricField< Type, fvPatchField, volMesh > &psi)
 Return a reference to the specified interpolation scheme. More...
 
static autoPtr< interpolation< Type > > New (const dictionary &interpolationSchemes, const GeometricField< Type, fvPatchField, volMesh > &psi)
 Return a reference to the selected interpolation scheme. More...
 

Protected Attributes

const GeometricField< Type, fvPatchField, volMesh > & psi_
 
const polyMeshpMesh_
 
const vectorFieldpMeshPoints_
 
const faceListpMeshFaces_
 
const vectorFieldpMeshFaceCentres_
 
const vectorFieldpMeshFaceAreas_
 

Detailed Description

template<class Type>
class Foam::interpolation< Type >

Abstract base class for volume field interpolation.

Definition at line 59 of file interpolation.H.

Constructor & Destructor Documentation

◆ interpolation()

interpolation ( const GeometricField< Type, fvPatchField, volMesh > &  psi)
explicit

Construct from components.

Definition at line 36 of file interpolation.C.

◆ ~interpolation()

virtual ~interpolation ( )
virtualdefault

Destructor.

Member Function Documentation

◆ type()

virtual const word & type ( ) const
pure virtual

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
interpolation< Type >  ,
dictionary  ,
(const GeometricField< Type, fvPatchField, volMesh > &psi ,
(psi  
)

◆ New() [1/2]

Foam::autoPtr< Foam::interpolation< Type > > New ( const word interpolationType,
const GeometricField< Type, fvPatchField, volMesh > &  psi 
)
static

Return a reference to the specified interpolation scheme.

Definition at line 35 of file interpolationNew.C.

References Foam::exit(), Foam::FatalError, FatalErrorInLookup, and psi.

Here is the call graph for this function:

◆ New() [2/2]

Foam::autoPtr< Foam::interpolation< Type > > New ( const dictionary interpolationSchemes,
const GeometricField< Type, fvPatchField, volMesh > &  psi 
)
static

Return a reference to the selected interpolation scheme.

Definition at line 58 of file interpolationNew.C.

References dictionary::lookup(), Foam::New(), and psi.

Here is the call graph for this function:

◆ psi()

◆ interpolate() [1/2]

virtual Type interpolate ( const vector position,
const label  celli,
const label  facei = -1 
) const
pure virtual

◆ interpolate() [2/2]

virtual Type interpolate ( const barycentric coordinates,
const tetIndices tetIs,
const label  facei = -1 
) const
inlinevirtual

Interpolate field to the given coordinates in the tetrahedron defined by the given indices.

Calls interpolate function (vector, cell, face) except where overridden by derived interpolation types.

Reimplemented in interpolationCell< Type >, interpolationCell< scalar >, interpolationCellPatchConstrained< Type >, interpolationCellPoint< Type >, interpolationCellPoint< Foam::Vector >, interpolationCellPoint< scalar >, and interpolationCellPointWallModified< Type >.

Definition at line 144 of file interpolation.H.

Member Data Documentation

◆ psi_

const GeometricField<Type, fvPatchField, volMesh>& psi_
protected

◆ pMesh_

const polyMesh& pMesh_
protected

Definition at line 67 of file interpolation.H.

Referenced by interpolation< Type >::interpolate().

◆ pMeshPoints_

const vectorField& pMeshPoints_
protected

Definition at line 68 of file interpolation.H.

◆ pMeshFaces_

const faceList& pMeshFaces_
protected

Definition at line 69 of file interpolation.H.

◆ pMeshFaceCentres_

const vectorField& pMeshFaceCentres_
protected

Definition at line 70 of file interpolation.H.

◆ pMeshFaceAreas_

const vectorField& pMeshFaceAreas_
protected

Definition at line 71 of file interpolation.H.


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