primitiveMesh Class Referenceabstract

Cell-face mesh analysis engine. More...

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

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. More...
 
static bool calcPointOrder (label &nInternalPoints, labelList &pointMap, const faceList &, const label nInternalFaces, const label nPoints)
 Helper function to calculate point ordering. Returns true. More...
 
static scalar setClosedThreshold (const scalar)
 Set the closedness ratio warning threshold. More...
 
static scalar setAspectThreshold (const scalar)
 Set the aspect ratio warning threshold. More...
 
static scalar setNonOrthThreshold (const scalar)
 Set the non-orthogonality warning threshold in degrees. More...
 
static scalar setSkewThreshold (const scalar)
 Set the skewness warning threshold as percentage. More...
 

Static Public Attributes

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

Protected Member Functions

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

Static Protected Attributes

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

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 72 of file primitiveMesh.C.

◆ ~primitiveMesh()

~primitiveMesh ( )
virtual

Destructor.

Definition at line 113 of file primitiveMesh.C.

Member Function Documentation

◆ calcFaceCentresAndAreas()

void calcFaceCentresAndAreas ( ) const
protected

◆ calcCellCentresAndVols()

void calcCellCentresAndVols ( ) const
protected

◆ calcEdgeVectors()

void calcEdgeVectors ( ) const
protected

Calculate edge vectors.

◆ 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 1294 of file primitiveMeshCheck.C.

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

Here is the call 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 1335 of file primitiveMeshCheck.C.

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

Here is the call 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 42 of file primitiveMeshCheck.C.

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

Referenced by primitiveMesh::checkClosedBoundary().

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 93 of file primitiveMeshCheck.C.

References Foam::constant::universal::c, cells, Foam::ensightOutput::debug, DebugInFunction, Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::max(), Foam::min(), Foam::nl, and Foam::reduce().

Here is the call 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 221 of file primitiveMeshCheck.C.

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

Here is the call 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 294 of file primitiveMeshCheck.C.

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

Here is the call 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 462 of file primitiveMeshCheck.C.

