Loading...
Searching...
No Matches
solidBodyFvGeometryScheme Class Reference

Geometry calculation scheme that performs geometry updates only in regions where the mesh has changed. More...

#include <solidBodyFvGeometryScheme.H>

Inheritance diagram for solidBodyFvGeometryScheme:
Collaboration diagram for solidBodyFvGeometryScheme:

Public Member Functions

 TypeName ("solidBody")
 Runtime type information.
 solidBodyFvGeometryScheme (const fvMesh &mesh, const dictionary &dict)
 Construct from mesh.
virtual ~solidBodyFvGeometryScheme ()=default
 Destructor.
virtual void movePoints ()
 Do what is necessary if the mesh has moved.
virtual void updateMesh (const mapPolyMesh &mpm)
 Update mesh for topology changes.
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< surfaceScalarFieldweights () const
 Return linear difference weighting factors.
virtual tmp< surfaceScalarFielddeltaCoeffs () const
 Return cell-centre difference coefficients.
virtual tmp< surfaceScalarFieldnonOrthDeltaCoeffs () const
 Return non-orthogonal cell-centre difference coefficients.
virtual tmp< surfaceVectorFieldnonOrthCorrectionVectors () 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 fvMeshmesh () const
 Return mesh reference.
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.

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.
Protected Member Functions inherited from fvGeometryScheme
bool setMeshPhi () const
 Set the mesh motion flux.
Protected Attributes inherited from fvGeometryScheme
const fvMeshmesh_
 Hold reference to mesh.

Detailed Description

Geometry calculation scheme that performs geometry updates only in regions where the mesh has changed.

Example usage in fvSchemes:

    geometry
    {
        type            solidBody;

        // Optional entries

        // If set to false, update the entire mesh
        partialUpdate   yes;

        // Cache the motion addressing (changed points, faces, cells etc)
        cacheMotion     yes;
    }
Source files

Definition at line 65 of file solidBodyFvGeometryScheme.H.

Constructor & Destructor Documentation

◆ solidBodyFvGeometryScheme()

solidBodyFvGeometryScheme ( const fvMesh & mesh,
const dictionary & dict )

Construct from mesh.

Definition at line 236 of file solidBodyFvGeometryScheme.C.

References DebugInFunction, dict, Foam::endl(), and fvGeometryScheme::mesh().

Here is the call graph for this function:

◆ ~solidBodyFvGeometryScheme()

virtual ~solidBodyFvGeometryScheme ( )
virtualdefault

Destructor.

References points.

Member Function Documentation

◆ TypeName()

TypeName ( "solidBody" )

Runtime type information.

References dict, and fvGeometryScheme::mesh().

Here is the call graph for this function:

◆ movePoints()

◆ updateMesh()

void updateMesh ( const mapPolyMesh & mpm)
virtual

Update mesh for topology changes.

Reimplemented from fvGeometryScheme.

Definition at line 417 of file solidBodyFvGeometryScheme.C.

◆ updateGeom()

bool updateGeom ( const pointField & points,
const refPtr< pointField > & oldPoints,
pointField & faceCentres,
vectorField & faceAreas,
pointField & cellCentres,
scalarField & cellVolumes ) const
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.

Definition at line 423 of file solidBodyFvGeometryScheme.C.

References fvGeometryScheme::mesh_, points, UList< T >::size(), bitSet::toc(), primitiveMeshTools::updateCellCentresAndVols(), primitiveMeshTools::updateFaceCentresAndAreas(), and basicFvGeometryScheme::updateGeom().

Here is the call graph for this function:

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