Outlet-stabilised interpolation scheme which applies upwind differencing to the faces of the cells adjacent to outlets. More...
Public Member Functions | |
TypeName ("outletStabilised") | |
Runtime type information. More... | |
outletStabilised (const fvMesh &mesh, Istream &is) | |
Construct from mesh and Istream. More... | |
outletStabilised (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &is) | |
Construct from mesh, faceFlux and Istream. More... | |
tmp< surfaceScalarField > | weights (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
Return the interpolation weighting factors. More... | |
virtual bool | corrected () const |
Return true if this scheme uses an explicit correction. More... | |
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | correction (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
Return the explicit correction to the face-interpolate. More... | |
Public Member Functions inherited from surfaceInterpolationScheme< Type > | |
TypeName ("surfaceInterpolationScheme") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (tmp, surfaceInterpolationScheme, Mesh,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData)) | |
declareRunTimeSelectionTable (tmp, surfaceInterpolationScheme, MeshFlux,(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData),(mesh, faceFlux, schemeData)) | |
surfaceInterpolationScheme (const fvMesh &mesh) | |
Construct from mesh. More... | |
virtual | ~surfaceInterpolationScheme ()=default |
Destructor. More... | |
const fvMesh & | mesh () const |
Return mesh reference. More... | |
virtual tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf) const |
Return the face-interpolate of the given cell field. More... | |
tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const tmp< GeometricField< Type, fvPatchField, volMesh >> &) const |
Return the face-interpolate of the given tmp cell field. More... | |
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &) const |
Return the face-interpolate of the given cell field. More... | |
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const tmp< GeometricField< Type, fvPatchField, volMesh >> &) const |
Return the face-interpolate of the given tmp cell field. More... | |
Public Member Functions inherited from refCount | |
constexpr | refCount () noexcept |
Default construct, initializing count to 0. More... | |
int | use_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 Public Member Functions inherited from surfaceInterpolationScheme< Type > | |
static tmp< surfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, Istream &schemeData) |
Return new tmp interpolation scheme. More... | |
static tmp< surfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData) |
Return new tmp interpolation scheme. More... | |
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. More... | |
template<class SFType > | |
static tmp< GeometricField< typename innerProduct< typename SFType::value_type, Type >::type, fvsPatchField, surfaceMesh > > | dotInterpolate (const SFType &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf, const tmp< surfaceScalarField > &tlambdas) |
Return the face-interpolate of the given cell field. More... | |
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &) |
Return the face-interpolate of the given cell field. More... | |
Outlet-stabilised interpolation scheme which applies upwind differencing to the faces of the cells adjacent to outlets.
This is particularly useful to stabilise the velocity at entrainment boundaries for LES cases using linear or other centred differencing schemes.
Definition at line 61 of file outletStabilised.H.
|
inline |
Construct from mesh and Istream.
Definition at line 98 of file outletStabilised.H.
|
inline |
Construct from mesh, faceFlux and Istream.
Definition at line 122 of file outletStabilised.H.
TypeName | ( | "outletStabilised< Type >" | ) |
Runtime type information.
|
inlinevirtual |
Return the interpolation weighting factors.
Implements surfaceInterpolationScheme< Type >.
Definition at line 143 of file outletStabilised.H.
References fvMesh::boundary(), GeometricField< Type, PatchField, GeoMesh >::boundaryField(), cells, primitiveMesh::cells(), fvBoundaryMesh::faceCells(), forAll, Foam::isA(), primitiveMesh::isInternalFace(), surfaceInterpolationScheme< Type >::mesh(), Foam::pos0(), and tmp< T >::ref().
|
inlinevirtual |
Return true if this scheme uses an explicit correction.
Reimplemented from surfaceInterpolationScheme< Type >.
Definition at line 191 of file outletStabilised.H.
Referenced by outletStabilised< Type >::correction().
|
inlinevirtual |
Return the explicit correction to the face-interpolate.
set to zero on the near-boundary faces where upwind is applied
Reimplemented from surfaceInterpolationScheme< Type >.
Definition at line 203 of file outletStabilised.H.
References fvMesh::boundary(), GeometricField< Type, PatchField, GeoMesh >::boundaryField(), cells, primitiveMesh::cells(), outletStabilised< Type >::corrected(), fvBoundaryMesh::faceCells(), forAll, Foam::isA(), primitiveMesh::isInternalFace(), surfaceInterpolationScheme< Type >::mesh(), tmp< T >::ref(), and Foam::Zero.