References cells, Foam::ensightOutput::debug, DebugInFunction, Foam::endl(), f(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::nl, points, Foam::Pout, and Foam::reduce().

Here is the call 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 559 of file primitiveMeshCheck.C.

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

Here is the call 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 627 of file primitiveMeshCheck.C.

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

Here is the call 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

◆ 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 802 of file primitiveMeshCheck.C.

References Foam::constant::universal::c, cells, Foam::ensightOutput::debug, DebugInFunction, Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::max(), and Foam::reduce().

Here is the call 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 197 of file primitiveMesh.C.

References Foam::ensightOutput::debug, Foam::endl(), nPoints, and Foam::Pout.

Referenced by adjointBoundaryCondition< Type >::setBoundaryContributionPtr(), and mappedPatchBase::updateMeshTime().

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 253 of file primitiveMesh.C.

References nPoints.

◆ resetGeometry()

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

Reset the local geometry.

Definition at line 274 of file primitiveMesh.C.

References Foam::abort(), Foam::ensightOutput::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, and Foam::Pout.

Referenced by stabilisedFvGeometryScheme::movePoints(), highAspectRatioFvGeometryScheme::movePoints(), solidBodyFvGeometryScheme::movePoints(), and averageNeighbourFvGeometryScheme::movePoints().

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

◆ init()

virtual bool init ( const bool  doInit)
inlinevirtual

◆ nPoints()

Foam::label nPoints ( ) const
inlinenoexcept

Number of mesh points.

Definition at line 30 of file primitiveMeshI.H.

Referenced by fvMeshAdder::add(), polyMeshAdder::add(), polyTopoChange::addMesh(), motionSmootherAlgo::avg(), polyTopoChange::changeMesh(), motionSmootherAlgo::checkMesh(), pointZone::checkParallelSync(), componentDisplacementMotionSolver::componentDisplacementMotionSolver(), distanceSurface::createGeometry(), Foam::createReconstructMap(), displacementInterpolationMotionSolver::curPoints(), edgeVertex::edgeToEVert(), polyMeshFilter::filterEdges(), edgeVertex::getEdge(), Foam::getMeshPointRef(), globalIndexAndTransform::globalIndexAndTransform(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), dynamicMultiMotionSolverFvMesh::init(), edgeVertex::isEdge(), localPointRegion::localPointRegion(), polyTopoChange::makeMesh(), pointBitSet::maxSize(), pointSet::maxSize(), pointZoneSet::maxSize(), primitiveMesh::pointFaces(), points0MotionSolver::points0MotionSolver(), pointSet::pointSet(), parseDriver::pointSize(), pointZoneSet::pointZoneSet(), polyMesh::polyMesh(), fvMeshDistribute::printMeshInfo(), isoAlpha::reconstruct(), processorMeshes::reconstructPoints(), motionSmootherAlgo::setDisplacement(), Foam::simpleGeometricFilter(), pointMesh::size(), sixDoFRigidBodyMotionSolver::solve(), rigidBodyMeshMotionSolver::solve(), hexRef8Data::sync(), pointSet::sync(), syncTools::syncPointList(), weightedPosition::syncPoints(), meshRefinement::testSyncPointList(), trackingInverseDistance::update(), inverseDistance::update(), and edgeVertex::vertToEVert().

Here is the caller graph for this function:

◆ nEdges()

◆ nFaces()

Foam::label nFaces ( ) const
inlinenoexcept

Number of mesh faces.

Definition at line 83 of file primitiveMeshI.H.

Referenced by fvMeshAdder::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), meshRefinement::addPatch(), treeDataFace::boxes(), holeToFace::calcClosure(), curvatureSeparation::calcCosAngle(), primitiveMesh::calcFaceCentresAndAreas(), waveMethod::calculate(), polyTopoChange::changeMesh(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), polyMeshGeometry::checkVolRatio(), curvatureSeparation::correct(), wallDistAddressing::correct(), Foam::createReconstructMap(), structuredDecomp::decompose(), decompositionMethod::decompose(), snappyLayerDriver::doLayers(), snappySnapDriver::doSnap(), treeDataFace::empty(), faceMapper::faceMapper(), faceSet::faceSet(), faceZoneSet::faceZoneSet(), fvFieldReconstructor::fvFieldReconstructor(), syncTools::getInternalOrCoupledFaces(), syncTools::getInternalOrMasterFaces(), syncTools::getMasterFaces(), marchingCells::initialise(), polyTopoChange::makeMesh(), mappedPatchFieldBase< scalar >::mappedField(), faceBitSet::maxSize(), faceBoolSet::maxSize(), faceSet::maxSize(), faceZoneSet::maxSize(), snappyLayerDriver::mergePatchFacesUndo(), stabilisedFvGeometryScheme::movePoints(), snappySnapDriver::preSmoothPatch(), fvMeshDistribute::printMeshInfo(), regionSplit::regionSplit(), snappySnapDriver::repatchToSurface(), snappySnapDriver::scaleMesh(), decompositionMethod::setConstraints(), treeDataFace::size(), meshRefinement::subsetBaffles(), faceSet::sync(), faceZoneSet::sync(), syncTools::syncEdgeMap(), syncTools::syncFaceList(), wallBoundedStreamLine::track(), and polyBoundaryMesh::whichPatchFace().

◆ nCells()

Foam::label nCells ( ) const
inlinenoexcept

Number of mesh cells.

Definition at line 89 of file primitiveMeshI.H.

