Abstract base class for limited surface interpolation schemes. More...
#include <limitedSurfaceInterpolationScheme.H>


Public Member Functions | |
| TypeName ("limitedSurfaceInterpolationScheme") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (tmp, limitedSurfaceInterpolationScheme, Mesh,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData)) | |
| declareRunTimeSelectionTable (tmp, limitedSurfaceInterpolationScheme, MeshFlux,(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData),(mesh, faceFlux, schemeData)) | |
| limitedSurfaceInterpolationScheme (const fvMesh &mesh, const surfaceScalarField &faceFlux) | |
| Construct from mesh and faceFlux. | |
| limitedSurfaceInterpolationScheme (const fvMesh &mesh, Istream &is) | |
| Construct from mesh and Istream. | |
| virtual | ~limitedSurfaceInterpolationScheme () |
| Destructor. | |
| virtual tmp< surfaceScalarField > | limiter (const GeometricField< Type, fvPatchField, volMesh > &) const =0 |
| Return the interpolation weighting factors. | |
| tmp< surfaceScalarField > | weights (const GeometricField< Type, fvPatchField, volMesh > &, const surfaceScalarField &CDweights, tmp< surfaceScalarField > tLimiter) const |
| Return the interpolation weighting factors for the given field,. | |
| virtual tmp< surfaceScalarField > | weights (const GeometricField< Type, fvPatchField, volMesh > &) const |
| Return the interpolation weighting factors for the given field. | |
| virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | flux (const GeometricField< Type, fvPatchField, volMesh > &) const |
| Return the interpolation weighting factors. | |
| Public Member Functions inherited from surfaceInterpolationScheme< Type > | |
| TypeName ("surfaceInterpolationScheme") | |
| Runtime type information. | |
| 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. | |
| virtual | ~surfaceInterpolationScheme ()=default |
| Destructor. | |
| const fvMesh & | mesh () const |
| Return mesh reference. | |
| virtual bool | corrected () const |
| Return true if this scheme uses an explicit correction. | |
| virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | correction (const GeometricField< Type, fvPatchField, volMesh > &) const |
| Return the explicit correction to the face-interpolate. | |
| 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. | |
| 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. | |
| virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &) const |
| Return the face-interpolate of the given cell field. | |
| tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const tmp< GeometricField< Type, fvPatchField, volMesh > > &) const |
| Return the face-interpolate of the given tmp cell field. | |
| 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 |
| Public Member Functions inherited from refCount | |
| constexpr | refCount () noexcept |
| Default construct, initializing count to 0. | |
| int | use_count () const noexcept |
| Return the current reference count. | |
| bool | unique () const noexcept |
| Return true if the reference count is zero. | |
| void | operator++ () noexcept |
| Increment the reference count. | |
| void | operator++ (int) noexcept |
| Increment the reference count. | |
| void | operator-- () noexcept |
| Decrement the reference count. | |
| void | operator-- (int) noexcept |
| Decrement the reference count. | |
Static Public Member Functions | |
| static tmp< limitedSurfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, Istream &schemeData) |
| Return new tmp interpolation scheme. | |
| static tmp< limitedSurfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData) |
| Return new tmp interpolation scheme. | |
| Static Public Member Functions inherited from surfaceInterpolationScheme< Type > | |
| static tmp< surfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, Istream &schemeData) |
| Return new tmp interpolation scheme. | |
| static tmp< surfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData) |
| Return new tmp interpolation scheme. | |
| 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. | |
| 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. | |
| static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &) |
| Return the face-interpolate of the given cell field. | |
Protected Attributes | |
| const surfaceScalarField & | faceFlux_ |
Abstract base class for limited surface interpolation schemes.
Definition at line 50 of file limitedSurfaceInterpolationScheme.H.
|
inline |
Construct from mesh and faceFlux.
Definition at line 118 of file limitedSurfaceInterpolationScheme.H.
References faceFlux_, and surfaceInterpolationScheme< Type >::mesh().

Construct from mesh and Istream.
The name of the flux field is read from the Istream and looked-up from the mesh objectRegistry
Definition at line 135 of file limitedSurfaceInterpolationScheme.H.
References faceFlux_, and surfaceInterpolationScheme< Type >::mesh().

|
virtual |
Destructor.
Definition at line 120 of file limitedSurfaceInterpolationScheme.C.
| TypeName | ( | "limitedSurfaceInterpolationScheme< Type >" | ) |
Runtime type information.
|
static |
Return new tmp interpolation scheme.
Definition at line 31 of file limitedSurfaceInterpolationScheme.C.
References Foam::endl(), IOstream::eof(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, InfoInFunction, and surfaceInterpolationScheme< Type >::mesh().
Referenced by deferredCorrection< Type >::deferredCorrection(), deferredCorrection< Type >::deferredCorrection(), linearUpwindNormal< Type >::linearUpwindNormal(), linearUpwindNormal< Type >::linearUpwindNormal(), linearUpwindV< Type >::linearUpwindV(), linearUpwindV< Type >::linearUpwindV(), and multivariateSelectionScheme< Type >::multivariateSelectionScheme().


|
static |
Return new tmp interpolation scheme.
Definition at line 74 of file limitedSurfaceInterpolationScheme.C.
References Foam::endl(), IOstream::eof(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, InfoInFunction, and surfaceInterpolationScheme< Type >::mesh().

|
pure virtual |
Return the interpolation weighting factors.
Implemented in blended< Type >, LimitedScheme< Type, Limiter, LimitFunc >, PhiScheme< Type, PhiLimiter >, and upwind< Type >.
Referenced by weights().

| Foam::tmp< Foam::surfaceScalarField > weights | ( | const GeometricField< Type, fvPatchField, volMesh > & | phi, |
| const surfaceScalarField & | CDweights, | ||
| tmp< surfaceScalarField > | tLimiter ) const |
Return the interpolation weighting factors for the given field,.
by limiting the given weights with the given limiter
Definition at line 129 of file limitedSurfaceInterpolationScheme.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), faceFlux_, forAll, phi, Foam::pos0(), GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), and tmp< T >::ref().
Referenced by weights().


|
virtual |
Return the interpolation weighting factors for the given field.
Implements surfaceInterpolationScheme< Type >.
Reimplemented in blended< Type >, LUST< Type >, and upwind< Type >.
Definition at line 172 of file limitedSurfaceInterpolationScheme.C.
References limiter(), mesh, phi, weights(), and surfaceInterpolation::weights().

|
virtual |
Return the interpolation weighting factors.
Definition at line 187 of file limitedSurfaceInterpolationScheme.C.
References faceFlux_, interpolate(), and phi.
Referenced by isoAdvection::advect(), and Foam::MULES::limit().


|
protected |
Definition at line 74 of file limitedSurfaceInterpolationScheme.H.
Referenced by linearUpwind< Type >::correction(), linearUpwind< Type >::correction(), linearUpwindNormal< Type >::correction(), linearUpwindV< Type >::correction(), PureUpwindFitScheme< scalar, linearFitPolynomial, pureUpwindCFCCellToFaceStencilObject >::correction(), flux(), limitedSurfaceInterpolationScheme(), limitedSurfaceInterpolationScheme(), PhiScheme< Type, PhiLimiter >::limiter(), blended< Type >::weights(), weights(), and upwind< Type >::weights().