Loading...
Searching...
No Matches
interpolation< Type > Class Template Referenceabstract

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

#include <interpolation.H>

Inheritance diagram for interpolation< Type >:
Collaboration diagram for interpolation< Type >:

Public Member Functions

virtual const wordtype () const =0
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, interpolation, dictionary,(const GeometricField< Type, fvPatchField, volMesh > &psi),(psi))
 interpolation (const GeometricField< Type, fvPatchField, volMesh > &psi)
 Construct from components.
virtual ~interpolation ()=default
 Destructor.
const GeometricField< Type, fvPatchField, volMesh > & psi () const noexcept
 Return the field to be interpolated.
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.
virtual Type interpolate (const barycentric &coordinates, const tetIndices &tetIs, const label facei=-1) const
 Interpolate field to the given coordinates in the tetrahedron defined by the given indices.

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.
static autoPtr< interpolation< Type > > New (const dictionary &interpolationSchemes, const GeometricField< Type, fvPatchField, volMesh > &psi)
 Return a reference to the selected interpolation scheme.

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 53 of file interpolation.H.

Constructor & Destructor Documentation

◆ interpolation()

◆ ~interpolation()

template<class Type>
virtual ~interpolation ( )
virtualdefault

Destructor.

Member Function Documentation

◆ type()

template<class Type>
virtual const word & type ( ) const
pure virtual

Runtime type information.

◆ declareRunTimeSelectionTable()

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

References interpolation(), and psi().

Here is the call graph for this function:

◆ New() [1/2]

◆ New() [2/2]

template<class Type>
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 51 of file interpolationNew.C.

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

Here is the call graph for this function:

◆ psi()

◆ interpolate() [1/2]

◆ interpolate() [2/2]

template<class Type>
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 >, interpolationCellPatchConstrained< Type >, interpolationCellPoint< Type >, and interpolationCellPointWallModified< Type >.

Definition at line 155 of file interpolation.H.

References tetrahedron< Point, PointRef >::barycentricToPoint(), tetIndices::cell(), coordinates(), interpolate(), pMesh_, and tetIndices::tet().

Here is the call graph for this function:

Member Data Documentation

◆ psi_

◆ pMesh_

◆ pMeshPoints_

template<class Type>
const vectorField& pMeshPoints_
protected

Definition at line 62 of file interpolation.H.

Referenced by interpolation().

◆ pMeshFaces_

template<class Type>
const faceList& pMeshFaces_
protected

Definition at line 63 of file interpolation.H.

Referenced by interpolation().

◆ pMeshFaceCentres_

template<class Type>
const vectorField& pMeshFaceCentres_
protected

◆ pMeshFaceAreas_

template<class Type>
const vectorField& pMeshFaceAreas_
protected

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