Geometry calculation scheme with automatic stabilisation for high-aspect ratio cells. More...
#include <highAspectRatioFvGeometryScheme.H>


Public Member Functions | |
| TypeName ("highAspectRatio") | |
| Runtime type information. | |
| highAspectRatioFvGeometryScheme (const fvMesh &mesh, const dictionary &dict) | |
| Construct from mesh. | |
| virtual | ~highAspectRatioFvGeometryScheme ()=default |
| Destructor. | |
| virtual void | movePoints () |
| Do what is necessary if the mesh has moved. | |
| virtual bool | updateGeom (const pointField &points, const refPtr< pointField > &oldPoints, pointField &faceCentres, vectorField &faceAreas, pointField &cellCentres, scalarField &cellVolumes) const |
| 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 basicFvGeometryScheme | |
| TypeName ("basic") | |
| Runtime type information. | |
| basicFvGeometryScheme (const fvMesh &mesh, const dictionary &dict) | |
| Construct from mesh. | |
| virtual | ~basicFvGeometryScheme ()=default |
| Destructor. | |
| virtual tmp< surfaceScalarField > | weights () const |
| Return linear difference weighting factors. | |
| virtual tmp< surfaceScalarField > | deltaCoeffs () const |
| Return cell-centre difference coefficients. | |
| virtual tmp< surfaceScalarField > | nonOrthDeltaCoeffs () const |
| Return non-orthogonal cell-centre difference coefficients. | |
| virtual tmp< surfaceVectorField > | nonOrthCorrectionVectors () const |
| Return non-orthogonality correction vectors. | |
| Public Member Functions inherited from fvGeometryScheme | |
| 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 | updateMesh (const mapPolyMesh &mpm) |
| Update mesh for topology changes. | |
| 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. | |
Protected Member Functions | |
| void | calcAspectRatioWeights (scalarField &cellWeight, scalarField &faceWeight) const |
| Calculate cell and face weight. Is 0 for cell < minAspect, 1 for. | |
| Protected Member Functions inherited from fvGeometryScheme | |
| bool | setMeshPhi () const |
| Set the mesh motion flux. | |
Static Protected Member Functions | |
| static void | makeAverageCentres (const polyMesh &mesh, const pointField &points, const pointField &faceAreas, const scalarField &magFaceAreas, pointField &faceCentres, pointField &cellCentres) |
| Helper : calculate (weighted) average face and cell centres. | |
Protected Attributes | |
| const scalar | minAspect_ |
| const scalar | maxAspect_ |
| Protected Attributes inherited from fvGeometryScheme | |
| const fvMesh & | mesh_ |
| Hold reference to mesh. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from fvGeometryScheme | |
| static tmp< fvGeometryScheme > | New (const fvMesh &mesh, const dictionary &dict, const word &defaultScheme) |
| Return new tmp interpolation scheme. | |
Geometry calculation scheme with automatic stabilisation for high-aspect ratio cells.
Definition at line 50 of file highAspectRatioFvGeometryScheme.H.
| highAspectRatioFvGeometryScheme | ( | const fvMesh & | mesh, |
| const dictionary & | dict ) |
Construct from mesh.
Definition at line 341 of file highAspectRatioFvGeometryScheme.C.
References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, maxAspect_, fvGeometryScheme::mesh(), minAspect_, and movePoints().

|
virtualdefault |
Destructor.
References points.
|
protected |
Calculate cell and face weight. Is 0 for cell < minAspect, 1 for.
cell > maxAspect
Definition at line 156 of file highAspectRatioFvGeometryScheme.C.
References Foam::clamp(), delta, Foam::max(), maxAspect_, fvGeometryScheme::mesh_, minAspect_, List< T >::setSize(), and syncTools::swapBoundaryCellList().
Referenced by averageNeighbourFvGeometryScheme::movePoints(), and movePoints().


|
staticprotected |
Helper : calculate (weighted) average face and cell centres.
Definition at line 219 of file highAspectRatioFvGeometryScheme.C.
References triangle< point, const point & >::centre(), Foam::endl(), f(), forAll, Foam::isA(), Foam::mag(), fvGeometryScheme::mesh(), nPoints, p, pbm, pi(), Foam::Pout, pp(), List< T >::setSize(), and Foam::Zero.
Referenced by movePoints(), and updateGeom().


| TypeName | ( | "highAspectRatio" | ) |
Runtime type information.
References dict, and fvGeometryScheme::mesh().

|
virtual |
Do what is necessary if the mesh has moved.
Reimplemented from basicFvGeometryScheme.
Reimplemented in averageNeighbourFvGeometryScheme.
Definition at line 373 of file highAspectRatioFvGeometryScheme.C.
References calcAspectRatioWeights(), Foam::endl(), Foam::gAverage(), Foam::gMinMax(), limits, Foam::mag(), makeAverageCentres(), fvGeometryScheme::mesh_, fvGeometryScheme::movePoints(), Foam::Pout, primitiveMesh::resetGeometry(), and primitiveMesh::updateGeom().
Referenced by highAspectRatioFvGeometryScheme(), and averageNeighbourFvGeometryScheme::movePoints().


|
virtual |
Calculate geometry quantities using mesh topology and provided points. If oldPoints provided only does local update. Returns true if anything changed, false otherwise.
Reimplemented from basicFvGeometryScheme.
Reimplemented in averageNeighbourFvGeometryScheme.
Definition at line 455 of file highAspectRatioFvGeometryScheme.C.
References Foam::mag(), makeAverageCentres(), fvGeometryScheme::mesh_, points, and basicFvGeometryScheme::updateGeom().

|
protected |
Definition at line 56 of file highAspectRatioFvGeometryScheme.H.
Referenced by calcAspectRatioWeights(), and highAspectRatioFvGeometryScheme().
|
protected |
Definition at line 58 of file highAspectRatioFvGeometryScheme.H.
Referenced by calcAspectRatioWeights(), and highAspectRatioFvGeometryScheme().