38#ifndef skewCorrectedEdgeInterpolation_H
39#define skewCorrectedEdgeInterpolation_H
117 return tScheme_().weights(vf);
124 tScheme_().corrected() || (this->
mesh()).
skew();
143 "skewCorrected::skewCorrection(" + vf.
name() +
')',
154 for (
direction cmpt=0; cmpt<pTraits<Type>::nComponents; ++cmpt)
179 virtual tmp<GeometricField<Type, faePatchField, edgeMesh>>
182 const GeometricField<Type, faPatchField, areaMesh>& vf
195 return tScheme_().correction(vf);
204 tmp<GeometricField<Type, faePatchField, edgeMesh>>
const dimensionSet & dimensions() const noexcept
Return dimensions.
Generic GeometricField class.
void replace(const direction d, const GeometricField< cmptType, PatchField, GeoMesh > &gcf)
Replace specified field component with content from another field.
Internal & ref(const bool updateAccessTime=true)
Same as internalFieldRef().
tmp< GeometricField< cmptType, PatchField, GeoMesh > > component(const direction) const
Return a component of the field.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
const word & name() const noexcept
Return the object name.
const objectRegistry & db() const noexcept
Return the local objectRegistry.
const fileName & instance() const noexcept
Read access to instance path component.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Generic dimensioned Type class.
static tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate(const GeometricField< Type, faPatchField, areaMesh > &, const tmp< edgeScalarField > &, const tmp< edgeScalarField > &)
Return the face-interpolate of the given cell field.
static tmp< edgeInterpolationScheme< Type > > New(const faMesh &mesh, Istream &schemeData)
Return new tmp interpolation scheme.
edgeInterpolationScheme(const edgeInterpolationScheme &)=delete
No copy construct.
const faMesh & mesh() const
Return mesh reference.
Finite area mesh (used for 2-D non-Euclidian finite area method) defined using a patch of faces on a ...
Basic second-order gradient scheme using face-interpolation and Gauss' theorem.
Central-differencing interpolation scheme class.
A traits class, which is primarily used for primitives and vector-space.
virtual bool corrected() const
Return true if this scheme uses an explicit correction.
tmp< GeometricField< Type, faePatchField, edgeMesh > > skewCorrection(const GeometricField< Type, faPatchField, areaMesh > &vf) const
void operator=(const skewCorrectedEdgeInterpolation &)=delete
No copy assignment.
skewCorrectedEdgeInterpolation(const faMesh &mesh, Istream &is)
Construct from Istream.
skewCorrectedEdgeInterpolation(const faMesh &mesh, const edgeScalarField &faceFlux, Istream &is)
Construct from mesh, faceFlux and blendingFactor.
TypeName("skewCorrected")
Runtime type information.
virtual tmp< edgeScalarField > weights(const GeometricField< Type, faPatchField, areaMesh > &vf) const
Return the interpolation weighting factors.
skewCorrectedEdgeInterpolation(const skewCorrectedEdgeInterpolation &)=delete
No copy construct.
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > correction(const GeometricField< Type, faPatchField, areaMesh > &vf) const
Return the explicit correction to the face-interpolate.
A class for managing temporary objects.
T & ref() const
Return non-const reference to the contents of a non-null managed pointer.
GeometricField< vector, faePatchField, edgeMesh > edgeVectorField
GeometricField< scalar, faePatchField, edgeMesh > edgeScalarField
static constexpr const zero Zero
Global zero (0).
dimensionedTensor skew(const dimensionedTensor &dt)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.