Referenced by fvMeshAdder::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), polyTopoChange::addMesh(), topODesignVariables::applyFixedValues(), treeDataCell::boxes(), nearWallFields::calcAddressing(), primitiveMesh::calcCellCentresAndVols(), holeToFace::calcClosure(), waveMethod::calculate(), cellCuts::cellCuts(), cellMapper::cellMapper(), cellSet::cellSet(), cellZoneSet::cellZoneSet(), polyTopoChange::changeMesh(), ensightCells::classify(), drippingInjection::correct(), wallDistAddressing::correct(), Foam::createReconstructMap(), structuredDecomp::decompose(), noDecomp::decompose(), randomDecomp::decompose(), metisLikeDecomp::decompose(), ptscotchDecomp::decompose(), decompositionMethod::decompose(), refinementHistory::distribute(), snappyLayerDriver::doLayers(), snappyRefineDriver::doRefine(), treeDataCell::empty(), meshRefinement::findRegions(), fvFieldReconstructor::fvFieldReconstructor(), topOSource::getSource(), cellCellStencil::globalCellCells(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), isoSurfaceTopo::isoSurfaceTopo(), polyTopoChange::makeMesh(), mappedPatchFieldBase< scalar >::mappedField(), meshToMesh::mapSrcToTgt(), meshToMesh::mapTgtToSrc(), trackingInverseDistance::markDonors(), inverseDistance::markDonors(), meshToMeshMethod::maskCells(), cellBitSet::maxSize(), cellZoneSet::maxSize(), cellSet::maxSize(), stabilisedFvGeometryScheme::movePoints(), cellTable::operator=(), cuttingPlane::performCut(), polyMesh::polyMesh(), fvMeshDistribute::printMeshInfo(), isoAlpha::reconstruct(), Foam::reconstructLagrangian(), refinementHistory::refinementHistory(), zoltanRenumber::renumber(), CuthillMcKeeRenumber::renumber(), SloanRenumber::renumber(), springRenumber::renumber(), cellBitSet::select(), levelSetDesignVariables::setActiveDesignVariables(), Foam::simpleGeometricFilter(), treeDataCell::size(), parseDriver::size(), Foam::sumNeighbours(), reconstructionSchemes::surface(), syncTools::swapBoundaryCellList(), hexRef8Data::sync(), cellVolumeWeight::update(), oversetFvMeshBase::updateAddressing(), Sampled< Type >::value(), meshToMeshMethod::writeConnectivity(), adjointkOmegaSST::zeroFirstCell(), and cellCellStencil::zoneID().

◆ nInternalFaces()

Foam::label nInternalFaces ( ) const
inlinenoexcept

Number of internal faces.

Definition at line 71 of file primitiveMeshI.H.

Referenced by polyMeshAdder::add(), snappyLayerDriver::addLayers(), polyTopoChange::addMesh(), volPointInterpolationAdjoint::calcBoundaryAddressing(), polyDualMesh::calcFeatures(), deltaBoundary::cellCenters_d(), meshRefinement::checkCoupledFaceZones(), polyBoundaryMesh::checkDefinition(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), faceZone::checkParallelSync(), polyMeshGeometry::checkVolRatio(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), decompositionMethod::decompose(), snappyLayerDriver::doLayers(), faceCoupleInfo::faceCoupleInfo(), localPointRegion::findDuplicateFacePairs(), localPointRegion::findDuplicateFaces(), volPointInterpolation::flatBoundaryField(), boundaryMesh::getNearest(), cellCellStencil::globalCellCells(), cellToCellStencil::insertFaceCells(), cellToFaceStencil::insertFaceCells(), volPointInterpolationAdjoint::interpolateSensitivitiesField(), isoSurfaceTopo::isoSurfaceTopo(), volPointInterpolationAdjoint::makeBoundaryWeights(), fvMeshAdder::MapSurfaceField(), fvMeshTools::newMesh(), polyMeshAdder::patchFacePairs(), boundaryMesh::patchify(), fvMeshDistribute::printCoupleInfo(), fvMeshDistribute::printMeshInfo(), uniformBin::processField(), fvMeshSubset::reset(), fvSurfaceMapper::size(), faceZoneSet::sync(), syncTools::syncBoundaryFaceList(), syncTools::syncEdgeMap(), syncTools::syncFaceList(), cellToCellStencil::validBoundaryFaces(), cellToFaceStencil::validBoundaryFaces(), and polyBoundaryMesh::whichPatchFace().

Here is the caller graph for this function:

◆ nBoundaryFaces()

◆ nInternalPoints()

Foam::label nInternalPoints ( ) const
inlinenoexcept

Points not on boundary.

Definition at line 24 of file primitiveMeshI.H.

◆ 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.

◆ nInternal1Edges()

Foam::label nInternal1Edges ( ) const
inline

Internal edges using 0 or 1 boundary point.

Definition at line 44 of file primitiveMeshI.H.

◆ nInternalEdges()

Foam::label nInternalEdges ( ) const
inline

Internal edges using 0,1 or 2 boundary points.

Definition at line 52 of file primitiveMeshI.H.

Referenced by faBoundaryMesh::checkDefinition(), and leastSquaresEdgeInterpolation< Type >::interpolate().

Here is the caller graph for this function:

◆ points()

virtual const pointField& points ( ) const
pure virtual

Return mesh points.

Implemented in polyMesh.

Referenced by primitiveMesh::calcFaceCentresAndAreas(), primitiveMesh::cellBb(), boundaryMesh::getNearest(), and treeDataFace::findIntersectOp::operator()().

