gaussLaplacianScheme< Type, GType > Class Template Reference

Basic second-order laplacian using face-gradients and Gauss' theorem. More...

Inheritance diagram for gaussLaplacianScheme< Type, GType >:
Collaboration diagram for gaussLaplacianScheme< Type, GType >:

Public Member Functions

 TypeName ("Gauss")
 Runtime type information. More...
 
 gaussLaplacianScheme (const fvMesh &mesh)
 Construct null. More...
 
 gaussLaplacianScheme (const fvMesh &mesh, Istream &is)
 Construct from Istream. More...
 
 gaussLaplacianScheme (const fvMesh &mesh, const tmp< surfaceInterpolationScheme< GType >> &igs, const tmp< snGradScheme< Type >> &sngs)
 Construct from mesh, interpolation and snGradScheme schemes. More...
 
virtual ~gaussLaplacianScheme ()=default
 Destructor. More...
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< fvMatrix< Type > > fvmLaplacian (const GeometricField< GType, fvsPatchField, surfaceMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< GType, fvsPatchField, surfaceMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
 
template<>
tmp< fvMatrix< scalar > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< scalar, fvPatchField, volMesh > &)
 
template<>
tmp< GeometricField< scalar, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< scalar, fvPatchField, volMesh > &)
 
template<>
tmp< fvMatrix< vector > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< vector, fvPatchField, volMesh > &)
 
template<>
tmp< GeometricField< vector, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< vector, fvPatchField, volMesh > &)
 
template<>
tmp< fvMatrix< sphericalTensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< sphericalTensor, fvPatchField, volMesh > &)
 
template<>
tmp< GeometricField< sphericalTensor, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< sphericalTensor, fvPatchField, volMesh > &)
 
template<>
tmp< fvMatrix< symmTensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< symmTensor, fvPatchField, volMesh > &)
 
template<>
tmp< GeometricField< symmTensor, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< symmTensor, fvPatchField, volMesh > &)
 
template<>
tmp< fvMatrix< tensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< tensor, fvPatchField, volMesh > &)
 
template<>
tmp< GeometricField< tensor, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &, const GeometricField< tensor, fvPatchField, volMesh > &)
 
template<>
Foam::tmp< Foam::GeometricField< Foam::scalar, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< scalar, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::fvMatrix< Foam::vector > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< vector, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::GeometricField< Foam::vector, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< vector, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::fvMatrix< Foam::sphericalTensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< sphericalTensor, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::GeometricField< Foam::sphericalTensor, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< sphericalTensor, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::fvMatrix< Foam::symmTensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< symmTensor, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::GeometricField< Foam::symmTensor, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< symmTensor, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::fvMatrix< Foam::tensor > > fvmLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< tensor, fvPatchField, volMesh > &vf)
 
template<>
Foam::tmp< Foam::GeometricField< Foam::tensor, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian (const GeometricField< scalar, fvsPatchField, surfaceMesh > &gamma, const GeometricField< tensor, fvPatchField, volMesh > &vf)
 
- Public Member Functions inherited from laplacianScheme< Type, GType >
virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (tmp, laplacianScheme, Istream,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
 
 laplacianScheme (const fvMesh &mesh)
 Construct from mesh. More...
 
 laplacianScheme (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream. More...
 
 laplacianScheme (const fvMesh &mesh, const tmp< surfaceInterpolationScheme< GType >> &igs, const tmp< snGradScheme< Type >> &sngs)
 Construct from mesh, interpolation and snGradScheme schemes. More...
 
virtual ~laplacianScheme ()=default
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< fvMatrix< Type > > fvmLaplacian (const GeometricField< GType, fvPatchField, volMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
 
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcLaplacian (const GeometricField< GType, fvPatchField, volMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
 
- 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...
 

Static Public Member Functions

static tmp< fvMatrix< Type > > fvmLaplacianUncorrected (const surfaceScalarField &gammaMagSf, const surfaceScalarField &deltaCoeffs, const GeometricField< Type, fvPatchField, volMesh > &)
 
- Static Public Member Functions inherited from laplacianScheme< Type, GType >
static tmp< laplacianScheme< Type, GType > > New (const fvMesh &mesh, Istream &schemeData)
 Return a pointer to a new laplacianScheme created on freestore. More...
 

Additional Inherited Members

- Protected Attributes inherited from laplacianScheme< Type, GType >
const fvMeshmesh_
 
tmp< surfaceInterpolationScheme< GType > > tinterpGammaScheme_
 
tmp< snGradScheme< Type > > tsnGradScheme_
 

Detailed Description

template<class Type, class GType>
class Foam::fv::gaussLaplacianScheme< Type, GType >

Basic second-order laplacian using face-gradients and Gauss' theorem.

Source files

Definition at line 56 of file gaussLaplacianScheme.H.

Constructor & Destructor Documentation

◆ gaussLaplacianScheme() [1/3]

gaussLaplacianScheme ( const fvMesh mesh)
inline

Construct null.

Definition at line 92 of file gaussLaplacianScheme.H.

◆ gaussLaplacianScheme() [2/3]

gaussLaplacianScheme ( const fvMesh mesh,
Istream is 
)
inline

Construct from Istream.

Definition at line 100 of file gaussLaplacianScheme.H.

◆ gaussLaplacianScheme() [3/3]

gaussLaplacianScheme ( const fvMesh mesh,
const tmp< surfaceInterpolationScheme< GType >> &  igs,
const tmp< snGradScheme< Type >> &  sngs 
)
inline

Construct from mesh, interpolation and snGradScheme schemes.

Definition at line 109 of file gaussLaplacianScheme.H.

◆ ~gaussLaplacianScheme()

virtual ~gaussLaplacianScheme ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "Gauss"  )

Runtime type information.

◆ fvmLaplacianUncorrected()

◆ fvcLaplacian() [1/12]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcLaplacian ( const GeometricField< Type, fvPatchField, volMesh > &  vf)
virtual

Implements laplacianScheme< Type, GType >.

Definition at line 133 of file gaussLaplacianScheme.C.

References Foam::fvc::div(), mesh, IOobject::name(), tmp< T >::ref(), and Foam::fvc::snGrad().

Here is the call graph for this function:

◆ fvmLaplacian() [1/10]

tmp< fvMatrix< Type > > fvmLaplacian ( const GeometricField< GType, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

◆ fvcLaplacian() [2/12]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcLaplacian ( const GeometricField< GType, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

Implements laplacianScheme< Type, GType >.

Definition at line 200 of file gaussLaplacianScheme.C.

References Foam::fvc::div(), gamma, mesh, IOobject::name(), tmp< T >::ref(), Foam::Sn(), and Foam::fvc::snGrad().

Here is the call graph for this function:

◆ fvmLaplacian() [2/10]

tmp< fvMatrix< scalar > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< scalar, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [3/12]

tmp< GeometricField< scalar, fvPatchField, volMesh > > fvcLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< scalar, fvPatchField, volMesh > &   
)

◆ fvmLaplacian() [3/10]

tmp< fvMatrix< vector > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< vector, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [4/12]

tmp< GeometricField< vector, fvPatchField, volMesh > > fvcLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< vector, fvPatchField, volMesh > &   
)

◆ fvmLaplacian() [4/10]

tmp< fvMatrix< sphericalTensor > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< sphericalTensor, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [5/12]

◆ fvmLaplacian() [5/10]

tmp< fvMatrix< symmTensor > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< symmTensor, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [6/12]

◆ fvmLaplacian() [6/10]

tmp< fvMatrix< tensor > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< tensor, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [7/12]

tmp< GeometricField< tensor, fvPatchField, volMesh > > fvcLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  ,
const GeometricField< tensor, fvPatchField, volMesh > &   
)

◆ fvcLaplacian() [8/12]

Foam::tmp< Foam::GeometricField< Foam::scalar, Foam::fvPatchField, Foam::volMesh > > fvcLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< scalar, fvPatchField, volMesh > &  vf 
)

Definition at line 109 of file gaussLaplacianSchemes.C.

◆ fvmLaplacian() [7/10]

Foam::tmp< Foam::fvMatrix< Foam::vector > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< vector, fvPatchField, volMesh > &  vf 
)

Definition at line 110 of file gaussLaplacianSchemes.C.

◆ fvcLaplacian() [9/12]

Definition at line 110 of file gaussLaplacianSchemes.C.

◆ fvmLaplacian() [8/10]

Definition at line 111 of file gaussLaplacianSchemes.C.

◆ fvcLaplacian() [10/12]

◆ fvmLaplacian() [9/10]

Foam::tmp< Foam::fvMatrix< Foam::symmTensor > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< symmTensor, fvPatchField, volMesh > &  vf 
)

Definition at line 112 of file gaussLaplacianSchemes.C.

◆ fvcLaplacian() [11/12]

◆ fvmLaplacian() [10/10]

Foam::tmp< Foam::fvMatrix< Foam::tensor > > fvmLaplacian ( const GeometricField< scalar, fvsPatchField, surfaceMesh > &  gamma,
const GeometricField< tensor, fvPatchField, volMesh > &  vf 
)

Definition at line 113 of file gaussLaplacianSchemes.C.

◆ fvcLaplacian() [12/12]

Definition at line 113 of file gaussLaplacianSchemes.C.


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