Go to the documentation of this file.
38 #ifndef CentredFitScheme_H
39 #define CentredFitScheme_H
53 template<
class Type,
class Polynomial,
class Stencil>
63 const scalar linearLimitFactor_;
66 const scalar centralWeight_;
90 linearLimitFactor_(readScalar(is)),
104 linearLimitFactor_(readScalar(is)),
155 #define makeCentredFitSurfaceInterpolationTypeScheme\
163 typedef CentredFitScheme<TYPE, POLYNOMIAL, STENCIL> \
164 CentredFitScheme##TYPE##POLYNOMIAL##STENCIL##_; \
165 defineTemplateTypeNameAndDebugWithName \
166 (CentredFitScheme##TYPE##POLYNOMIAL##STENCIL##_, #SS, 0); \
168 surfaceInterpolationScheme<TYPE>::addMeshConstructorToTable \
169 <CentredFitScheme<TYPE, POLYNOMIAL, STENCIL>> \
170 add##SS##STENCIL##TYPE##MeshConstructorToTable_; \
172 surfaceInterpolationScheme<TYPE>::addMeshFluxConstructorToTable \
173 <CentredFitScheme<TYPE, POLYNOMIAL, STENCIL>> \
174 add##SS##STENCIL##TYPE##MeshFluxConstructorToTable_;
176 #define makeCentredFitSurfaceInterpolationScheme(SS, POLYNOMIAL, STENCIL) \
178 makeCentredFitSurfaceInterpolationTypeScheme(SS,POLYNOMIAL,STENCIL,scalar) \
179 makeCentredFitSurfaceInterpolationTypeScheme(SS,POLYNOMIAL,STENCIL,vector) \
180 makeCentredFitSurfaceInterpolationTypeScheme \
187 makeCentredFitSurfaceInterpolationTypeScheme(SS,POLYNOMIAL,STENCIL,symmTensor)\
188 makeCentredFitSurfaceInterpolationTypeScheme(SS,POLYNOMIAL,STENCIL,tensor)
const List< scalarList > & coeffs() const
Return reference to fit coefficients.
CentredFitScheme(const fvMesh &mesh, Istream &is)
Construct from mesh and Istream.
A class for managing temporary objects.
TypeName("CentredFitScheme")
Runtime type information.
static const Type & New(const Mesh &mesh, Args &&... args)
Get existing or create a new MeshObject.
Data for the quadratic fit correction interpolation scheme.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Mesh data needed to do the Finite Volume discretisation.
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > correction(const GeometricField< Type, fvPatchField, volMesh > &vf) 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() const
Return mesh reference.
Central-differencing interpolation scheme class.
Centred fit surface interpolation scheme which applies an explicit correction to linear.
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > weightedSum(const GeometricField< Type, fvPatchField, volMesh > &fld, const List< List< scalar >> &stencilWeights) const
Sum vol field contributions to create face values.