Loading...
Searching...
No Matches
primitiveMesh Class Referenceabstract

Cell-face mesh analysis engine. More...

#include <primitiveMesh.H>

Inheritance diagram for primitiveMesh:

Public Member Functions

 ClassName ("primitiveMesh")
 primitiveMesh (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Construct from components.
virtual ~primitiveMesh ()
 Destructor.
void reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Reset this primitiveMesh given the primitive array sizes.
void reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells, cellList &cells)
 Reset this primitiveMesh given the primitive array sizes and cells.
void resetGeometry (pointField &&faceCentres, pointField &&faceAreas, pointField &&cellCentres, scalarField &&cellVolumes)
 Reset the local geometry.
virtual bool init (const bool doInit)
 Initialise all non-demand-driven data.
label nPoints () const noexcept
 Number of mesh points.
label nEdges () const
 Number of mesh edges.
label nFaces () const noexcept
 Number of mesh faces.
label nCells () const noexcept
 Number of mesh cells.
label nInternalFaces () const noexcept
 Number of internal faces.
label nBoundaryFaces () const noexcept
 Number of boundary faces (== nFaces - nInternalFaces).
label nInternalPoints () const noexcept
 Points not on boundary.
label nInternal0Edges () const
 Internal edges (i.e. not on boundary face) using no boundary point.
label nInternal1Edges () const
 Internal edges using 0 or 1 boundary point.
label nInternalEdges () const
 Internal edges using 0,1 or 2 boundary points.
virtual const pointFieldpoints () const =0
 Return mesh points.
virtual const faceListfaces () const =0
 Return faces.
virtual const labelListfaceOwner () const =0
 Face face-owner addressing.
virtual const labelListfaceNeighbour () const =0
 Face face-neighbour addressing.
virtual const pointFieldoldPoints () const =0
 Return old points for mesh motion.
const cellShapeListcellShapes () const
 Return cell shapes.
const edgeListedges () const
 Return mesh edges. Uses calcEdges.
const labelListListcellCells () const
const labelListListedgeCells () const
const labelListListpointCells () const
const cellListcells () const
const labelListListedgeFaces () const
const labelListListpointFaces () const
const labelListListcellEdges () const
const labelListListfaceEdges () const
const labelListListpointEdges () const
const labelListListpointPoints () const
const labelListListcellPoints () const
const vectorFieldcellCentres () const
const vectorFieldfaceCentres () const
const scalarFieldcellVolumes () const
const vectorFieldfaceAreas () const
void movePoints (const pointField &p, const pointField &oldP)
 Move points.
bool isInternalFace (const label faceIndex) const noexcept
 Return true if given face label is internal to the mesh.
