Two-scheme Courant number based blending differencing scheme. More...
#include <CoBlended.H>


Public Member Functions | |
| TypeName ("CoBlended") | |
| Runtime type information. | |
| CoBlended (const fvMesh &mesh, Istream &is) | |
| Construct from mesh and Istream. | |
| CoBlended (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &is) | |
| Construct from mesh, faceFlux and Istream. | |
| virtual tmp< surfaceScalarField > | blendingFactor (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
| Return the face-based blending factor. | |
| tmp< surfaceScalarField > | weights (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
| Return the interpolation weighting factors. | |
| tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
| Return the face-interpolate of the given cell field. | |
| virtual bool | corrected () const |
| Return true if this scheme uses an explicit correction. | |
| virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | correction (const GeometricField< Type, fvPatchField, volMesh > &vf) const |
| Return the explicit correction to the face-interpolate. | |
| Public Member Functions inherited from surfaceInterpolationScheme< Type > | |
| TypeName ("surfaceInterpolationScheme") | |
| Runtime type information. | |
| 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. | |
| virtual | ~surfaceInterpolationScheme ()=default |
| Destructor. | |
| const fvMesh & | mesh () const |
| Return mesh reference. | |
| 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. | |
| 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. | |
| tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const tmp< GeometricField< Type, fvPatchField, volMesh > > &) const |
| Return the face-interpolate of the given tmp cell field. | |
| template<class SFType> | |
| Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< typename SFType::value_type, Type >::type, Foam::fvsPatchField, Foam::surfaceMesh > > | dotInterpolate (const SFType &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf, const tmp< surfaceScalarField > &tlambdas) |
| tmp< GeometricField< typename innerProduct< vector, scalar >::type, fvsPatchField, surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const GeometricField< scalar, fvPatchField, volMesh > &) const |
| Foam::tmp< Foam::GeometricField< typename Foam::innerProduct< Foam::vector, Foam::scalar >::type, Foam::fvsPatchField, Foam::surfaceMesh > > | dotInterpolate (const surfaceVectorField &Sf, const GeometricField< scalar, fvPatchField, volMesh > &) const |
| Public Member Functions inherited from refCount | |
| constexpr | refCount () noexcept |
| Default construct, initializing count to 0. | |
| int | use_count () const noexcept |
| Return the current reference count. | |
| bool | unique () const noexcept |
| Return true if the reference count is zero. | |
| void | operator++ () noexcept |
| Increment the reference count. | |
| void | operator++ (int) noexcept |
| Increment the reference count. | |
| void | operator-- () noexcept |
| Decrement the reference count. | |
| void | operator-- (int) noexcept |
| Decrement the reference count. | |
| Public Member Functions inherited from blendedSchemeBase< Type > | |
| blendedSchemeBase ()=default | |
| Constructor. | |
| virtual | ~blendedSchemeBase ()=default |
| Destructor. | |
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. | |
| static tmp< surfaceInterpolationScheme< Type > > | New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData) |
| Return new tmp interpolation scheme. | |
| 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. | |
| 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. | |
| static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &) |
| Return the face-interpolate of the given cell field. | |
Two-scheme Courant number based blending differencing scheme.
Similar to localBlended but uses a blending factor computed from the face-based Courant number and the lower and upper Courant number limits supplied:
![\[ weight = 1 - clamp((Co - Co1)/(Co2 - Co1), zero_one{})
\]](form_208.png)
where
![]() | = | Courant number below which scheme1 is used |
![]() | = | Courant number above which scheme2 is used |
The weight applies to the first scheme and 1-weight to the second scheme.
divSchemes
{
.
.
div(phi,U) Gauss CoBlended 1 LUST grad(U) 10 linearUpwind grad(U);
.
.
}
Definition at line 88 of file CoBlended.H.
Construct from mesh and Istream.
The name of the flux field is read from the Istream and looked-up from the mesh objectRegistry
Definition at line 150 of file CoBlended.H.
References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, surfaceInterpolationScheme< Type >::mesh(), and surfaceInterpolationScheme< Type >::New().

|
inline |
Construct from mesh, faceFlux and Istream.
Definition at line 185 of file CoBlended.H.
References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, surfaceInterpolationScheme< Type >::mesh(), and surfaceInterpolationScheme< Type >::New().

| TypeName | ( | "CoBlended< Type >" | ) |
Runtime type information.
|
inlinevirtual |
Return the face-based blending factor.
Implements blendedSchemeBase< Type >.
Definition at line 220 of file CoBlended.H.
References Foam::clamp(), Foam::dimMass, Foam::dimTime, Foam::dimVolume, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::fvc::interpolate(), Foam::mag(), surfaceInterpolationScheme< Type >::mesh(), IOobject::name(), and rho.
Referenced by correction(), interpolate(), and weights().


|
inlinevirtual |
Return the interpolation weighting factors.
Implements surfaceInterpolationScheme< Type >.
Definition at line 269 of file CoBlended.H.
References blendingFactor().

|
inlinevirtual |
Return the face-interpolate of the given cell field.
with explicit correction
Reimplemented from surfaceInterpolationScheme< Type >.
Definition at line 288 of file CoBlended.H.
References blendingFactor().

|
inlinevirtual |
Return true if this scheme uses an explicit correction.
Reimplemented from surfaceInterpolationScheme< Type >.
Definition at line 304 of file CoBlended.H.
Referenced by correction().

|
inlinevirtual |
Return the explicit correction to the face-interpolate.
for the given field
Reimplemented from surfaceInterpolationScheme< Type >.
Definition at line 316 of file CoBlended.H.
References blendingFactor(), corrected(), and correction().
Referenced by correction().

