Go to the documentation of this file.
35 #ifndef surfaceInterpolationScheme_H
36 #define surfaceInterpolationScheme_H
78 TypeName(
"surfaceInterpolationScheme");
105 (
mesh, faceFlux, schemeData)
212 #define makeSurfaceInterpolationTypeScheme(SS, Type) \
214 defineNamedTemplateTypeNameAndDebug(SS<Type>, 0); \
216 surfaceInterpolationScheme<Type>::addMeshConstructorToTable<SS<Type> > \
217 add##SS##Type##MeshConstructorToTable_; \
219 surfaceInterpolationScheme<Type>::addMeshFluxConstructorToTable<SS<Type> > \
220 add##SS##Type##MeshFluxConstructorToTable_;
222 #define makeSurfaceInterpolationScheme(SS) \
224 makeSurfaceInterpolationTypeScheme(SS, scalar) \
225 makeSurfaceInterpolationTypeScheme(SS, vector) \
226 makeSurfaceInterpolationTypeScheme(SS, sphericalTensor) \
227 makeSurfaceInterpolationTypeScheme(SS, symmTensor) \
228 makeSurfaceInterpolationTypeScheme(SS, tensor)
A class for managing temporary objects.
Reference counter for various OpenFOAM components.
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.
virtual ~surfaceInterpolationScheme()
Destructor.
virtual tmp< surfaceScalarField > weights(const GeometricField< Type, fvPatchField, volMesh > &) const =0
Return the interpolation weighting factors for the given field.
TypeName("surfaceInterpolationScheme")
Runtime type information.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > correction(const GeometricField< Type, fvPatchField, volMesh > &) const
Return the explicit correction to the face-interpolate.
virtual bool corrected() const
Return true if this scheme uses an explicit correction.
const fvMesh & mesh_
Hold reference to mesh.
declareRunTimeSelectionTable(tmp, surfaceInterpolationScheme, Mesh,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
Abstract base class for surface interpolation schemes.
Mesh data needed to do the Finite Volume discretisation.
surfaceInterpolationScheme(const surfaceInterpolationScheme &)
Disallow copy construct.
surfaceInterpolationScheme(const fvMesh &mesh)
Construct from mesh.
Macros to ease declaration of run-time selection tables.
static tmp< surfaceInterpolationScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return new tmp interpolation scheme.
Abstract base class for surface interpolation schemes.
const fvMesh & mesh() const
Return mesh reference.
Generic GeometricField class.
void operator=(const surfaceInterpolationScheme &)
Disallow default bitwise assignment.