fvGeometryScheme Class Referenceabstract

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

Inheritance diagram for fvGeometryScheme:
Collaboration diagram for fvGeometryScheme:

Public Member Functions

 TypeName ("fvGeometryScheme")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (tmp, fvGeometryScheme, dict,(const fvMesh &mesh, const dictionary &dict),(mesh, dict))
 
 fvGeometryScheme (const fvMesh &mesh, const dictionary &dict)
 Construct from mesh. More...
 
virtual ~fvGeometryScheme ()=default
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual void movePoints ()
 Update basic geometric properties from provided points. More...
 
virtual void updateMesh (const mapPolyMesh &mpm)
 Update mesh for topology changes. More...
 
virtual tmp< surfaceScalarFieldweights () const =0
 Return linear difference weighting factors. More...
 
virtual tmp< surfaceScalarFielddeltaCoeffs () const =0
 Return cell-centre difference coefficients. More...
 
virtual tmp< surfaceScalarFieldnonOrthDeltaCoeffs () const =0
 Return non-orthogonal cell-centre difference coefficients. More...
 
virtual tmp< surfaceVectorFieldnonOrthCorrectionVectors () const =0
 Return non-orthogonality correction vectors. More...
 
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. More...
 
- 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< fvGeometrySchemeNew (const fvMesh &mesh, const dictionary &dict, const word &defaultScheme)
 Return new tmp interpolation scheme. More...
 

Protected Member Functions

bool setMeshPhi () const
 Set the mesh motion flux. More...
 

Protected Attributes

const fvMeshmesh_
 Hold reference to mesh. More...
 

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.

◆ ~fvGeometryScheme()

virtual ~fvGeometryScheme ( )
virtualdefault

Destructor.

Member Function Documentation

◆ setMeshPhi()

bool setMeshPhi ( ) const
protected

◆ TypeName()

TypeName ( "fvGeometryScheme"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

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

◆ New()

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

Return new tmp interpolation scheme.

Definition at line 96 of file fvGeometryScheme.C.

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

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

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

◆ mesh()

const fvMesh& mesh ( ) const
inline

Return mesh reference.

Definition at line 145 of file fvGeometryScheme.H.

References fvGeometryScheme::mesh_.

◆ movePoints()

void movePoints ( )
virtual

Update basic geometric properties from provided points.

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

Definition at line 131 of file fvGeometryScheme.C.

References primitiveMesh::clearGeom().

Referenced by basicFvGeometryScheme::movePoints(), stabilisedFvGeometryScheme::movePoints(), and highAspectRatioFvGeometryScheme::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 parallelFvGeometryScheme, and basicFvGeometryScheme.

◆ deltaCoeffs()

virtual tmp<surfaceScalarField> deltaCoeffs ( ) const
pure virtual

Return cell-centre difference coefficients.

Implemented in parallelFvGeometryScheme, and basicFvGeometryScheme.

◆ nonOrthDeltaCoeffs()

virtual tmp<surfaceScalarField> nonOrthDeltaCoeffs ( ) const
pure virtual

Return non-orthogonal cell-centre difference coefficients.

Implemented in parallelFvGeometryScheme, and basicFvGeometryScheme.

◆ nonOrthCorrectionVectors()

virtual tmp<surfaceVectorField> nonOrthCorrectionVectors ( ) const
pure virtual

Return non-orthogonality correction vectors.

Implemented in parallelFvGeometryScheme, and basicFvGeometryScheme.

◆ 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 parallelFvGeometryScheme, averageNeighbourFvGeometryScheme, solidBodyFvGeometryScheme, highAspectRatioFvGeometryScheme, stabilisedFvGeometryScheme, and basicFvGeometryScheme.

Member Data Documentation

◆ mesh_


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