boundedConvectionScheme< Type > Class Template Reference

Bounded form of the selected convection scheme. More...

Inheritance diagram for boundedConvectionScheme< Type >:
[legend]
Collaboration diagram for boundedConvectionScheme< Type >:
[legend]

Public Member Functions

 TypeName ("bounded")
 Runtime type information. More...
 
 boundedConvectionScheme (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &is)
 Construct from flux and Istream. More...
 
const convectionScheme< Type > & scheme () const
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const
 
tmp< fvMatrix< Type > > fvmDiv (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDiv (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const
 
- Public Member Functions inherited from convectionScheme< Type >
virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (tmp, convectionScheme, Istream,(const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData),(mesh, faceFlux, schemeData))
 
 declareRunTimeSelectionTable (tmp, convectionScheme, Multivariate,(const fvMesh &mesh, const typename multivariateSurfaceInterpolationScheme< Type >::fieldTable &fields, const surfaceScalarField &faceFlux, Istream &schemeData),(mesh, fields, faceFlux, schemeData))
 
 convectionScheme (const convectionScheme &)
 Copy construct. More...
 
 convectionScheme (const fvMesh &mesh, const surfaceScalarField &)
 Construct from mesh, flux and Istream. More...
 
virtual ~convectionScheme ()
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const =0
 
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const =0
 
virtual tmp< fvMatrix< Type > > fvmDiv (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const =0
 
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDiv (const surfaceScalarField &, const GeometricField< Type, fvPatchField, volMesh > &) const =0
 
void operator= (const convectionScheme< Type > &)
 
- Public Member Functions inherited from refCount
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 Public Member Functions inherited from convectionScheme< Type >
static tmp< convectionScheme< Type > > New (const fvMesh &mesh, const surfaceScalarField &faceFlux, Istream &schemeData)
 Return a pointer to a new convectionScheme created on freestore. More...
 
static tmp< convectionScheme< Type > > New (const fvMesh &mesh, const typename multivariateSurfaceInterpolationScheme< Type >::fieldTable &fields, const surfaceScalarField &faceFlux, Istream &schemeData)
 Return a pointer to a new multivariate convectionScheme. More...
 

Detailed Description

template<class Type>
class Foam::fv::boundedConvectionScheme< Type >

Bounded form of the selected convection scheme.

Boundedness is achieved by subtracting div(phi)*vf or Sp(div(phi), vf) which is non-conservative if div(phi) != 0 but conservative otherwise.

Can be used for convection of bounded scalar properties in steady-state solvers to improve stability if insufficient convergence of the pressure equation causes temporary divergence of the flux field.

Source files

Definition at line 66 of file boundedConvectionScheme.H.

Constructor & Destructor Documentation

◆ boundedConvectionScheme()

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

Construct from flux and Istream.

Definition at line 93 of file boundedConvectionScheme.H.

References fv().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "bounded"  )

Runtime type information.

◆ scheme()

const convectionScheme< Type > & scheme

Definition at line 46 of file boundedConvectionScheme.C.

◆ interpolate()

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

Implements convectionScheme< Type >.

Definition at line 54 of file boundedConvectionScheme.C.

References phi.

◆ flux()

tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux ( const surfaceScalarField faceFlux,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
) const
virtual

Implements convectionScheme< Type >.

Definition at line 66 of file boundedConvectionScheme.C.

References flux::flux().

Here is the call graph for this function:

◆ fvmDiv()

tmp< fvMatrix< Type > > fvmDiv ( const surfaceScalarField faceFlux,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
) const
virtual

Implements convectionScheme< Type >.

Definition at line 78 of file boundedConvectionScheme.C.

References Foam::fvm::Sp(), and Foam::fvc::surfaceIntegrate().

Here is the call graph for this function:

◆ fvcDiv()

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDiv ( const surfaceScalarField faceFlux,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
) const
virtual

Implements convectionScheme< Type >.

Definition at line 92 of file boundedConvectionScheme.C.

References Foam::fvc::surfaceIntegrate().

Here is the call graph for this function:

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