edgeInterpolationScheme< Type > Class Template Referenceabstract

Abstract base class for edge interpolation schemes. More...

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

Public Member Functions

 declareRunTimeSelectionTable (tmp, edgeInterpolationScheme, Mesh,(const faMesh &mesh, Istream &schemeData),(mesh, schemeData))
 
 declareRunTimeSelectionTable (tmp, edgeInterpolationScheme, MeshFlux,(const faMesh &mesh, const edgeScalarField &faceFlux, Istream &schemeData),(mesh, faceFlux, schemeData))
 
 edgeInterpolationScheme (const faMesh &mesh)
 Construct from mesh. More...
 
virtual ~edgeInterpolationScheme ()
 
const faMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< edgeScalarFieldweights (const GeometricField< Type, faPatchField, areaMesh > &) const =0
 Return the interpolation weighting factors for the given field. More...
 
virtual bool corrected () const
 Return true if this scheme uses an explicit correction. More...
 
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > correction (const GeometricField< Type, faPatchField, areaMesh > &) const
 Return the explicit correction to the face-interpolate. More...
 
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate (const GeometricField< Type, faPatchField, areaMesh > &) const
 Return the face-interpolate of the given cell field. More...
 
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > euclidianInterpolate (const GeometricField< Type, faPatchField, areaMesh > &) const
 Return the euclidian edge-interpolate of the given area field. More...
 
tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate (const tmp< GeometricField< Type, faPatchField, areaMesh >> &) const
 Return the face-interpolate of the given tmp cell field. More...
 
- Public Member Functions inherited from refCount
constexpr refCount () noexcept
 Default construct, initializing count to 0. More...
 
int count () const noexcept
 Return the current reference count. More...
 
bool unique () const noexcept
 Return true if the reference count is zero. More...
 
void operator++ () noexcept
 Increment the reference count. More...
 
void operator++ (int) noexcept
 Increment the reference count. More...
 
void operator-- () noexcept
 Decrement the reference count. More...
 
void operator-- (int) noexcept
 Decrement the reference count. More...
 

Static Public Member Functions

static tmp< edgeInterpolationScheme< Type > > New (const faMesh &mesh, Istream &schemeData)
 Return new tmp interpolation scheme. More...
 
static tmp< edgeInterpolationScheme< Type > > New (const faMesh &mesh, const edgeScalarField &faceFlux, Istream &schemeData)
 Return new tmp interpolation scheme. More...
 
static tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate (const GeometricField< Type, faPatchField, areaMesh > &, const tmp< edgeScalarField > &, const tmp< edgeScalarField > &)
 Return the face-interpolate of the given cell field. More...
 
static tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate (const GeometricField< Type, faPatchField, areaMesh > &, const tmp< edgeScalarField > &)
 Return the face-interpolate of the given cell field. More...
 
static tmp< GeometricField< Type, faePatchField, edgeMesh > > euclidianInterpolate (const GeometricField< Type, faPatchField, areaMesh > &, const tmp< edgeScalarField > &)
 Return the euclidian edge-interpolate of the given area field. More...
 

Detailed Description

template<class Type>
class Foam::edgeInterpolationScheme< Type >

Abstract base class for edge interpolation schemes.

Source files

Definition at line 57 of file edgeInterpolationScheme.H.

Constructor & Destructor Documentation

◆ edgeInterpolationScheme()

edgeInterpolationScheme ( const faMesh mesh)
inline

Construct from mesh.

Definition at line 106 of file edgeInterpolationScheme.H.

◆ ~edgeInterpolationScheme()

Definition at line 129 of file edgeInterpolationScheme.C.

Member Function Documentation

◆ declareRunTimeSelectionTable() [1/2]

declareRunTimeSelectionTable ( tmp  ,
edgeInterpolationScheme< Type >  ,
Mesh  ,
(const faMesh &mesh, Istream &schemeData)  ,
(mesh, schemeData)   
)

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( tmp  ,
edgeInterpolationScheme< Type >  ,
MeshFlux  ,
(const faMesh &mesh, const edgeScalarField &faceFlux, Istream &schemeData)  ,
(mesh, faceFlux, schemeData)   
)

