Loading...
Searching...
No Matches
fvGeometryScheme Class Referenceabstract

Abstract base class for geometry calculation schemes. More...

#include <fvGeometryScheme.H>

Inheritance diagram for fvGeometryScheme:
Collaboration diagram for fvGeometryScheme:

Public Member Functions

 TypeName ("fvGeometryScheme")
 Runtime type information.
 declareRunTimeSelectionTable (tmp, fvGeometryScheme, dict,(const fvMesh &mesh, const dictionary &dict),(mesh, dict))
 fvGeometryScheme (const fvMesh &mesh, const dictionary &dict)
 Construct from mesh.
virtual ~fvGeometryScheme ()=default
 Destructor.
const fvMeshmesh () const
 Return mesh reference.
virtual void movePoints ()
 Update basic geometric properties from provided points.
virtual void updateMesh (const mapPolyMesh &mpm)
 Update mesh for topology changes.
virtual tmp< surfaceScalarFieldweights () const =0
 Return linear difference weighting factors.
virtual tmp< surfaceScalarFielddeltaCoeffs () const =0
 Return cell-centre difference coefficients.
virtual tmp< surfaceScalarFieldnonOrthDeltaCoeffs () const =0
 Return non-orthogonal cell-centre difference coefficients.
virtual tmp< surfaceVectorFieldnonOrthCorrectionVectors () const =0
 Return non-orthogonality correction vectors.
virtual bool updateGeom (const pointField &points, const refPtr< pointField > &oldPoints, pointField &faceCentres, vectorField &faceAreas, pointField &cellCentres, scalarField &cellVolumes) const =0
 Calculate geometry quantities using mesh topology and provided points. If oldPoints provided only does local update. Returns true if anything changed, false otherwise.
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< fvGeometryScheme > New (const fvMesh &mesh, const dictionary &dict, const word &defaultScheme)
 Return new tmp interpolation scheme.

Protected Member Functions

bool setMeshPhi () const
 Set the mesh motion flux.

Protected Attributes

const fvMeshmesh_
 Hold reference to mesh.

Detailed Description

Abstract base class for geometry calculation schemes.

Source files

Definition at line 52 of file fvGeometryScheme.H.

Constructor & Destructor Documentation

◆ fvGeometryScheme()

fvGeometryScheme ( const fvMesh & mesh,
const dictionary & dict )
inline

Construct from mesh.

Definition at line 115 of file fvGeometryScheme.H.

References dict, mesh(), and mesh_.

Here is the call graph for this function:

◆ ~fvGeometryScheme()

virtual ~fvGeometryScheme ( )
virtualdefault

Destructor.

Member Function Documentation

◆ setMeshPhi()

bool setMeshPhi ( ) const
protected

Set the mesh motion flux.

Definition at line 37 of file fvGeometryScheme.C.

References Foam::abort(), f(), Foam::FatalError, FatalErrorInFunction, forAll, mesh_, pp(), and UList< T >::size().

Referenced by movePoints().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TypeName()

TypeName ( "fvGeometryScheme" )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( tmp ,
fvGeometryScheme ,
dict ,
(const fvMesh &mesh, const dictionary &dict) ,
(mesh, dict)  )

References dict, and mesh().

Here is the call graph for this function:

◆ New()

Foam::tmp< Foam::fvGeometryScheme > New ( const fvMesh & mesh,
const dictionary & dict,
const word & defaultScheme )
static

Return new tmp interpolation scheme.

Definition at line 95 of file fvGeometryScheme.C.

References DebugInFunction, dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInLookup, keyType::LITERAL, mesh(), and entry::stream().

Referenced by parallelFvGeometryScheme::geometry(), and surfaceInterpolation::geometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mesh()

◆ movePoints()

void movePoints ( )
virtual

Update basic geometric properties from provided points.

Reimplemented in averageNeighbourFvGeometryScheme, basicFvGeometryScheme, highAspectRatioFvGeometryScheme, parallelFvGeometryScheme, solidBodyFvGeometryScheme, and stabilisedFvGeometryScheme.

Definition at line 131 of file fvGeometryScheme.C.

References primitiveMesh::clearGeom(), mesh_, and setMeshPhi().

Referenced by basicFvGeometryScheme::movePoints(), highAspectRatioFvGeometryScheme::movePoints(), and stabilisedFvGeometryScheme::movePoints().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateMesh()

void updateMesh ( const mapPolyMesh & mpm)
virtual

Update mesh for topology changes.

Reimplemented in parallelFvGeometryScheme, and solidBodyFvGeometryScheme.

Definition at line 145 of file fvGeometryScheme.C.

◆ weights()

virtual tmp< surfaceScalarField > weights ( ) const
pure virtual

Return linear difference weighting factors.

Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.

◆ deltaCoeffs()

virtual tmp< surfaceScalarField > deltaCoeffs ( ) const
pure virtual

Return cell-centre difference coefficients.

Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.

◆ nonOrthDeltaCoeffs()

virtual tmp< surfaceScalarField > nonOrthDeltaCoeffs ( ) const
pure virtual

Return non-orthogonal cell-centre difference coefficients.

Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.

◆ nonOrthCorrectionVectors()

virtual tmp< surfaceVectorField > nonOrthCorrectionVectors ( ) const
pure virtual

Return non-orthogonality correction vectors.

Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.

◆ updateGeom()

virtual bool updateGeom ( const pointField & points,
const refPtr< pointField > & oldPoints,
pointField & faceCentres,
vectorField & faceAreas,
pointField & cellCentres,
scalarField & cellVolumes ) const
pure virtual

Calculate geometry quantities using mesh topology and provided points. If oldPoints provided only does local update. Returns true if anything changed, false otherwise.

Implemented in averageNeighbourFvGeometryScheme, basicFvGeometryScheme, highAspectRatioFvGeometryScheme, parallelFvGeometryScheme, solidBodyFvGeometryScheme, and stabilisedFvGeometryScheme.

References points.

Member Data Documentation

◆ mesh_


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