Public Member Functions | Static Public Member Functions | List of all members
surfaceInterpolationScheme< Type > Class Template Referenceabstract

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

Inheritance diagram for surfaceInterpolationScheme< Type >:
Inheritance graph
[legend]
Collaboration diagram for surfaceInterpolationScheme< Type >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("surfaceInterpolationScheme")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (tmp, surfaceInterpolationScheme, Mesh,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
 
 declareRunTimeSelectionTable (tmp, surfaceInterpolationScheme, MeshFlux,(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData),(mesh, faceFlux, schemeData))
 
 surfaceInterpolationScheme (const fvMesh &mesh)
 Construct from mesh. More...
 
virtual ~surfaceInterpolationScheme ()=default
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< surfaceScalarFieldweights (const GeometricField< Type, fvPatchField, volMesh > &) 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, fvsPatchField, surfaceMesh > > correction (const GeometricField< Type, fvPatchField, volMesh > &) const
 Return the explicit correction to the face-interpolate. More...
 
virtual tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate (const surfaceVectorField &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf) const
 Return the face-interpolate of the given cell field. More...
 
tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate (const surfaceVectorField &Sf, const tmp< GeometricField< Type, fvPatchField, volMesh >> &) const
 Return the face-interpolate of the given tmp cell field. More...
 
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &) const
 Return the face-interpolate of the given cell field. More...
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const tmp< GeometricField< Type, fvPatchField, volMesh >> &) 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 use_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< surfaceInterpolationScheme< Type > > New (const fvMesh &mesh, Istream &schemeData)
 Return new tmp interpolation scheme. More...
 
static tmp< surfaceInterpolationScheme< Type > > New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData)
 Return new tmp interpolation scheme. More...
 
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &, const tmp< surfaceScalarField > &)
 Return the face-interpolate of the given cell field. More...
 
template<class SFType >
static tmp< GeometricField< typename innerProduct< typename SFType::value_type, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate (const SFType &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf, const tmp< surfaceScalarField > &tlambdas)
 Return the face-interpolate of the given cell field. More...
 
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &)
 Return the face-interpolate of the given cell field. More...
 

Detailed Description

template<class Type>
class Foam::surfaceInterpolationScheme< Type >

Abstract base class for surface interpolation schemes.

Source files

Definition at line 53 of file surfaceInterpolationScheme.H.

Constructor & Destructor Documentation

◆ surfaceInterpolationScheme()

surfaceInterpolationScheme ( const fvMesh mesh)
inline

Construct from mesh.

Definition at line 119 of file surfaceInterpolationScheme.H.

◆ ~surfaceInterpolationScheme()

virtual ~surfaceInterpolationScheme ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "surfaceInterpolationScheme< Type >"  )

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

declareRunTimeSelectionTable ( tmp  ,
surfaceInterpolationScheme< Type >  ,
Mesh  ,
(const fvMesh &mesh, Istream &schemeData)  ,
(mesh, schemeData)   
)

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( tmp  ,
surfaceInterpolationScheme< Type >  ,
MeshFlux  ,
(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData)  ,
(mesh, faceFlux, schemeData)   
)

◆ New() [1/2]

Foam::tmp< Foam::surfaceInterpolationScheme< Type > > New ( const fvMesh mesh,
Istream schemeData 
)
static

◆ New() [2/2]

Foam::tmp< Foam::surfaceInterpolationScheme< Type > > New ( const fvMesh mesh,
const surfaceScalarField faceFlux,
Istream schemeData 
)
static

Return new tmp interpolation scheme.

Definition at line 74 of file surfaceInterpolationScheme.C.

◆ mesh()

const fvMesh& mesh ( ) const
inline

◆ interpolate() [1/4]

Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > interpolate ( const GeometricField< Type, fvPatchField, volMesh > &  vf,
const tmp< surfaceScalarField > &  tlambdas,
const tmp< surfaceScalarField > &  tys 
)
static

Return the face-interpolate of the given cell field.

with the given owner and neighbour weighting factors

Definition at line 119 of file surfaceInterpolationScheme.C.

Referenced by cubic< Type >::correction(), Foam::linearInterpolate(), and skewCorrected< Type >::skewCorrection().

Here is the caller graph for this function:

◆ dotInterpolate() [1/3]

static tmp< GeometricField < typename innerProduct<typename SFType::value_type, Type>::type, fvsPatchField, surfaceMesh > > dotInterpolate ( const SFType &  Sf,
const GeometricField< Type, fvPatchField, volMesh > &  vf,
const tmp< surfaceScalarField > &  tlambdas 
)
static

Return the face-interpolate of the given cell field.

with the given weighting factors dotted with given field Sf

◆ interpolate() [2/4]

Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > interpolate ( const GeometricField< Type, fvPatchField, volMesh > &  vf,
const tmp< surfaceScalarField > &  tlambdas 
)
static

Return the face-interpolate of the given cell field.

with the given weighting factors

Definition at line 305 of file surfaceInterpolationScheme.C.

◆ weights()

virtual tmp<surfaceScalarField> weights ( const GeometricField< Type, fvPatchField, volMesh > &  ) const
pure virtual

◆ corrected()

virtual bool corrected ( ) const
inlinevirtual

◆ correction()

virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > correction ( const GeometricField< Type, fvPatchField, volMesh > &  ) const
inlinevirtual

◆ dotInterpolate() [2/3]

virtual tmp< GeometricField < typename innerProduct<vector, Type>::type, fvsPatchField, surfaceMesh > > dotInterpolate ( const surfaceVectorField Sf,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
) const
virtual

Return the face-interpolate of the given cell field.

with explicit correction dotted with given field Sf

◆ dotInterpolate() [3/3]

tmp< GeometricField < typename innerProduct<vector, Type>::type, fvsPatchField, surfaceMesh > > dotInterpolate ( const surfaceVectorField Sf,
const tmp< GeometricField< Type, fvPatchField, volMesh >> &   
) const

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

with explicit correction dotted with given field Sf

◆ interpolate() [3/4]

Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > interpolate ( const GeometricField< Type, fvPatchField, volMesh > &  vf) const
virtual

Return the face-interpolate of the given cell field.

with explicit correction

Reimplemented in cellCoBlended< Type >, CoBlended< Type >, weightedFlux< Type >, fixedBlended< Type >, localBlended< Type >, limiterBlended< Type >, harmonic, localMax< Type >, and localMin< Type >.

Definition at line 395 of file surfaceInterpolationScheme.C.

◆ interpolate() [4/4]

Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > interpolate ( const tmp< GeometricField< Type, fvPatchField, volMesh >> &  tvf) const

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

with explicit correction

Definition at line 424 of file surfaceInterpolationScheme.C.


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