Loading...
Searching...
No Matches
gaussGrad< Type > Class Template Reference

Basic second-order gradient scheme using face-interpolation and Gauss' theorem. More...

#include <gaussGrad.H>

Inheritance diagram for gaussGrad< Type >:
Collaboration diagram for gaussGrad< Type >:

Public Member Functions

 TypeName ("Gauss")
 Runtime type information.
 gaussGrad (const fvMesh &mesh)
 Construct from mesh.
 gaussGrad (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream.
virtual tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > calcGrad (const GeometricField< Type, fvPatchField, volMesh > &vsf, const word &name) const
 Return the gradient of the given field to the gradScheme::grad for optional caching.
virtual void calcGrad (GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > &res, const GeometricField< Type, fvPatchField, volMesh > &) const
 Calculate the grad of the given field into supplied field.
Public Member Functions inherited from gradScheme< Type >
virtual const wordtype () const =0
 Runtime type information.
 declareRunTimeSelectionTable (tmp, gradScheme, Istream,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
 gradScheme (const fvMesh &mesh)
 Construct from mesh.
virtual ~gradScheme ()=default
 Destructor.
const fvMeshmesh () const
 Return const reference to mesh.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad (const GeometricField< Type, fvPatchField, volMesh > &, const word &name) const
 Calculate and return the grad of the given field which may have been cached.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad (const GeometricField< Type, fvPatchField, volMesh > &) const
 Calculate and return the grad of the given field with the default name which may have been cached.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad (const tmp< GeometricField< Type, fvPatchField, volMesh > > &) const
 Calculate and return the grad of the given field with the default name which may have been cached.
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.

Static Public Member Functions

static tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > gradf (const GeometricField< Type, fvsPatchField, surfaceMesh > &, const word &name)
 Return the gradient of the given field calculated using Gauss' theorem on the given surface field.
static void correctBoundaryConditions (const GeometricField< Type, fvPatchField, volMesh > &, GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > &)
 Correct the boundary values of the gradient using the patchField snGrad functions.
Static Public Member Functions inherited from gradScheme< Type >
static tmp< gradScheme< Type > > New (const fvMesh &mesh, Istream &schemeData)
 Return a pointer to a new gradScheme created on freestore.

Detailed Description

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

Basic second-order gradient scheme using face-interpolation and Gauss' theorem.

Source files

Definition at line 59 of file gaussGrad.H.

Constructor & Destructor Documentation

◆ gaussGrad() [1/2]

template<class Type>
gaussGrad ( const fvMesh & mesh)
inline

Construct from mesh.

Definition at line 97 of file gaussGrad.H.

References gradScheme< Type >::mesh().

Here is the call graph for this function:

◆ gaussGrad() [2/2]

template<class Type>
gaussGrad ( const fvMesh & mesh,
Istream & is )
inline

Construct from mesh and Istream.

Definition at line 106 of file gaussGrad.H.

References IOstream::eof(), and gradScheme< Type >::mesh().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

template<class Type>
TypeName ( "Gauss" )

Runtime type information.

◆ gradf()

template<class Type>
Foam::tmp< Foam::GeometricField< typename Foam::outerProduct< Foam::vector, Type >::type, Foam::fvPatchField, Foam::volMesh > > gradf ( const GeometricField< Type, fvsPatchField, surfaceMesh > & ssf,
const word & name )
static

◆ calcGrad() [1/2]

template<class Type>
Foam::tmp< Foam::GeometricField< typename Foam::outerProduct< Foam::vector, Type >::type, Foam::fvPatchField, Foam::volMesh > > calcGrad ( const GeometricField< Type, fvPatchField, volMesh > & vsf,
const word & name ) const
virtual

Return the gradient of the given field to the gradScheme::grad for optional caching.

Implements gradScheme< Type >.

Reimplemented in iterativeGaussGrad< Type >.

Definition at line 115 of file gaussGrad.C.

References correctBoundaryConditions(), gradf(), interpolate(), Foam::name(), and tmp< T >::ref().

Here is the call graph for this function:

◆ calcGrad() [2/2]

template<class Type>
void calcGrad ( GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > & res,
const GeometricField< Type, fvPatchField, volMesh > & vsf ) const
virtual

Calculate the grad of the given field into supplied field.

Reimplemented from gradScheme< Type >.

Definition at line 137 of file gaussGrad.C.

References correctBoundaryConditions(), DebugPout, DimensionedField< Type, GeoMesh >::dimensions(), Foam::dimLength, Foam::endl(), forAll, interpolate(), DimensionedField< Type, GeoMesh >::mesh(), gradScheme< Type >::mesh(), IOobject::name(), and Foam::Zero.

Here is the call graph for this function:

◆ correctBoundaryConditions()

template<class Type>
void correctBoundaryConditions ( const GeometricField< Type, fvPatchField, volMesh > & vsf,
GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > & gGrad )
static

The documentation for this class was generated from the following files:
  • src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.H
  • src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.C