Go to the documentation of this file.
40 #ifndef limitedSurfaceInterpolationScheme_H
41 #define limitedSurfaceInterpolationScheme_H
81 TypeName(
"limitedSurfaceInterpolationScheme");
108 (
mesh, faceFlux, schemeData)
208 #define makelimitedSurfaceInterpolationTypeScheme(SS, Type) \
210 defineNamedTemplateTypeNameAndDebug(SS<Type>, 0); \
212 surfaceInterpolationScheme<Type>::addMeshConstructorToTable<SS<Type>> \
213 add##SS##Type##MeshConstructorToTable_; \
215 surfaceInterpolationScheme<Type>::addMeshFluxConstructorToTable<SS<Type>> \
216 add##SS##Type##MeshFluxConstructorToTable_; \
218 limitedSurfaceInterpolationScheme<Type>::addMeshConstructorToTable<SS<Type>> \
219 add##SS##Type##MeshConstructorToLimitedTable_; \
221 limitedSurfaceInterpolationScheme<Type>:: \
222 addMeshFluxConstructorToTable<SS<Type>> \
223 add##SS##Type##MeshFluxConstructorToLimitedTable_;
225 #define makelimitedSurfaceInterpolationScheme(SS) \
227 makelimitedSurfaceInterpolationTypeScheme(SS, scalar) \
228 makelimitedSurfaceInterpolationTypeScheme(SS, vector) \
229 makelimitedSurfaceInterpolationTypeScheme(SS, sphericalTensor) \
230 makelimitedSurfaceInterpolationTypeScheme(SS, symmTensor) \
231 makelimitedSurfaceInterpolationTypeScheme(SS, tensor)
A class for handling words, derived from Foam::string.
A class for managing temporary objects.
static tmp< limitedSurfaceInterpolationScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return new tmp interpolation scheme.
virtual ~limitedSurfaceInterpolationScheme()
Destructor.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
declareRunTimeSelectionTable(tmp, limitedSurfaceInterpolationScheme, Mesh,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux(const GeometricField< Type, fvPatchField, volMesh > &) const
Return the interpolation weighting factors.
const Type & lookupObject(const word &name, const bool recursive=false) const
TypeName("limitedSurfaceInterpolationScheme")
Runtime type information.
Mesh data needed to do the Finite Volume discretisation.
const surfaceScalarField & faceFlux_
Abstract base class for limited surface interpolation schemes.
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 > limiter(const GeometricField< Type, fvPatchField, volMesh > &) const =0
Return the interpolation weighting factors.
Abstract base class for surface interpolation schemes.
const fvMesh & mesh() const
Return mesh reference.