Abstract base class for surface interpolation schemes. More...
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 fvMesh & | mesh () const |
Return mesh reference. More... | |
virtual tmp< surfaceScalarField > | weights (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... | |
template<class SFType > | |
Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< typename SFType::value_type, Type >::type, Foam::fvsPatchField, Foam::surfaceMesh > > | dotInterpolate (const SFType &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf, const tmp< surfaceScalarField > &tlambdas) |
tmp< GeometricField< typename innerProduct< vector, scalar >::type, fvsPatchField, surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const GeometricField< scalar, fvPatchField, volMesh > &) const |
Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< Foam::vector, Foam::scalar >::type, Foam::fvsPatchField, Foam::surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const GeometricField< scalar, fvPatchField, volMesh > &) const |
![]() | |
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< 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... | |
Abstract base class for surface interpolation schemes.
Definition at line 57 of file surfaceInterpolationScheme.H.
|
inline |
Construct from mesh.
Definition at line 113 of file surfaceInterpolationScheme.H.
|
virtualdefault |
Destructor.
TypeName | ( | "surfaceInterpolationScheme< Type >" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | tmp | , |
surfaceInterpolationScheme< Type > | , | ||
Mesh | , | ||
(const fvMesh &mesh, Istream &schemeData) | , | ||
(mesh, schemeData) | |||
) |
declareRunTimeSelectionTable | ( | tmp | , |
surfaceInterpolationScheme< Type > | , | ||
MeshFlux | , | ||
(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData) | , | ||
(mesh, faceFlux, schemeData) | |||
) |
|
static |
Return new tmp interpolation scheme.
Definition at line 39 of file surfaceInterpolationScheme.C.
References Foam::endl(), IOstream::eof(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, InfoInFunction, and mesh.
|
static |
Return new tmp interpolation scheme.
Definition at line 80 of file surfaceInterpolationScheme.C.
References Foam::endl(), IOstream::eof(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, InfoInFunction, and mesh.
|
inline |
Return mesh reference.
Definition at line 144 of file surfaceInterpolationScheme.H.
Referenced by cellCoBlended< Type >::blendingFactor(), CoBlended< Type >::blendingFactor(), localBlended< Type >::blendingFactor(), DEShybrid< Type >::blendingFactor(), skewCorrected< Type >::corrected(), CentredFitScheme< Type, Polynomial, Stencil >::correction(), cubic< Type >::correction(), localBlended< Type >::correction(), outletStabilised< Type >::correction(), PureUpwindFitScheme< Type, Polynomial, Stencil >::correction(), skewCorrected< Type >::correction(), UpwindFitScheme< Type, Polynomial, Stencil >::correction(), localBlended< Type >::interpolate(), localMax< Type >::interpolate(), localMin< Type >::interpolate(), blended< Type >::limiter(), upwind< Type >::limiter(), skewCorrected< Type >::skewCorrection(), clippedLinear< Type >::weights(), linear< Type >::weights(), midPoint< Type >::weights(), reverseLinear< Type >::weights(), weightedFlux< Type >::weights(), blended< Type >::weights(), localBlended< Type >::weights(), and outletStabilised< Type >::weights().
|
static |
Return the face-interpolate of the given cell field.
with the given owner and neighbour weighting factors
Definition at line 125 of file surfaceInterpolationScheme.C.
Referenced by cubic< Type >::correction(), adjointkOmegaSST::divUMeanFlowSource(), adjointkOmegaSST::GMeanFlowSource(), harmonic::interpolate(), adjointkOmegaSST::nutMeanFlowSource(), and skewCorrected< Type >::skewCorrection().
|
static |
Return the face-interpolate of the given cell field.
with the given weighting factors dotted with given field Sf
|
static |
Return the face-interpolate of the given cell field.
with the given weighting factors
Definition at line 306 of file surfaceInterpolationScheme.C.
|
pure virtual |
Return the interpolation weighting factors for the given field.
Implemented in harmonic, limitedSurfaceInterpolationScheme< Type >, upwind< Type >, multivariateSelectionScheme< Type >::fieldScheme, multivariateUpwind< Type >::fieldScheme, clippedLinear< Type >, downwind< Type >, linear< Type >, localMax< Type >, localMin< Type >, LUST< Type >, midPoint< Type >, reverseLinear< Type >, weighted< Type >, weightedFlux< Type >, multivariateSurfaceInterpolationScheme< Type >::fieldScheme, blended< Type >, limitWith< Type >, cellCoBlended< Type >, CoBlended< Type >, fixedBlended< Type >, limiterBlended< Type >, localBlended< Type >, outletStabilised< Type >, skewCorrected< Type >, and DEShybrid< Type >.
|
inlinevirtual |
Return true if this scheme uses an explicit correction.
Reimplemented in limitWith< Type >, cellCoBlended< Type >, CentredFitScheme< Type, Polynomial, Stencil >, CoBlended< Type >, cubic< Type >, deferredCorrection< Type >, fixedBlended< Type >, limiterBlended< Type >, linearUpwind< Type >, linearUpwindV< Type >, localBlended< Type >, LUST< Type >, outletStabilised< Type >, pointLinear< Type >, PureUpwindFitScheme< Type, Polynomial, Stencil >, skewCorrected< Type >, UpwindFitScheme< Type, Polynomial, Stencil >, linearUpwindNormal< Type >, and DEShybrid< Type >.
Definition at line 195 of file surfaceInterpolationScheme.H.
|
inlinevirtual |
Return the explicit correction to the face-interpolate.
for the given field
Reimplemented in deferredCorrection< Type >, linearUpwind< Type >, linearUpwindV< Type >, linearUpwindNormal< Type >, limitWith< Type >, cellCoBlended< Type >, CentredFitScheme< Type, Polynomial, Stencil >, CoBlended< Type >, cubic< Type >, fixedBlended< Type >, limiterBlended< Type >, localBlended< Type >, LUST< Type >, outletStabilised< Type >, pointLinear< Type >, PureUpwindFitScheme< Type, Polynomial, Stencil >, skewCorrected< Type >, UpwindFitScheme< Type, Polynomial, Stencil >, and DEShybrid< Type >.
Definition at line 203 of file surfaceInterpolationScheme.H.
|
virtual |
Return the face-interpolate of the given cell field.
with explicit correction dotted with given field Sf
Definition at line 326 of file surfaceInterpolationScheme.C.
References Foam::correction(), Foam::endl(), InfoInFunction, IOobject::name(), and DimensionedField< Type, GeoMesh >::oriented().
Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< Foam::vector, Type >::type, Foam::fvsPatchField, Foam::surfaceMesh > > dotInterpolate | ( | const surfaceVectorField & | Sf, |
const tmp< GeometricField< Type, fvPatchField, volMesh > > & | tvf | ||
) | const |
Return the face-interpolate of the given tmp cell field.
with explicit correction dotted with given field Sf
Definition at line 373 of file surfaceInterpolationScheme.C.
|
virtual |
Return the face-interpolate of the given cell field.
with explicit correction
Reimplemented in harmonic, cellCoBlended< Type >, CoBlended< Type >, fixedBlended< Type >, limiterBlended< Type >, localBlended< Type >, localMax< Type >, localMin< Type >, weightedFlux< Type >, and DEShybrid< Type >.
Definition at line 396 of file surfaceInterpolationScheme.C.
References Foam::correction(), Foam::endl(), InfoInFunction, interpolate(), IOobject::name(), and tmp< T >::ref().
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 425 of file surfaceInterpolationScheme.C.
References interpolate().
Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< typename SFType::value_type, Type >::type, Foam::fvsPatchField, Foam::surfaceMesh > > dotInterpolate | ( | const SFType & | Sf, |
const GeometricField< Type, fvPatchField, volMesh > & | vf, | ||
const tmp< surfaceScalarField > & | tlambdas | ||
) |
Definition at line 216 of file surfaceInterpolationScheme.C.
tmp< GeometricField< typename innerProduct< vector, scalar >::type, fvsPatchField, surfaceMesh > > dotInterpolate | ( | const surfaceVectorField & | Sf, |
const GeometricField< scalar, fvPatchField, volMesh > & | |||
) | const |
Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< Foam::vector, Foam::scalar >::type, Foam::fvsPatchField, Foam::surfaceMesh > > dotInterpolate | ( | const surfaceVectorField & | Sf, |
const GeometricField< scalar, fvPatchField, volMesh > & | |||
) | const |
Definition at line 75 of file surfaceInterpolationSchemes.C.
References NotImplemented.