◆ New() [1/2]

Foam::tmp< Foam::edgeInterpolationScheme< Type > > New ( const faMesh mesh,
Istream schemeData 
)
static

Return new tmp interpolation scheme.

Definition at line 41 of file edgeInterpolationScheme.C.

Referenced by gaussGrad< Type >::gaussGrad(), and laplacianScheme< Type >::laplacianScheme().

Here is the caller graph for this function:

◆ New() [2/2]

Foam::tmp< Foam::edgeInterpolationScheme< Type > > New ( const faMesh mesh,
const edgeScalarField faceFlux,
Istream schemeData 
)
static

Return new tmp interpolation scheme.

Definition at line 84 of file edgeInterpolationScheme.C.

◆ mesh()

const faMesh& mesh ( ) const
inline

Return mesh reference.

Definition at line 138 of file edgeInterpolationScheme.H.

Referenced by skewCorrectedEdgeInterpolation< Type >::corrected(), skewCorrectedEdgeInterpolation< Type >::correction(), skewCorrectedEdgeInterpolation< Type >::skewCorrection(), and linearEdgeInterpolation< Type >::weights().

Here is the caller graph for this function:

◆ interpolate() [1/4]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > interpolate ( const GeometricField< Type, faPatchField, areaMesh > &  vf,
const tmp< edgeScalarField > &  tlambdas,
const tmp< edgeScalarField > &  tys 
)
static

Return the face-interpolate of the given cell field.

with the given owner and neighbour weighting factors

Definition at line 138 of file edgeInterpolationScheme.C.

Referenced by Foam::linearEdgeInterpolate(), and skewCorrectedEdgeInterpolation< Type >::skewCorrection().

Here is the caller graph for this function:

◆ interpolate() [2/4]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > interpolate ( const GeometricField< Type, faPatchField, areaMesh > &  vf,
const tmp< edgeScalarField > &  tlambdas 
)
static

Return the face-interpolate of the given cell field.

with the given weighting factors

Definition at line 257 of file edgeInterpolationScheme.C.

◆ euclidianInterpolate() [1/2]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > euclidianInterpolate ( const GeometricField< Type, faPatchField, areaMesh > &  vf,
const tmp< edgeScalarField > &  tlambdas 
)
static

Return the euclidian edge-interpolate of the given area field.

with the given weighting factors

Definition at line 374 of file edgeInterpolationScheme.C.

◆ weights()

virtual tmp<edgeScalarField> weights ( const GeometricField< Type, faPatchField, areaMesh > &  ) const
pure virtual

◆ corrected()

virtual bool corrected ( ) const
inlinevirtual

Return true if this scheme uses an explicit correction.

Reimplemented in skewCorrectedEdgeInterpolation< Type >.

Definition at line 181 of file edgeInterpolationScheme.H.

◆ correction()

virtual tmp<GeometricField<Type, faePatchField, edgeMesh> > correction ( const GeometricField< Type, faPatchField, areaMesh > &  ) const
inlinevirtual

Return the explicit correction to the face-interpolate.

for the given field

Reimplemented in skewCorrectedEdgeInterpolation< Type >.

Definition at line 189 of file edgeInterpolationScheme.H.

◆ interpolate() [3/4]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > interpolate ( const GeometricField< Type, faPatchField, areaMesh > &  vf) const
virtual

Return the face-interpolate of the given cell field.

with explicit correction

Definition at line 450 of file edgeInterpolationScheme.C.

◆ euclidianInterpolate() [2/2]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > euclidianInterpolate ( const GeometricField< Type, faPatchField, areaMesh > &  vf) const
virtual

Return the euclidian edge-interpolate of the given area field.

without explicit correction

Definition at line 479 of file edgeInterpolationScheme.C.

◆ interpolate() [4/4]

Foam::tmp< Foam::GeometricField< Type, Foam::faePatchField, Foam::edgeMesh > > interpolate ( const tmp< GeometricField< Type, faPatchField, areaMesh >> &  tvf) const

Return the face-interpolate of the given tmp cell field.

with explicit correction

Definition at line 503 of file edgeInterpolationScheme.C.


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