Here is the caller graph for this function:

◆ faces()

virtual const faceList& faces ( ) const
pure virtual

Return faces.

Implemented in polyMesh.

Referenced by primitiveMesh::cellBb(), boundaryMesh::getNearest(), treeDataFace::findIntersectOp::operator()(), treeDataFace::operator[](), and primitiveMesh::pointFaces().

Here is the caller graph for this function:

◆ faceOwner()

virtual const labelList& faceOwner ( ) const
pure virtual

Face face-owner addressing.

Implemented in polyMesh.

◆ faceNeighbour()

virtual const labelList& faceNeighbour ( ) const
pure virtual

Face face-neighbour addressing.

Implemented in polyMesh.

◆ oldPoints()

virtual const pointField& oldPoints ( ) const
pure virtual

Return old points for mesh motion.

Implemented in polyMesh.

◆ cellShapes()

const Foam::cellShapeList & cellShapes ( ) const

Return cell shapes.

Definition at line 325 of file primitiveMesh.C.

◆ 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(), 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 122 of file primitiveMesh.C.

References f(), forAll, nPoints, List< T >::resize_nocopy(), and UList< T >::size().

Here is the call graph for this function:

◆ cellCells() [1/3]

const Foam::labelListList & cellCells ( ) const

Definition at line 95 of file primitiveMeshCellCells.C.

Referenced by meshToMeshMethod::appendNbrCells().

Here is the caller graph for this function:

◆ edgeCells() [1/3]

◆ pointCells() [1/3]

◆ cells()

◆ edgeFaces() [1/3]

◆ pointFaces()

◆ cellEdges() [1/3]

const Foam::labelListList & cellEdges ( ) const

Definition at line 114 of file primitiveMeshCellEdges.C.

Referenced by polyDualMesh::calcFeatures(), geomCellLooper::cut(), primitiveMesh::edgeCells(), and meshCutter::setRefinement().

Here is the caller graph for this function:

◆ faceEdges() [1/3]

const Foam::labelListList & faceEdges ( ) const

Definition at line 533 of file primitiveMeshEdges.C.

References Foam::ensightOutput::debug, Foam::endl(), f(), UList< T >::fcIndex(), forAll, Foam::Pout, List< T >::setSize(), and UList< T >::size().

Referenced by primitiveMesh::edgeFaces(), faMatrix< Type >::setValuesFromList(), and directionInfo::updateCell().

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

◆ pointEdges()

const Foam::labelListList & pointEdges ( ) const

Definition at line 521 of file primitiveMeshEdges.C.

Referenced by addPatchCellLayer::calcExtrudeInfo(), searchableExtrudedCircle::findParametricNearest(), and addPatchCellLayer::globalEdgeFaces().

Here is the caller graph for this function:

◆ pointPoints() [1/3]

const Foam::labelListList & pointPoints ( ) const

Definition at line 87 of file primitiveMeshPointPoints.C.

◆ cellPoints() [1/3]

◆ cellCentres()

◆ faceCentres()

◆ cellVolumes()

◆ faceAreas()

◆ movePoints()

void movePoints ( const pointField p,
const pointField oldP 
)

Move points.

Definition at line 312 of file primitiveMesh.C.

Referenced by polyMesh::movePoints().

Here is the caller graph for this function:

◆ isInternalFace()

◆ checkUpperTriangular()

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

◆ checkCellsZipUp()

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

◆ checkFaceVertices()

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

Check uniqueness of face vertices.

Definition at line 1159 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkPoints()

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

Check for unused points.

Definition at line 1227 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkFaceFaces()

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

Check face-face connectivity.

Definition at line 1496 of file primitiveMeshCheck.C.

References HashTable< T, Key, Hash >::clear(), Foam::ensightOutput::debug, DebugInFunction, Foam::endl(), forAll, Foam::Info, and Foam::reduce().

Here is the call 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 primitiveMesh::checkClosedBoundary(), and primitiveMesh::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 1598 of file primitiveMeshCheck.C.

◆ checkFaceAreas() [2/2]

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

Check for negative face areas.

Definition at line 1618 of file primitiveMeshCheck.C.

◆ checkCellVolumes() [2/2]

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

Check for negative cell volumes.

Definition at line 1634 of file primitiveMeshCheck.C.

