Central-difference lnGrad scheme with limited non-orthogonal correction. More...
Public Member Functions | |
TypeName ("limited") | |
Runtime type information. More... | |
limitedLnGrad (const faMesh &mesh) | |
Construct from mesh. More... | |
limitedLnGrad (const faMesh &mesh, Istream &is) | |
Construct from mesh and data stream. More... | |
virtual | ~limitedLnGrad () |
virtual tmp< edgeScalarField > | deltaCoeffs (const GeometricField< Type, faPatchField, areaMesh > &) const |
Return the interpolation weighting factors for the given field. More... | |
virtual bool | corrected () const |
Return true if this scheme uses an explicit correction. More... | |
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > | correction (const GeometricField< Type, faPatchField, areaMesh > &) const |
Return the explicit correction to the limitedLnGrad. More... | |
![]() | |
declareRunTimeSelectionTable (tmp, lnGradScheme, Mesh,(const faMesh &mesh, Istream &schemeData),(mesh, schemeData)) | |
lnGradScheme (const faMesh &mesh) | |
Construct from mesh. More... | |
virtual | ~lnGradScheme () |
Destructor. More... | |
const faMesh & | mesh () const |
Return mesh reference. More... | |
virtual tmp< GeometricField< Type, faePatchField, edgeMesh > > | lnGrad (const GeometricField< Type, faPatchField, areaMesh > &) const |
Return the lnGrad of the given cell field. More... | |
tmp< GeometricField< Type, faePatchField, edgeMesh > > | lnGrad (const tmp< GeometricField< Type, faPatchField, areaMesh >> &) const |
Return the lnGrad of the given tmp cell field. More... | |
![]() | |
constexpr | refCount () noexcept |
Default construct, initializing count to 0. More... | |
int | count () const noexcept |
Return the current reference count. More... | |
bool | unique () const noexcept |
Return true if the reference count is zero. More... | |
void | operator++ () noexcept |
Increment the reference count. More... | |
void | operator++ (int) noexcept |
Increment the reference count. More... | |
void | operator-- () noexcept |
Decrement the reference count. More... | |
void | operator-- (int) noexcept |
Decrement the reference count. More... | |
Additional Inherited Members | |
![]() | |
static tmp< lnGradScheme< Type > > | New (const faMesh &mesh, Istream &schemeData) |
Return new tmp interpolation scheme. More... | |
static tmp< GeometricField< Type, faePatchField, edgeMesh > > | lnGrad (const GeometricField< Type, faPatchField, areaMesh > &, const tmp< edgeScalarField > &, const word &snGradName="lnGrad") |
Return the lnGrad of the given cell field. More... | |
Central-difference lnGrad scheme with limited non-orthogonal correction.
The limiter is controlled by a coefficient with a value between 0 and 1 which when 0 switches the correction off and the scheme behaves as uncorrectedSnGrad, when set to 1 the full correction is applied and the scheme behaves as correctedSnGrad and when set to 0.5 the limiter is calculated such that the non-orthogonal contribution does not exceed the orthogonal part.
Author Hrvoje Jasak, Wikki Ltd.
Definition at line 66 of file limitedLnGrad.H.
|
inline |
Construct from mesh.
Definition at line 91 of file limitedLnGrad.H.
|
inline |
Construct from mesh and data stream.
Definition at line 98 of file limitedLnGrad.H.
References Foam::exit(), Foam::FatalIOError, and FatalIOErrorInFunction.
|
virtual |
Definition at line 47 of file limitedLnGrad.C.
TypeName | ( | "limited" | ) |
Runtime type information.
|
inlinevirtual |
Return the interpolation weighting factors for the given field.
Implements lnGradScheme< Type >.
Definition at line 122 of file limitedLnGrad.H.
References edgeInterpolation::deltaCoeffs(), and lnGradScheme< Type >::mesh().
|
inlinevirtual |
Return true if this scheme uses an explicit correction.
Reimplemented from lnGradScheme< Type >.
Definition at line 130 of file limitedLnGrad.H.
References lnGradScheme< Type >::mesh(), and edgeInterpolation::orthogonal().
|
virtual |
Return the explicit correction to the limitedLnGrad.
for the given field
Reimplemented from lnGradScheme< Type >.
Definition at line 56 of file limitedLnGrad.C.
References Foam::average(), Foam::correction(), Foam::expressions::patchExpr::debug, Foam::dimless, Foam::endl(), Foam::Info, Foam::limiter(), Foam::mag(), Foam::max(), mesh, and Foam::min().