Public Member Functions | List of all members
limiterBlended< Type > Class Template Reference

Blends two specified schemes using the limiter function provided by a limitedSurfaceInterpolationScheme. More...

Inheritance diagram for limiterBlended< Type >:
Inheritance graph
[legend]
Collaboration diagram for limiterBlended< Type >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("limiterBlended")
 
 limiterBlended (const fvMesh &mesh, Istream &is)
 
 limiterBlended (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &is)
 
tmp< surfaceScalarFieldweights (const GeometricField< Type, fvPatchField, volMesh > &vf) const
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &vf) const
 
virtual bool corrected () const
 
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > correction (const GeometricField< Type, fvPatchField, volMesh > &vf) const
 
- Public Member Functions inherited from surfaceInterpolationScheme< Type >
 TypeName ("surfaceInterpolationScheme")
 
 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)
 
virtual ~surfaceInterpolationScheme ()=default
 
const fvMeshmesh () const
 
virtual tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate (const surfaceVectorField &Sf, const GeometricField< Type, fvPatchField, volMesh > &vf) const
 
tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate (const surfaceVectorField &Sf, const tmp< GeometricField< Type, fvPatchField, volMesh >> &) const
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const tmp< GeometricField< Type, fvPatchField, volMesh >> &) const
 
- Public Member Functions inherited from refCount
constexpr refCount () noexcept
 
int count () const noexcept
 
bool unique () const noexcept
 
void operator++ () noexcept
 
void operator++ (int) noexcept
 
void operator-- () noexcept
 
void operator-- (int) noexcept
 

Additional Inherited Members

- Static Public Member Functions inherited from surfaceInterpolationScheme< Type >
static tmp< surfaceInterpolationScheme< Type > > New (const fvMesh &mesh, Istream &schemeData)
 
static tmp< surfaceInterpolationScheme< Type > > New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData)
 
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &, const tmp< surfaceScalarField > &)
 
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)
 
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const GeometricField< Type, fvPatchField, volMesh > &, const tmp< surfaceScalarField > &)
 

Detailed Description

template<class Type>
class Foam::limiterBlended< Type >

Blends two specified schemes using the limiter function provided by a limitedSurfaceInterpolationScheme.

The limited scheme is specified first followed by the scheme to be scaled by the limiter and then the scheme scaled by 1 - limiter e.g.

div(phi,U) Gauss limiterBlended vanLeer linear linearUpwind grad(U);

Source files

Definition at line 56 of file limiterBlended.H.

Constructor & Destructor Documentation

◆ limiterBlended() [1/2]

limiterBlended ( const fvMesh mesh,
Istream is 
)
inline

Definition at line 91 of file limiterBlended.H.

◆ limiterBlended() [2/2]

limiterBlended ( const fvMesh mesh,
const surfaceScalarField faceFlux,
Istream is 
)
inline

Definition at line 113 of file limiterBlended.H.

Member Function Documentation

◆ TypeName()

TypeName ( "limiterBlended< Type >"  )

◆ weights()

tmp<surfaceScalarField> weights ( const GeometricField< Type, fvPatchField, volMesh > &  vf) const
inlinevirtual

Implements surfaceInterpolationScheme< Type >.

Definition at line 139 of file limiterBlended.H.

References Foam::limiter().

Here is the call graph for this function:

◆ interpolate()

tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > interpolate ( const GeometricField< Type, fvPatchField, volMesh > &  vf) const
inlinevirtual

Reimplemented from surfaceInterpolationScheme< Type >.

Definition at line 156 of file limiterBlended.H.

References Foam::limiter().

Here is the call graph for this function:

◆ corrected()

virtual bool corrected ( ) const
inlinevirtual

Reimplemented from surfaceInterpolationScheme< Type >.

Definition at line 170 of file limiterBlended.H.

Referenced by limiterBlended< Type >::correction().

Here is the caller graph for this function:

◆ correction()

virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > correction ( const GeometricField< Type, fvPatchField, volMesh > &  vf) const
inlinevirtual

Reimplemented from surfaceInterpolationScheme< Type >.

Definition at line 180 of file limiterBlended.H.

References limiterBlended< Type >::corrected(), and Foam::limiter().

Here is the call graph for this function:

The documentation for this class was generated from the following file: