57 template<
class FitDataType,
class ExtendedStencil,
class Polynomial>
60 public MeshObject<fvMesh, MoveableMeshObject, FitDataType>
65 const ExtendedStencil& stencil_;
68 const bool linearCorrection_;
74 const scalar linearLimitFactor_;
77 const scalar centralWeight_;
105 const ExtendedStencil&
stencil,
119 const ExtendedStencil&
stencil()
const 127 return linearLimitFactor_;
133 return centralWeight_;
150 return linearCorrection_;
label dim() const
Dimensionality of the geometry.
virtual void calcFit()=0
Calculate the fit for all the faces.
const ExtendedStencil & stencil() const
Return reference to the stencil.
bool linearCorrection() const
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh...
label minSize() const
Minimum stencil size.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
scalar centralWeight() const
Return weight for central stencil.
scalar linearLimitFactor() const
Factor the fit is allowed to deviate from the base scheme.
virtual ~FitData()=default
Destructor.
void findFaceDirs(vector &idir, vector &jdir, vector &kdir, const label faci)
Find the normal direction (i) and j and k directions for face faci.
const fvMesh & mesh() const
Mesh data needed to do the Finite Volume discretisation.
FitData(const fvMesh &mesh, const ExtendedStencil &stencil, const bool linearCorrection, const scalar linearLimitFactor, const scalar centralWeight)
Construct from components.
Data for the upwinded and centred polynomial fit interpolation schemes. The linearCorrection_ determi...
bool movePoints()
Recalculate weights (but not stencil) when the mesh moves.