◆ checkFaceOrthogonality() [2/2]

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

Check for non-orthogonality.

Reimplemented in polyMesh.

Definition at line 1650 of file primitiveMeshCheck.C.

◆ 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 1666 of file primitiveMeshCheck.C.

References points.

◆ checkFaceSkewness() [2/2]

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

Check face skewness.

Reimplemented in polyMesh.

Definition at line 1685 of file primitiveMeshCheck.C.

References points.

◆ checkFaceAngles() [2/2]

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

Check face angles.

Definition at line 1703 of file primitiveMeshCheck.C.

References points.

◆ 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 1721 of file primitiveMeshCheck.C.

References points.

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

Here is the call graph for this function:

◆ checkEdgeLength()

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

◆ 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 1740 of file primitiveMeshCheck.C.

◆ 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 Foam::ensightOutput::debug, Foam::endl(), and Foam::Info.

Here is the call 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 Foam::ensightOutput::debug, Foam::endl(), and Foam::Info.

Here is the call 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(), Foam::ensightOutput::debug, DebugInFunction, Foam::endl(), and Foam::Info.

Referenced by attachPolyTopoChanger::attach().

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.

◆ setAspectThreshold()

Foam::scalar setAspectThreshold ( const scalar  val)
static

Set the aspect ratio warning threshold.

Definition at line 1852 of file primitiveMeshCheck.C.

◆ setNonOrthThreshold()

Foam::scalar setNonOrthThreshold ( const scalar  val)
static

Set the non-orthogonality warning threshold in degrees.

Definition at line 1861 of file primitiveMeshCheck.C.

◆ 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.

◆ cellBb()

Foam::boundBox cellBb ( const label  celli) const

The bounding box for given cell index.

Definition at line 28 of file primitiveMeshFindCell.C.

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

Referenced by meshToMeshMethod::maskCells(), and Foam::simpleGeometricFilter().

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 41 of file primitiveMeshFindCell.C.

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

Here is the call 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(), forAll, and p.

Referenced by 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 Foam::magSqr(), and UList< T >::size().

Here is the call 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 n.

◆ 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.

Here is the call graph for this function:

◆ hasCellShapes()

bool hasCellShapes ( ) const
inlinenoexcept

Definition at line 104 of file primitiveMeshI.H.

◆ hasEdges()

bool hasEdges ( ) const
inlinenoexcept

Definition at line 110 of file primitiveMeshI.H.

◆ hasCellCells()

bool hasCellCells ( ) const
inlinenoexcept

Definition at line 116 of file primitiveMeshI.H.

◆ hasEdgeCells()

bool hasEdgeCells ( ) const
inlinenoexcept

Definition at line 122 of file primitiveMeshI.H.

◆ hasPointCells()

bool hasPointCells ( ) const
inlinenoexcept

Definition at line 128 of file primitiveMeshI.H.

◆ hasCells()

bool hasCells ( ) const
inlinenoexcept

Definition at line 134 of file primitiveMeshI.H.

◆ hasEdgeFaces()

bool hasEdgeFaces ( ) const
inlinenoexcept

Definition at line 140 of file primitiveMeshI.H.

◆ hasPointFaces()

bool hasPointFaces ( ) const
inlinenoexcept

Definition at line 146 of file primitiveMeshI.H.

◆ hasCellEdges()

bool hasCellEdges ( ) const
inlinenoexcept

Definition at line 152 of file primitiveMeshI.H.

◆ hasFaceEdges()

bool hasFaceEdges ( ) const
inlinenoexcept

Definition at line 158 of file primitiveMeshI.H.

◆ hasPointEdges()

bool hasPointEdges ( ) const
inlinenoexcept

Definition at line 164 of file primitiveMeshI.H.

◆ hasPointPoints()

bool hasPointPoints ( ) const
inlinenoexcept

Definition at line 170 of file primitiveMeshI.H.

◆ hasCellPoints()

bool hasCellPoints ( ) const
inlinenoexcept

Definition at line 176 of file primitiveMeshI.H.

Referenced by treeDataCell::bounds(), Foam::boxesImpl(), and primitiveMesh::cellBb().

Here is the caller graph for this function:

◆ hasCellCentres()

bool hasCellCentres ( ) const
inlinenoexcept

Definition at line 182 of file primitiveMeshI.H.

