Abstract base class for geometry calculation schemes. More...
#include <fvGeometryScheme.H>


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 fvMesh & | mesh () 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< surfaceScalarField > | weights () const =0 |
| Return linear difference weighting factors. | |
| virtual tmp< surfaceScalarField > | deltaCoeffs () const =0 |
| Return cell-centre difference coefficients. | |
| virtual tmp< surfaceScalarField > | nonOrthDeltaCoeffs () const =0 |
| Return non-orthogonal cell-centre difference coefficients. | |
| virtual tmp< surfaceVectorField > | nonOrthCorrectionVectors () 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 fvMesh & | mesh_ |
| Hold reference to mesh. | |
Abstract base class for geometry calculation schemes.
Definition at line 52 of file fvGeometryScheme.H.
|
inline |
Construct from mesh.
Definition at line 115 of file fvGeometryScheme.H.
References dict, mesh(), and mesh_.

|
virtualdefault |
Destructor.
|
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().


| TypeName | ( | "fvGeometryScheme" | ) |
Runtime type information.
|
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().


|
inline |
Return mesh reference.
Definition at line 145 of file fvGeometryScheme.H.
References mesh_.
Referenced by averageNeighbourFvGeometryScheme::averageNeighbourFvGeometryScheme(), basicFvGeometryScheme::basicFvGeometryScheme(), declareRunTimeSelectionTable(), fvGeometryScheme(), highAspectRatioFvGeometryScheme::highAspectRatioFvGeometryScheme(), highAspectRatioFvGeometryScheme::makeAverageCentres(), stabilisedFvGeometryScheme::makeFaceCentresAndAreas(), New(), parallelFvGeometryScheme::parallelFvGeometryScheme(), solidBodyFvGeometryScheme::solidBodyFvGeometryScheme(), stabilisedFvGeometryScheme::stabilisedFvGeometryScheme(), averageNeighbourFvGeometryScheme::TypeName(), basicFvGeometryScheme::TypeName(), highAspectRatioFvGeometryScheme::TypeName(), parallelFvGeometryScheme::TypeName(), solidBodyFvGeometryScheme::TypeName(), and stabilisedFvGeometryScheme::TypeName().

|
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().


|
virtual |
Update mesh for topology changes.
Reimplemented in parallelFvGeometryScheme, and solidBodyFvGeometryScheme.
Definition at line 145 of file fvGeometryScheme.C.
|
pure virtual |
Return linear difference weighting factors.
Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.
|
pure virtual |
Return cell-centre difference coefficients.
Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.
|
pure virtual |
Return non-orthogonal cell-centre difference coefficients.
Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.
|
pure virtual |
Return non-orthogonality correction vectors.
Implemented in basicFvGeometryScheme, and parallelFvGeometryScheme.
|
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.
|
protected |
Hold reference to mesh.
Definition at line 76 of file fvGeometryScheme.H.
Referenced by averageNeighbourFvGeometryScheme::averageCentres(), averageNeighbourFvGeometryScheme::averageNeighbourCentres(), highAspectRatioFvGeometryScheme::calcAspectRatioWeights(), averageNeighbourFvGeometryScheme::clipFaceTet(), averageNeighbourFvGeometryScheme::clipPyramids(), basicFvGeometryScheme::deltaCoeffs(), fvGeometryScheme(), parallelFvGeometryScheme::geometry(), averageNeighbourFvGeometryScheme::makeNonOrthoWeights(), averageNeighbourFvGeometryScheme::makePyrHeights(), mesh(), averageNeighbourFvGeometryScheme::movePoints(), basicFvGeometryScheme::movePoints(), movePoints(), highAspectRatioFvGeometryScheme::movePoints(), solidBodyFvGeometryScheme::movePoints(), stabilisedFvGeometryScheme::movePoints(), basicFvGeometryScheme::nonOrthCorrectionVectors(), basicFvGeometryScheme::nonOrthDeltaCoeffs(), setMeshPhi(), basicFvGeometryScheme::updateGeom(), highAspectRatioFvGeometryScheme::updateGeom(), parallelFvGeometryScheme::updateGeom(), solidBodyFvGeometryScheme::updateGeom(), stabilisedFvGeometryScheme::updateGeom(), and basicFvGeometryScheme::weights().