virtual bool checkUpperTriangular (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face ordering.
virtual bool checkCellsZipUp (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check cell zip-up.
virtual bool checkFaceVertices (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check uniqueness of face vertices.
virtual bool checkPoints (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for unused points.
virtual bool checkFaceFaces (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face-face connectivity.
virtual bool checkClosedBoundary (const bool report=false) const
 Check boundary for closedness.
virtual bool checkClosedCells (const bool report=false, labelHashSet *setPtr=nullptr, labelHashSet *highAspectSetPtr=nullptr, const Vector< label > &solutionD=Vector< label >::one) const
 Check cells for closedness.
virtual bool checkFaceAreas (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for negative face areas.
virtual bool checkCellVolumes (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for negative cell volumes.
virtual bool checkFaceOrthogonality (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for non-orthogonality.
virtual bool checkFacePyramids (const bool report=false, const scalar minPyrVol=-SMALL, labelHashSet *setPtr=nullptr) const
 Check face pyramid volume.
virtual bool checkFaceSkewness (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face skewness.
virtual bool checkFaceAngles (const bool report=false, const scalar maxSin=10, labelHashSet *setPtr=nullptr) const
 Check face angles.
virtual bool checkFaceFlatness (const bool report, const scalar warnFlatness, labelHashSet *setPtr) const
 Check face warpage: decompose face and check ratio between.
virtual bool checkPointNearness (const bool report, const scalar reportDistSqr, labelHashSet *setPtr=nullptr) const
 Check for point-point-nearness,.
virtual bool checkEdgeLength (const bool report, const scalar minLenSqr, labelHashSet *setPtr=nullptr) const
 Check edge length.
virtual bool checkConcaveCells (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for concave cells by the planes of faces.
virtual bool checkTopology (const bool report=false) const
 Check mesh topology for correctness.
virtual bool checkGeometry (const bool report=false) const
 Check mesh geometry (& implicitly topology) for correctness.
virtual bool checkMesh (const bool report=false) const
 Check mesh for correctness. Returns false for no error.
boundBox cellBb (const label celli) const
 The bounding box for given cell index.
bool pointInCellBB (const point &p, label celli, scalar inflationFraction=0) const
 Return true if the point in the cell bounding box.
bool pointInCell (const point &p, label celli) const
 Return true if the point is in the cell.
label findNearestCell (const point &location) const
 Find the cell with the nearest cell centre to location.
label findCell (const point &location) const
 Find cell enclosing this location (-1 if not in mesh).
void printAllocated () const
 Print a list of all the currently allocated mesh data.
bool hasCellShapes () const noexcept
bool hasEdges () const noexcept
bool hasCellCells () const noexcept
bool hasEdgeCells () const noexcept
bool hasPointCells () const noexcept
bool hasCells () const noexcept
bool hasEdgeFaces () const noexcept
bool hasPointFaces () const noexcept
bool hasCellEdges () const noexcept
bool hasFaceEdges () const noexcept
bool hasPointEdges () const noexcept
bool hasPointPoints () const noexcept
bool hasCellPoints () const noexcept
bool hasCellCentres () const noexcept
bool hasCellVolumes () const noexcept
bool hasFaceCentres () const noexcept
bool hasFaceAreas () const noexcept
const labelListcellCells (const label celli, DynamicList< label > &) const
 cellCells using cells.
const labelListcellCells (const label celli) const
const labelListcellPoints (const label celli, labelHashSet &, DynamicList< label > &) const
 cellPoints using cells
const labelListcellPoints (const label celli) const
const labelListpointCells (const label pointi, DynamicList< label > &) const
 pointCells using pointFaces
const labelListpointCells (const label pointi) const
const labelListpointPoints (const label pointi, DynamicList< label > &) const
 pointPoints using edges, pointEdges
const labelListpointPoints (const label pointi) const
const labelListfaceEdges (const label facei, DynamicList< label > &) const
 faceEdges using pointFaces, edges, pointEdges
const labelListfaceEdges (const label facei) const
const labelListedgeFaces (const label edgeI, DynamicList< label > &) const
 edgeFaces using pointFaces, edges, pointEdges
const labelListedgeFaces (const label edgeI) const
const labelListedgeCells (const label edgeI, DynamicList< label > &) const
 edgeCells using pointFaces, edges, pointEdges
const labelListedgeCells (const label edgeI) const
const labelListcellEdges (const label celli, labelHashSet &, DynamicList< label > &) const
 cellEdges using cells, pointFaces, edges, pointEdges
const labelListcellEdges (const label celli) const
virtual void updateGeom ()
 Update all geometric data.
void clearGeom ()
 Clear geometry.
void clearCellGeom ()
 Clear cell-based geometry only.
void clearAddressing ()
 Clear topological data.
void clearOut ()
 Clear all geometry and addressing unnecessary for CFD.

Static Public Member Functions

static void calcCells (cellList &, const labelUList &own, const labelUList &nei, const label nCells=-1)
 Helper function to calculate cell-face addressing from.
static bool calcPointOrder (label &nInternalPoints, labelList &pointMap, const faceList &, const label nInternalFaces, const label nPoints)
 Helper function to calculate point ordering. Returns true.
static scalar setClosedThreshold (const scalar)
 Set the closedness ratio warning threshold.
static scalar setAspectThreshold (const scalar)
 Set the aspect ratio warning threshold.
static scalar setNonOrthThreshold (const scalar)
 Set the non-orthogonality warning threshold in degrees.
static scalar setSkewThreshold (const scalar)
 Set the skewness warning threshold as percentage.

Static Public Attributes

static const unsigned cellsPerEdge_ = 4
 Estimated number of cells per edge.
static const unsigned cellsPerPoint_ = 8
 Estimated number of cells per point.
static const unsigned facesPerCell_ = 6
 Estimated number of faces per cell.
static const unsigned facesPerEdge_ = 4
 Estimated number of faces per edge.
static const unsigned facesPerPoint_ = 12
 Estimated number of faces per point.
static const unsigned edgesPerCell_ = 12
 Estimated number of edges per cell.
static const unsigned edgesPerFace_ = 4
 Estimated number of edges per cell.
static const unsigned edgesPerPoint_ = 6
 Estimated number of edges per point.
static const unsigned pointsPerCell_ = 8
 Estimated number of points per cell.
static const unsigned pointsPerFace_ = 4
 Estimated number of points per face.

Protected Member Functions

void calcFaceCentresAndAreas () const
 Calculate face centres and areas.
void calcCellCentresAndVols () const
 Calculate cell centres and volumes.
void calcEdgeVectors () const
 Calculate edge vectors.
bool checkDuplicateFaces (const label, const Map< label > &, label &nBaffleFaces, labelHashSet *) const
 Check if all points on face are shared with another face.
bool checkCommonOrder (const label, const Map< label > &, labelHashSet *) const
 Check that shared points are in consecutive order.
bool checkClosedBoundary (const vectorField &areas, const bool report, const bitSet &internalOrCoupledFaces) const
 Check boundary for closedness.
bool checkClosedCells (const vectorField &faceAreas, const scalarField &cellVolumes, const bool report, labelHashSet *setPtr, labelHashSet *aspectSetPtr, const Vector< label > &meshD) const
 Check cells for closedness.
bool checkFaceAreas (const vectorField &faceAreas, const bool report, const bool detailedReport, labelHashSet *setPtr) const
 Check for negative face areas.
bool checkCellVolumes (const scalarField &vols, const bool report, const bool detailedReport, labelHashSet *setPtr) const
 Check for negative cell volumes.
bool checkFaceOrthogonality (const vectorField &fAreas, const vectorField &cellCtrs, const bool report, labelHashSet *setPtr) const
 Check for non-orthogonality.
bool checkFacePyramids (const pointField &points, const vectorField &ctrs, const bool report, const bool detailedReport, const scalar minPyrVol, labelHashSet *setPtr) const
 Check face pyramid volume.
bool checkFaceSkewness (const pointField &points, const vectorField &fCtrs, const vectorField &fAreas, const vectorField &cellCtrs, const bool report, labelHashSet *setPtr) const
 Check face skewness.
bool checkFaceAngles (const pointField &points, const vectorField &faceAreas, const bool report, const scalar maxDeg, labelHashSet *setPtr) const
 Check face angles.
bool checkFaceFlatness (const pointField &points, const vectorField &faceCentres, const vectorField &faceAreas, const bool report, const scalar warnFlatness, labelHashSet *setPtr) const
 Check face warpage.
bool checkConcaveCells (const vectorField &fAreas, const pointField &fCentres, const bool report, labelHashSet *setPtr) const
 Check for concave cells by the planes of faces.
 primitiveMesh ()
 Construct null.

Static Protected Attributes

static scalar closedThreshold_ = 1.0e-6
 Static data to control mesh checking.
static scalar aspectThreshold_ = 1000
 Aspect ratio warning threshold.
static scalar nonOrthThreshold_ = 70
 Non-orthogonality warning threshold in deg.
static scalar skewThreshold_ = 4
 Skewness warning threshold.
static scalar planarCosAngle_ = 1.0e-6
 Threshold where faces are considered coplanar.

Detailed Description

Constructor & Destructor Documentation

◆ primitiveMesh() [1/2]

primitiveMesh ( )
protected

Construct null.

Definition at line 34 of file primitiveMesh.C.

◆ primitiveMesh() [2/2]

primitiveMesh ( const label nPoints,
const label nInternalFaces,
const label nFaces,
const label nCells )

Construct from components.

Definition at line 48 of file primitiveMesh.C.

References nCells(), nFaces(), nInternalFaces(), and nPoints().

Here is the call graph for this function:

◆ ~primitiveMesh()

~primitiveMesh ( )
virtual

Destructor.

Definition at line 67 of file primitiveMesh.C.

References clearOut().

Here is the call graph for this function:

Member Function Documentation

◆ calcFaceCentresAndAreas()

void calcFaceCentresAndAreas ( ) const
protected

Calculate face centres and areas.

Definition at line 35 of file primitiveMeshFaceCentresAndAreas.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, primitiveMeshTools::makeFaceCentresAndAreas(), nFaces(), points(), and Foam::Pout.

Referenced by updateGeom().

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

◆ calcCellCentresAndVols()

void calcCellCentresAndVols ( ) const
protected

Calculate cell centres and volumes.

Definition at line 32 of file primitiveMeshCellCentresAndVols.C.

References Foam::abort(), cellVols, Foam::endl(), faceAreas(), faceCentres(), Foam::FatalError, FatalErrorInFunction, primitiveMeshTools::makeCellCentresAndVols(), nCells(), Foam::Pout, and Foam::Zero.

Referenced by updateGeom().

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

◆ calcEdgeVectors()

void calcEdgeVectors ( ) const
protected

Calculate edge vectors.

References cellVolumes(), faceAreas(), faceCentres(), and points().

Here is the call graph for this function:

◆ checkDuplicateFaces()

bool checkDuplicateFaces ( const label facei,
const Map< label > & nCommonPoints,
label & nBaffleFaces,
labelHashSet * setPtr ) const
protected

Check if all points on face are shared with another face.

Definition at line 1293 of file primitiveMeshCheck.C.

References faces(), forAllConstIters, HashSet< Key, Hash >::insert(), and UList< T >::size().

Referenced by checkFaceFaces().

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

◆ checkCommonOrder()

bool checkCommonOrder ( const label facei,
const Map< label > & nCommonPoints,
labelHashSet * setPtr ) const
protected

Check that shared points are in consecutive order.

Definition at line 1334 of file primitiveMeshCheck.C.

References faces(), UList< T >::fcIndex(), face::find(), forAll, forAllConstIters, HashSet< Key, Hash >::insert(), Foam::labelMax, UList< T >::rcIndex(), and UList< T >::size().

Referenced by checkFaceFaces().

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

◆ checkClosedBoundary() [1/2]

bool checkClosedBoundary ( const vectorField & areas,
const bool report,
const bitSet & internalOrCoupledFaces ) const
protected

Check boundary for closedness.

Definition at line 41 of file primitiveMeshCheck.C.

References closedThreshold_, Foam::cmptMag(), Foam::cmptMax(), DebugInFunction, Foam::endl(), Foam::Info, Foam::mag(), nInternalFaces(), Foam::reduce(), PackedList< Width >::size(), UList< T >::size(), and Foam::Zero.

Referenced by checkClosedBoundary(), checkGeometry(), and oldPoints().

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

◆ checkClosedCells() [1/2]

bool checkClosedCells ( const vectorField & faceAreas,
const scalarField & cellVolumes,
const bool report,
labelHashSet * setPtr,
labelHashSet * aspectSetPtr,
const Vector< label > & meshD ) const
protected

Check cells for closedness.

Definition at line 92 of file primitiveMeshCheck.C.

References aspectThreshold_, primitiveMeshTools::cellClosedness(), cells, cellVolumes(), closedThreshold_, DebugInFunction, Foam::endl(), faceAreas(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), Foam::min(), nFaces(), Foam::nl, and Foam::reduce().

Referenced by checkClosedCells(), checkGeometry(), and oldPoints().

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

◆ checkFaceAreas() [1/2]

bool checkFaceAreas ( const vectorField & faceAreas,
const bool report,
const bool detailedReport,
labelHashSet * setPtr ) const
protected

Check for negative face areas.

Definition at line 220 of file primitiveMeshCheck.C.

References DebugInFunction, Foam::endl(), faceAreas(), faceNeighbour(), faceOwner(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), isInternalFace(), Foam::mag(), Foam::max(), Foam::min(), Foam::Pout, and Foam::reduce().

Referenced by checkFaceAreas(), checkGeometry(), polyMesh::checkMeshMotion(), and oldPoints().

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

◆ checkCellVolumes() [1/2]

bool checkCellVolumes ( const scalarField & vols,
const bool report,
const bool detailedReport,
labelHashSet * setPtr ) const
protected

Check for negative cell volumes.

Definition at line 293 of file primitiveMeshCheck.C.

References DebugInFunction, Foam::endl(), forAll, Foam::gSum(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), Foam::min(), Foam::Pout, and Foam::reduce().

Referenced by checkCellVolumes(), checkGeometry(), polyMesh::checkMeshMotion(), and oldPoints().

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

◆ checkFaceOrthogonality() [1/2]

bool checkFaceOrthogonality ( const vectorField & fAreas,
const vectorField & cellCtrs,
const bool report,
labelHashSet * setPtr ) const
protected

◆ checkFacePyramids() [1/2]

bool checkFacePyramids ( const pointField & points,
const vectorField & ctrs,
const bool report,
const bool detailedReport,
const scalar minPyrVol,
labelHashSet * setPtr ) const
protected

Check face pyramid volume.

Definition at line 461 of file primitiveMeshCheck.C.

References cells, DebugInFunction, Foam::endl(), f(), faceNeighbour(), faceOwner(), primitiveMeshTools::facePyramidVolume(), faces(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), isInternalFace(), Foam::nl, points(), Foam::Pout, and Foam::reduce().

Referenced by checkFacePyramids(), checkGeometry(), polyMesh::checkMeshMotion(), and oldPoints().

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

◆ checkFaceSkewness() [1/2]

bool checkFaceSkewness ( const pointField & points,
const vectorField & fCtrs,
const vectorField & fAreas,
const vectorField & cellCtrs,
const bool report,
labelHashSet * setPtr ) const
protected

Check face skewness.

Definition at line 558 of file primitiveMeshCheck.C.

References DebugInFunction, Foam::endl(), primitiveMeshTools::faceSkewness(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), points(), Foam::reduce(), and skewThreshold_.

Referenced by checkFaceSkewness(), checkGeometry(), and oldPoints().

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

◆ checkFaceAngles() [1/2]

bool checkFaceAngles ( const pointField & points,
const vectorField & faceAreas,
const bool report,
const scalar maxDeg,
labelHashSet * setPtr ) const
protected

Check face angles.

Allows a slight non-convexity. E.g. maxDeg = 10 allows for angles < 190 (or 10 degrees concavity) (if truly concave and points not visible from face centre the face-pyramid check in checkMesh will fail)

Definition at line 626 of file primitiveMeshCheck.C.

References Foam::asin(), DebugInFunction, Foam::degToRad(), Foam::endl(), Foam::exit(), faceAreas(), primitiveMeshTools::faceConcavity(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), Foam::min(), points(), Foam::radToDeg(), Foam::reduce(), and Foam::sin().

Referenced by checkFaceAngles(), and oldPoints().

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

◆ checkFaceFlatness() [1/2]

bool checkFaceFlatness ( const pointField & points,
const vectorField & faceCentres,
const vectorField & faceAreas,
const bool report,
const scalar warnFlatness,
labelHashSet * setPtr ) const
protected

Check face warpage.

Definition at line 701 of file primitiveMeshCheck.C.

References DebugInFunction, Foam::endl(), Foam::exit(), faceAreas(), faceCentres(), primitiveMeshTools::faceFlatness(), faces(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::min(), points(), and Foam::reduce().

Referenced by checkFaceFlatness(), and oldPoints().

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

◆ checkConcaveCells() [1/2]

bool checkConcaveCells ( const vectorField & fAreas,
const pointField & fCentres,
const bool report,
labelHashSet * setPtr ) const
protected

Check for concave cells by the planes of faces.

Definition at line 801 of file primitiveMeshCheck.C.

References cells, DebugInFunction, Foam::endl(), faceOwner(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::max(), planarCosAngle_, and Foam::reduce().

Referenced by checkConcaveCells(), and oldPoints().

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

◆ ClassName()

ClassName ( "primitiveMesh" )

◆ reset() [1/2]

void reset ( const label nPoints,
const label nInternalFaces,
const label nFaces,
const label nCells )

Reset this primitiveMesh given the primitive array sizes.

Definition at line 150 of file primitiveMesh.C.

References calcPointOrder(), clearOut(), Foam::endl(), faces(), nCells(), nFaces(), nInternalFaces(), nInternalPoints(), nPoints(), and Foam::Pout.

Referenced by distanceSurface::createGeometry(), and hexRef8Data::hexRef8Data().

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

◆ reset() [2/2]

void reset ( const label nPoints,
const label nInternalFaces,
const label nFaces,
const label nCells,
cellList & cells )

Reset this primitiveMesh given the primitive array sizes and cells.

Definition at line 206 of file primitiveMesh.C.

References nCells(), nFaces(), nInternalFaces(), nPoints(), and reset().

Here is the call graph for this function:

◆ resetGeometry()

void resetGeometry ( pointField && faceCentres,
pointField && faceAreas,
pointField && cellCentres,
scalarField && cellVolumes )

◆ init()

virtual bool init ( const bool doInit)
inlinevirtual

◆ nPoints()

◆ nEdges()

Foam::label nEdges ( ) const
inline

Number of mesh edges.

Definition at line 60 of file primitiveMeshI.H.

References edges().

Referenced by edgeCells(), edgeFaces(), nInternal0Edges(), nInternal1Edges(), nInternalEdges(), and faBoundaryMesh::whichPatch().

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

◆ nFaces()

◆ nCells()

◆ nInternalFaces()

◆ nBoundaryFaces()

Foam::label nBoundaryFaces ( ) const
inlinenoexcept

◆ nInternalPoints()

Foam::label nInternalPoints ( ) const
inlinenoexcept

Points not on boundary.

Definition at line 24 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by calcPointOrder(), oldPoints(), and reset().

Here is the caller graph for this function:

◆ nInternal0Edges()

Foam::label nInternal0Edges ( ) const
inline

Internal edges (i.e. not on boundary face) using no boundary point.

Definition at line 36 of file primitiveMeshI.H.

References nEdges().

Here is the call graph for this function:

◆ nInternal1Edges()

Foam::label nInternal1Edges ( ) const
inline

Internal edges using 0 or 1 boundary point.

Definition at line 44 of file primitiveMeshI.H.

References nEdges().

Here is the call graph for this function:

◆ nInternalEdges()

Foam::label nInternalEdges ( ) const
inline

Internal edges using 0,1 or 2 boundary points.

Definition at line 52 of file primitiveMeshI.H.

References nEdges().

Referenced by faBoundaryMesh::checkDefinition().

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

◆ points()

virtual const pointField & points ( ) const
pure virtual

Return mesh points.

Implemented in polyMesh.

References points().

Referenced by calcEdgeVectors(), calcFaceCentresAndAreas(), cellBb(), checkEdgeLength(), checkFaceAngles(), checkFaceFlatness(), checkFacePyramids(), checkFaceSkewness(), checkPointNearness(), boundaryMesh::getNearest(), treeDataFace::findIntersectOp::operator()(), and points().

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

◆ faces()

◆ faceOwner()

virtual const labelList & faceOwner ( ) const
pure virtual

Face face-owner addressing.

Implemented in polyMesh.

References faceOwner().

Referenced by cellCells(), checkConcaveCells(), checkFaceAreas(), checkFacePyramids(), checkUpperTriangular(), edgeCells(), faceOwner(), pointCells(), and pointInCell().

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

◆ faceNeighbour()

virtual const labelList & faceNeighbour ( ) const
pure virtual

Face face-neighbour addressing.

Implemented in polyMesh.

References faceNeighbour().

Referenced by cellCells(), checkFaceAreas(), checkFacePyramids(), checkUpperTriangular(), edgeCells(), faceNeighbour(), and pointCells().

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

◆ oldPoints()

virtual const pointField & oldPoints ( ) const
pure virtual

◆ cellShapes()

const Foam::cellShapeList & cellShapes ( ) const

Return cell shapes.

Definition at line 279 of file primitiveMesh.C.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ edges()

◆ calcCells()

void calcCells ( cellList & cellFaceAddr,
const labelUList & own,
const labelUList & nei,
const label nCells = -1 )
static

Helper function to calculate cell-face addressing from.

face-cell addressing. If nCells is not provided it will scan for the maximum.

Definition at line 26 of file primitiveMeshCells.C.

References forAll, Foam::max(), nCells(), List< T >::setSize(), UList< T >::size(), and Foam::Zero.

Here is the call graph for this function:

◆ calcPointOrder()

bool calcPointOrder ( label & nInternalPoints,
labelList & pointMap,
const faceList & faces,
const label nInternalFaces,
const label nPoints )
static

Helper function to calculate point ordering. Returns true.

if points already ordered, false and fills pointMap (old to new). Map splits points into those not used by any boundary face and those that are.

Definition at line 75 of file primitiveMesh.C.

References f(), faces(), forAll, nInternalFaces(), nInternalPoints(), nPoints(), and List< T >::resize_nocopy().

Referenced by oldPoints(), and reset().

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

◆ cellCells() [1/3]

const Foam::labelListList & cellCells ( ) const

Definition at line 94 of file primitiveMeshCellCells.C.

Referenced by cellCells(), cellCells(), and oldPoints().

Here is the caller graph for this function:

◆ edgeCells() [1/3]

const Foam::labelListList & edgeCells ( ) const

Definition at line 27 of file primitiveMeshEdgeCells.C.

References Foam::abort(), cellEdges(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, Foam::invertManyToMany(), nEdges(), and Foam::Pout.

Referenced by edgeCells(), edgeCells(), and oldPoints().

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

◆ pointCells() [1/3]

const Foam::labelListList & pointCells ( ) const

Definition at line 185 of file primitiveMeshPointCells.C.

Referenced by checkPoints(), cellDistFuncs::correctBoundaryCells(), cellDistFuncs::correctBoundaryPointCells(), oldPoints(), pointCells(), and pointCells().

Here is the caller graph for this function:

◆ cells()

◆ edgeFaces() [1/3]

◆ pointFaces()

const Foam::labelListList & pointFaces ( ) const

Definition at line 27 of file primitiveMeshPointFaces.C.

References Foam::endl(), faces(), Foam::invertManyToMany(), nPoints(), and Foam::Pout.

Referenced by checkFaceFaces(), motionSmootherAlgo::checkMesh(), checkPoints(), edgeFaces(), cellLooper::getVertFacesNonEdge(), oldPoints(), pointCells(), and dynamicRefineFvMesh::unrefine().

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

◆ cellEdges() [1/3]

const Foam::labelListList & cellEdges ( ) const

◆ faceEdges() [1/3]

const Foam::labelListList & faceEdges ( ) const

Definition at line 532 of file primitiveMeshEdges.C.

References edges(), Foam::endl(), f(), faceEdges(), faces(), forAll, pointEdges(), Foam::Pout, List< T >::setSize(), and UList< T >::size().

Referenced by cellEdges(), edgeFaces(), faceEdges(), faceEdges(), faceEdges(), cellLooper::getFirstVertEdge(), cellLooper::getVertEdgesNonFace(), and oldPoints().

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

◆ pointEdges()

const Foam::labelListList & pointEdges ( ) const

◆ pointPoints() [1/3]

const Foam::labelListList & pointPoints ( ) const

Definition at line 87 of file primitiveMeshPointPoints.C.

Referenced by oldPoints(), pointPoints(), and pointPoints().

Here is the caller graph for this function:

◆ cellPoints() [1/3]

const Foam::labelListList & cellPoints ( ) const

Definition at line 104 of file primitiveMeshCellPoints.C.

Referenced by cellBb(), cellPoints(), cellPoints(), oldPoints(), tetOverlapVolume::overlappingCells(), and meshCutAndRemove::setRefinement().

Here is the caller graph for this function:

◆ cellCentres()

◆ faceCentres()

◆ cellVolumes()

◆ faceAreas()

◆ movePoints()

void movePoints ( const pointField & p,
const pointField & oldP )

Move points.

Definition at line 265 of file primitiveMesh.C.

References oldPoints().

Referenced by polyMesh::movePoints(), and oldPoints().

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

◆ isInternalFace()

bool isInternalFace ( const label faceIndex) const
inlinenoexcept

Return true if given face label is internal to the mesh.

Definition at line 95 of file primitiveMeshI.H.

Referenced by checkFaceAreas(), checkFacePyramids(), edgeCells(), dynamicRefineFvMesh::mapFields(), Foam::markGrowFaceCellFace(), oldPoints(), and dynamicRefineFvMesh::unrefine().

Here is the caller graph for this function:

◆ checkUpperTriangular()

bool checkUpperTriangular ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check face ordering.

Definition at line 907 of file primitiveMeshCheck.C.

References cells, DebugInFunction, Foam::endl(), faceNeighbour(), faceOwner(), forAll, SortableList< T >::indices(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::labelMax, nInternalFaces(), Foam::reduce(), UPstream::reduceOr(), UList< T >::size(), and SortableList< T >::sort().

Referenced by checkTopology(), and oldPoints().

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

◆ checkCellsZipUp()

bool checkCellsZipUp ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check cell zip-up.

Definition at line 1065 of file primitiveMeshCheck.C.

References cellEdges(), cells, DebugInFunction, Foam::endl(), f(), faces(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::reduce(), and Foam::Zero.

Referenced by checkTopology(), and oldPoints().

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

◆ checkFaceVertices()

bool checkFaceVertices ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check uniqueness of face vertices.

Definition at line 1158 of file primitiveMeshCheck.C.

References DebugInFunction, Foam::endl(), f(), faces(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), Foam::min(), nPoints, Foam::reduce(), and UList< T >::size().

Referenced by checkTopology(), and oldPoints().

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

◆ checkPoints()

bool checkPoints ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check for unused points.

Definition at line 1226 of file primitiveMeshCheck.C.

References DebugInFunction, UList< T >::empty(), Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), pointCells(), pointFaces(), and Foam::reduce().

Referenced by checkTopology(), and oldPoints().

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

◆ checkFaceFaces()

bool checkFaceFaces ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check face-face connectivity.

Definition at line 1495 of file primitiveMeshCheck.C.

References checkCommonOrder(), checkDuplicateFaces(), HashTable< T, Key, Hash >::clear(), DebugInFunction, Foam::endl(), faces(), forAll, Foam::Info, nFaces(), pointFaces(), and Foam::reduce().

Referenced by checkTopology(), and oldPoints().

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

◆ checkClosedBoundary() [2/2]

bool checkClosedBoundary ( const bool report = false) const
virtual

Check boundary for closedness.

Definition at line 1591 of file primitiveMeshCheck.C.

References checkClosedBoundary(), and faceAreas().

Here is the call graph for this function:

◆ checkClosedCells() [2/2]

bool checkClosedCells ( const bool report = false,
labelHashSet * setPtr = nullptr,
labelHashSet * highAspectSetPtr = nullptr,
const Vector< label > & solutionD = Vector<label>::one ) const
virtual

Check cells for closedness.

Definition at line 1597 of file primitiveMeshCheck.C.

References cellVolumes(), checkClosedCells(), and faceAreas().

Here is the call graph for this function:

◆ checkFaceAreas() [2/2]

bool checkFaceAreas ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check for negative face areas.

Definition at line 1617 of file primitiveMeshCheck.C.

References checkFaceAreas(), and faceAreas().

Here is the call graph for this function:

◆ checkCellVolumes() [2/2]

bool checkCellVolumes ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check for negative cell volumes.

Definition at line 1633 of file primitiveMeshCheck.C.

References cellVolumes(), and checkCellVolumes().

Here is the call graph for this function:

◆ checkFaceOrthogonality() [2/2]

bool checkFaceOrthogonality ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check for non-orthogonality.

Reimplemented in polyMesh.

Definition at line 1649 of file primitiveMeshCheck.C.

References cellCentres(), checkFaceOrthogonality(), and faceAreas().

Here is the call graph for this function:

◆ checkFacePyramids() [2/2]

bool checkFacePyramids ( const bool report = false,
const scalar minPyrVol = -SMALL,
labelHashSet * setPtr = nullptr ) const
virtual

Check face pyramid volume.

Definition at line 1665 of file primitiveMeshCheck.C.

References cellCentres(), checkFacePyramids(), and points.

Here is the call graph for this function:

◆ checkFaceSkewness() [2/2]

bool checkFaceSkewness ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check face skewness.

Reimplemented in polyMesh.

Definition at line 1684 of file primitiveMeshCheck.C.

References cellCentres(), checkFaceSkewness(), faceAreas(), faceCentres(), and points.

Here is the call graph for this function:

◆ checkFaceAngles() [2/2]

bool checkFaceAngles ( const bool report = false,
const scalar maxSin = 10,
labelHashSet * setPtr = nullptr ) const
virtual

Check face angles.

Definition at line 1702 of file primitiveMeshCheck.C.

References checkFaceAngles(), faceAreas(), and points.

Here is the call graph for this function:

◆ checkFaceFlatness() [2/2]

bool checkFaceFlatness ( const bool report,
const scalar warnFlatness,
labelHashSet * setPtr ) const
virtual

Check face warpage: decompose face and check ratio between.

magnitude of sum of triangle areas and sum of magnitude of triangle areas.

Definition at line 1720 of file primitiveMeshCheck.C.

References checkFaceFlatness(), faceAreas(), faceCentres(), and points.

Here is the call graph for this function:

◆ checkPointNearness()

bool checkPointNearness ( const bool report,
const scalar reportDistSqr,
labelHashSet * setPtr = nullptr ) const
virtual

Check for point-point-nearness,.

e.g. colocated points which may be part of baffles.

Definition at line 27 of file primitiveMeshCheckPointNearness.C.

References Foam::endl(), SortableList< T >::indices(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::magSqr(), points(), Foam::reduce(), UList< T >::size(), and Foam::sqrt().

Referenced by oldPoints().

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

◆ checkEdgeLength()

bool checkEdgeLength ( const bool report,
const scalar minLenSqr,
labelHashSet * setPtr = nullptr ) const
virtual

Check edge length.

Definition at line 26 of file primitiveMeshCheckEdgeLength.C.

References Foam::endl(), f(), faces(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::magSqr(), Foam::max(), Foam::min(), nPoints(), points(), Foam::reduce(), Foam::returnReduce(), HashTable< T, Key, Hash >::size(), Foam::sqr(), Foam::sqrt(), and HashTable< T, Key, Hash >::transfer().

Referenced by oldPoints().

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

◆ checkConcaveCells() [2/2]

bool checkConcaveCells ( const bool report = false,
labelHashSet * setPtr = nullptr ) const
virtual

Check for concave cells by the planes of faces.

Definition at line 1739 of file primitiveMeshCheck.C.

References checkConcaveCells(), faceAreas(), and faceCentres().

Here is the call graph for this function:

◆ checkTopology()

bool checkTopology ( const bool report = false) const
virtual

Check mesh topology for correctness.

Returns false for no error.

Definition at line 1755 of file primitiveMeshCheck.C.

References checkCellsZipUp(), checkFaceFaces(), checkFaceVertices(), checkPoints(), checkUpperTriangular(), Foam::endl(), and Foam::Info.

Referenced by oldPoints().

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

◆ checkGeometry()

bool checkGeometry ( const bool report = false) const
virtual

Check mesh geometry (& implicitly topology) for correctness.

Returns false for no error.

Definition at line 1785 of file primitiveMeshCheck.C.

References checkCellVolumes(), checkClosedBoundary(), checkClosedCells(), checkFaceAreas(), checkFaceOrthogonality(), checkFacePyramids(), checkFaceSkewness(), Foam::endl(), and Foam::Info.

Referenced by oldPoints().

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

◆ checkMesh()

bool checkMesh ( const bool report = false) const
virtual

Check mesh for correctness. Returns false for no error.

Definition at line 1817 of file primitiveMeshCheck.C.

References Foam::checkGeometry(), Foam::checkTopology(), DebugInFunction, Foam::endl(), and Foam::Info.

Referenced by oldPoints(), polyMesh::polyMesh(), and polyMesh::polyMesh().

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

◆ setClosedThreshold()

Foam::scalar setClosedThreshold ( const scalar val)
static

Set the closedness ratio warning threshold.

Definition at line 1843 of file primitiveMeshCheck.C.

References closedThreshold_.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ setAspectThreshold()

Foam::scalar setAspectThreshold ( const scalar val)
static

Set the aspect ratio warning threshold.

Definition at line 1852 of file primitiveMeshCheck.C.

References aspectThreshold_.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ setNonOrthThreshold()

Foam::scalar setNonOrthThreshold ( const scalar val)
static

Set the non-orthogonality warning threshold in degrees.

Definition at line 1861 of file primitiveMeshCheck.C.

References nonOrthThreshold_.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ setSkewThreshold()

Foam::scalar setSkewThreshold ( const scalar val)
static

Set the skewness warning threshold as percentage.

of the face area vector

Definition at line 1870 of file primitiveMeshCheck.C.

References skewThreshold_.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ cellBb()

Foam::boundBox cellBb ( const label celli) const

The bounding box for given cell index.

Definition at line 28 of file primitiveMeshFindCell.C.

References cellPoints(), cells(), faces(), hasCellPoints(), and points().

Referenced by oldPoints(), and pointInCellBB().

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

◆ pointInCellBB()

bool pointInCellBB ( const point & p,
label celli,
scalar inflationFraction = 0 ) const

Return true if the point in the cell bounding box.

The bounding box may be isotropically inflated by the fraction inflationFraction

Definition at line 40 of file primitiveMeshFindCell.C.

References cellBb(), boundBox::contains(), boundBox::inflate(), and p.

Referenced by oldPoints().

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

◆ pointInCell()

bool pointInCell ( const point & p,
label celli ) const

Return true if the point is in the cell.

Definition at line 58 of file primitiveMeshFindCell.C.

References cells, f(), faceAreas(), faceCentres(), faceOwner(), forAll, and p.

Referenced by findCell(), oldPoints(), and polyMesh::pointInCell().

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

◆ findNearestCell()

Foam::label findNearestCell ( const point & location) const

Find the cell with the nearest cell centre to location.

Definition at line 85 of file primitiveMeshFindCell.C.

References cellCentres(), Foam::magSqr(), and UList< T >::size().

Referenced by polyMesh::findCell(), findCell(), and oldPoints().

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

◆ findCell()

Foam::label findCell ( const point & location) const

Find cell enclosing this location (-1 if not in mesh).

Definition at line 112 of file primitiveMeshFindCell.C.

References findNearestCell(), n, nCells(), and pointInCell().

Referenced by oldPoints().

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

◆ printAllocated()

void printAllocated ( ) const

Print a list of all the currently allocated mesh data.

Definition at line 26 of file primitiveMeshClear.C.

References Foam::endl(), and Foam::Pout.

Referenced by oldPoints().

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

◆ hasCellShapes()

bool hasCellShapes ( ) const
inlinenoexcept

Definition at line 104 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasEdges()

bool hasEdges ( ) const
inlinenoexcept

Definition at line 110 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasCellCells()

bool hasCellCells ( ) const
inlinenoexcept

Definition at line 116 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by cellCells(), and oldPoints().

Here is the caller graph for this function:

◆ hasEdgeCells()

bool hasEdgeCells ( ) const
inlinenoexcept

Definition at line 122 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by edgeCells(), and oldPoints().

Here is the caller graph for this function:

◆ hasPointCells()

bool hasPointCells ( ) const
inlinenoexcept

Definition at line 128 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints(), and pointCells().

Here is the caller graph for this function:

◆ hasCells()

bool hasCells ( ) const
inlinenoexcept

Definition at line 134 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasEdgeFaces()

bool hasEdgeFaces ( ) const
inlinenoexcept

Definition at line 140 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by edgeFaces(), and oldPoints().

Here is the caller graph for this function:

◆ hasPointFaces()

bool hasPointFaces ( ) const
inlinenoexcept

Definition at line 146 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasCellEdges()

bool hasCellEdges ( ) const
inlinenoexcept

Definition at line 152 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by cellEdges(), and oldPoints().

Here is the caller graph for this function:

◆ hasFaceEdges()

bool hasFaceEdges ( ) const
inlinenoexcept

Definition at line 158 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by faceEdges(), and oldPoints().

Here is the caller graph for this function:

◆ hasPointEdges()

bool hasPointEdges ( ) const
inlinenoexcept

Definition at line 164 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasPointPoints()

bool hasPointPoints ( ) const
inlinenoexcept

Definition at line 170 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints(), and pointPoints().

Here is the caller graph for this function:

◆ hasCellPoints()

bool hasCellPoints ( ) const
inlinenoexcept

Definition at line 176 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by cellBb(), cellPoints(), and oldPoints().

Here is the caller graph for this function:

◆ hasCellCentres()

bool hasCellCentres ( ) const
inlinenoexcept

Definition at line 182 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasCellVolumes()

bool hasCellVolumes ( ) const
inlinenoexcept

Definition at line 188 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasFaceCentres()

bool hasFaceCentres ( ) const
inlinenoexcept

Definition at line 194 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ hasFaceAreas()

bool hasFaceAreas ( ) const
inlinenoexcept

Definition at line 200 of file primitiveMeshI.H.

References Foam::noexcept.

Referenced by oldPoints().

Here is the caller graph for this function:

◆ cellCells() [2/3]

const Foam::labelList & cellCells ( const label celli,
DynamicList< label > & storage ) const

cellCells using cells.

Definition at line 105 of file primitiveMeshCellCells.C.

References cellCells(), cells, DynamicList< T, SizeMin >::clear(), faceNeighbour(), faceOwner(), hasCellCells(), nInternalFaces(), and DynamicList< T, SizeMin >::push_back().

Here is the call graph for this function:

◆ cellCells() [3/3]

const Foam::labelList & cellCells ( const label celli) const

Definition at line 143 of file primitiveMeshCellCells.C.

References cellCells().

Here is the call graph for this function:

◆ cellPoints() [2/3]

const Foam::labelList & cellPoints ( const label celli,
labelHashSet & set,
DynamicList< label > & storage ) const

◆ cellPoints() [3/3]

const Foam::labelList & cellPoints ( const label celli) const

Definition at line 152 of file primitiveMeshCellPoints.C.

References cellPoints().

Here is the call graph for this function:

◆ pointCells() [2/3]

◆ pointCells() [3/3]

const Foam::labelList & pointCells ( const label pointi) const

Definition at line 239 of file primitiveMeshPointCells.C.

References pointCells().

Here is the call graph for this function:

◆ pointPoints() [2/3]

const Foam::labelList & pointPoints ( const label pointi,
DynamicList< label > & storage ) const

◆ pointPoints() [3/3]

const Foam::labelList & pointPoints ( const label pointi) const

Definition at line 130 of file primitiveMeshPointPoints.C.

References pointPoints().

Here is the call graph for this function:

◆ faceEdges() [2/3]

const Foam::labelList & faceEdges ( const label facei,
DynamicList< label > & storage ) const

◆ faceEdges() [3/3]

const Foam::labelList & faceEdges ( const label facei) const

Definition at line 629 of file primitiveMeshEdges.C.

References faceEdges().

Here is the call graph for this function:

◆ edgeFaces() [2/3]

const Foam::labelList & edgeFaces ( const label edgeI,
DynamicList< label > & storage ) const

edgeFaces using pointFaces, edges, pointEdges

Definition at line 53 of file primitiveMeshEdgeFaces.C.

References DynamicList< T, SizeMin >::append(), DynamicList< T, SizeMin >::clear(), e, edgeFaces(), edges(), f(), faces(), hasEdgeFaces(), pointFaces(), and UList< T >::size().

Here is the call graph for this function:

◆ edgeFaces() [3/3]

const Foam::labelList & edgeFaces ( const label edgeI) const

Definition at line 119 of file primitiveMeshEdgeFaces.C.

References edgeFaces().

Here is the call graph for this function:

◆ edgeCells() [2/3]

const Foam::labelList & edgeCells ( const label edgeI,
DynamicList< label > & storage ) const

edgeCells using pointFaces, edges, pointEdges

Definition at line 52 of file primitiveMeshEdgeCells.C.

References DynamicList< T, SizeMin >::clear(), UList< T >::contains(), edgeCells(), edgeFaces(), faceNeighbour(), faceOwner(), hasEdgeCells(), isInternalFace(), and DynamicList< T, SizeMin >::push_back().

Here is the call graph for this function:

◆ edgeCells() [3/3]

const Foam::labelList & edgeCells ( const label edgeI) const

Definition at line 99 of file primitiveMeshEdgeCells.C.

References edgeCells().

Here is the call graph for this function:

◆ cellEdges() [2/3]

const Foam::labelList & cellEdges ( const label celli,
labelHashSet & set,
DynamicList< label > & storage ) const

cellEdges using cells, pointFaces, edges, pointEdges

Definition at line 635 of file primitiveMeshEdges.C.

References DynamicList< T, SizeMin >::capacity(), cellEdges(), cells, DynamicList< T, SizeMin >::clear(), faceEdges(), hasCellEdges(), DynamicList< T, SizeMin >::push_back(), and DynamicList< T, SizeMin >::setCapacity().

Here is the call graph for this function:

◆ cellEdges() [3/3]

const Foam::labelList & cellEdges ( const label celli) const

Definition at line 671 of file primitiveMeshEdges.C.

References cellEdges().

Here is the call graph for this function:

◆ updateGeom()

void updateGeom ( )
virtual

Update all geometric data.

Reimplemented in fvMesh.

Definition at line 290 of file primitiveMesh.C.

References calcCellCentresAndVols(), and calcFaceCentresAndAreas().

Referenced by basicFvGeometryScheme::movePoints(), highAspectRatioFvGeometryScheme::movePoints(), polyMesh::movePoints(), solidBodyFvGeometryScheme::movePoints(), and oldPoints().

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

◆ clearGeom()

void clearGeom ( )

Clear geometry.

Definition at line 119 of file primitiveMeshClear.C.

References Foam::endl(), and Foam::Pout.

Referenced by polyMesh::clearGeom(), clearOut(), fvGeometryScheme::movePoints(), solidBodyFvGeometryScheme::movePoints(), oldPoints(), resetGeometry(), and polyMesh::updateGeomPoints().

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

◆ clearCellGeom()

void clearCellGeom ( )

Clear cell-based geometry only.

Use with care! currently used by cyclicACMI

Definition at line 135 of file primitiveMeshClear.C.

References Foam::endl(), and Foam::Pout.

Referenced by oldPoints().

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

◆ clearAddressing()

void clearAddressing ( )

Clear topological data.

Definition at line 149 of file primitiveMeshClear.C.

References Foam::endl(), and Foam::Pout.

Referenced by polyMesh::clearAddressing(), clearOut(), and oldPoints().

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

◆ clearOut()

void clearOut ( )

Clear all geometry and addressing unnecessary for CFD.

Definition at line 178 of file primitiveMeshClear.C.

References clearAddressing(), and clearGeom().

Referenced by fvMesh::clearOut(), oldPoints(), polyMesh::removeBoundary(), reset(), and ~primitiveMesh().

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

Member Data Documentation

◆ closedThreshold_

Foam::scalar closedThreshold_ = 1.0e-6
staticprotected

Static data to control mesh checking.

Cell closedness warning threshold

set as the fraction of un-closed area to closed area

Definition at line 307 of file primitiveMesh.H.

Referenced by checkClosedBoundary(), checkClosedCells(), and setClosedThreshold().

◆ aspectThreshold_

Foam::scalar aspectThreshold_ = 1000
staticprotected

Aspect ratio warning threshold.

Definition at line 312 of file primitiveMesh.H.

Referenced by checkClosedCells(), and setAspectThreshold().

◆ nonOrthThreshold_

Foam::scalar nonOrthThreshold_ = 70
staticprotected

Non-orthogonality warning threshold in deg.

Definition at line 317 of file primitiveMesh.H.

Referenced by checkFaceOrthogonality(), and setNonOrthThreshold().

◆ skewThreshold_

Foam::scalar skewThreshold_ = 4
staticprotected

Skewness warning threshold.

Definition at line 322 of file primitiveMesh.H.

Referenced by checkFaceSkewness(), and setSkewThreshold().

◆ planarCosAngle_

Foam::scalar planarCosAngle_ = 1.0e-6
staticprotected

Threshold where faces are considered coplanar.

Definition at line 327 of file primitiveMesh.H.

Referenced by checkConcaveCells().

◆ cellsPerEdge_

const unsigned cellsPerEdge_ = 4
static

Estimated number of cells per edge.

Definition at line 510 of file primitiveMesh.H.

◆ cellsPerPoint_

const unsigned cellsPerPoint_ = 8
static

Estimated number of cells per point.

Definition at line 515 of file primitiveMesh.H.

◆ facesPerCell_

const unsigned facesPerCell_ = 6
static

Estimated number of faces per cell.

Definition at line 520 of file primitiveMesh.H.

◆ facesPerEdge_

const unsigned facesPerEdge_ = 4
static

Estimated number of faces per edge.

Definition at line 525 of file primitiveMesh.H.

◆ facesPerPoint_

const unsigned facesPerPoint_ = 12
static

Estimated number of faces per point.

Definition at line 530 of file primitiveMesh.H.

◆ edgesPerCell_

const unsigned edgesPerCell_ = 12
static

Estimated number of edges per cell.

Definition at line 535 of file primitiveMesh.H.

◆ edgesPerFace_

const unsigned edgesPerFace_ = 4
static

Estimated number of edges per cell.

Definition at line 540 of file primitiveMesh.H.

◆ edgesPerPoint_

const unsigned edgesPerPoint_ = 6
static

Estimated number of edges per point.

Definition at line 545 of file primitiveMesh.H.

◆ pointsPerCell_

const unsigned pointsPerCell_ = 8
static

Estimated number of points per cell.

Definition at line 550 of file primitiveMesh.H.

◆ pointsPerFace_

const unsigned pointsPerFace_ = 4
static

Estimated number of points per face.

Definition at line 555 of file primitiveMesh.H.


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