Referenced by stabilisedFvGeometryScheme::movePoints(), and highAspectRatioFvGeometryScheme::movePoints().

Here is the caller graph for this function:

◆ hasCellVolumes()

bool hasCellVolumes ( ) const
inlinenoexcept

Definition at line 188 of file primitiveMeshI.H.

Referenced by stabilisedFvGeometryScheme::movePoints(), and highAspectRatioFvGeometryScheme::movePoints().

Here is the caller graph for this function:

◆ hasFaceCentres()

bool hasFaceCentres ( ) const
inlinenoexcept

Definition at line 194 of file primitiveMeshI.H.

Referenced by stabilisedFvGeometryScheme::movePoints(), and highAspectRatioFvGeometryScheme::movePoints().

Here is the caller graph for this function:

◆ hasFaceAreas()

bool hasFaceAreas ( ) const
inlinenoexcept

Definition at line 200 of file primitiveMeshI.H.

Referenced by stabilisedFvGeometryScheme::movePoints(), highAspectRatioFvGeometryScheme::movePoints(), and cyclicACMIPolyPatch::resetAMI().

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 107 of file primitiveMeshCellCells.C.

References cells, DynamicList< T, SizeMin >::clear(), 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 144 of file primitiveMeshCellCells.C.

◆ 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.

◆ pointCells() [2/3]

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

◆ pointCells() [3/3]

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

Definition at line 239 of file primitiveMeshPointCells.C.

◆ pointPoints() [2/3]

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

pointPoints using edges, pointEdges

Definition at line 99 of file primitiveMeshPointPoints.C.

References DynamicList< T, SizeMin >::capacity(), DynamicList< T, SizeMin >::clear(), DynamicList< T, SizeMin >::push_back(), DynamicList< T, SizeMin >::setCapacity(), and UList< T >::size().

Here is the call graph for this function:

◆ pointPoints() [3/3]

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

Definition at line 131 of file primitiveMeshPointPoints.C.

◆ 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 630 of file primitiveMeshEdges.C.

◆ edgeFaces() [2/3]

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

edgeFaces using pointFaces, edges, pointEdges

Definition at line 54 of file primitiveMeshEdgeFaces.C.

References DynamicList< T, SizeMin >::append(), DynamicList< T, SizeMin >::clear(), Foam::constant::electromagnetic::e, f(), UList< T >::fcIndex(), UList< T >::find(), UList< T >::rcIndex(), 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.

◆ edgeCells() [2/3]

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

edgeCells using pointFaces, edges, pointEdges

Definition at line 53 of file primitiveMeshEdgeCells.C.

References DynamicList< T, SizeMin >::clear(), UList< T >::contains(), 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.

◆ 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 637 of file primitiveMeshEdges.C.

References DynamicList< T, SizeMin >::capacity(), cells, List< T >::clear(), DynamicList< T, SizeMin >::clear(), 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 672 of file primitiveMeshEdges.C.

◆ updateGeom()

void updateGeom ( )
virtual

◆ clearGeom()

void clearGeom ( )

Clear geometry.

Definition at line 119 of file primitiveMeshClear.C.

References Foam::ensightOutput::debug, Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Pout.

Referenced by polyMesh::clearGeom(), solidBodyFvGeometryScheme::movePoints(), fvGeometryScheme::movePoints(), 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::ensightOutput::debug, Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Pout.

Here is the call graph for this function:

◆ clearAddressing()

void clearAddressing ( )

Clear topological data.

Definition at line 149 of file primitiveMeshClear.C.

References Foam::ensightOutput::debug, Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Pout.

Referenced by polyMesh::clearAddressing().

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.

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.

◆ aspectThreshold_

Foam::scalar aspectThreshold_ = 1000
staticprotected

Aspect ratio warning threshold.

Definition at line 312 of file primitiveMesh.H.

◆ nonOrthThreshold_

Foam::scalar nonOrthThreshold_ = 70
staticprotected

Non-orthogonality warning threshold in deg.

Definition at line 317 of file primitiveMesh.H.

◆ skewThreshold_

Foam::scalar skewThreshold_ = 4
staticprotected

Skewness warning threshold.

Definition at line 322 of file primitiveMesh.H.

◆ planarCosAngle_

Foam::scalar planarCosAngle_ = 1.0e-6
staticprotected

Threshold where faces are considered coplanar.

Definition at line 327 of file primitiveMesh.H.

◆ 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: