Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes
primitiveMesh Class Referenceabstract

Cell-face mesh analysis engine. More...

Inheritance diagram for primitiveMesh:
Inheritance graph
[legend]
Collaboration diagram for primitiveMesh:
Collaboration graph
[legend]

Public Member Functions

 ClassName ("primitiveMesh")
 
 primitiveMesh (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Construct from components. More...
 
virtual ~primitiveMesh ()
 
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 reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells, const Xfer< cellList > &cells)
 Reset this primitiveMesh given the primitive array sizes and cells. More...
 
label nPoints () const
 
label nEdges () const
 
label nInternalFaces () const
 
label nFaces () const
 
label nCells () const
 
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 addresing. 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
 
tmp< scalarFieldmovePoints (const pointField &p, const pointField &oldP)
 Move points, returns volumes swept by faces in motion. More...
 
bool isInternalFace (const label faceIndex) const
 Return true if given face label is internal to the mesh. More...
 
bool checkCellsZipUp (const bool report=false, labelHashSet *setPtr=NULL) const
 Check cell zip-up. More...
 
bool checkFaceVertices (const bool report=false, labelHashSet *setPtr=NULL) const
 Check uniqueness of face vertices. More...
 
bool checkFaceFaces (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face-face connectivity. More...
 
bool checkUpperTriangular (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face ordering. More...
 
bool checkClosedBoundary (const bool report=false) const
 Check boundary for closedness. More...
 
bool checkClosedCells (const bool report=false, labelHashSet *setPtr=NULL, labelHashSet *highAspectSetPtr=NULL) const
 Check cells for closedness. More...
 
bool checkFaceAreas (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for negative face areas. More...
 
bool checkCellVolumes (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for negative cell volumes. More...
 
bool checkFaceOrthogonality (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for non-orthogonality. More...
 
bool checkFacePyramids (const bool report=false, const scalar minPyrVol=-SMALL, labelHashSet *setPtr=NULL) const
 Check face pyramid volume. More...
 
bool checkFaceSkewness (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face skewness. More...
 
bool checkFaceAngles (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face angles. More...
 
bool checkFaceFlatness (const bool report, labelHashSet *setPtr) const
 Check face warpage: decompose face and check ratio between. More...
 
bool checkEdgeAlignment (const bool report, const Vector< label > &directions, labelHashSet *setPtr=NULL) const
 Check edge alignment for 1D/2D cases. More...
 
bool checkPoints (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for unused points. More...
 
bool checkPointNearness (const bool report, const scalar reportDistSqr, labelHashSet *setPtr=NULL) const
 Check for point-point-nearness,. More...
 
bool checkEdgeLength (const bool report, const scalar minLenSqr, labelHashSet *setPtr=NULL) const
 Check edge length. More...
 
bool checkCellDeterminant (const bool report=false, labelHashSet *setPtr=NULL) const
 Check cell determinant. More...
 
bool checkTopology (const bool report=false) const
 Check mesh topology for correctness. More...
 
bool checkGeometry (const bool report=false) const
 Check mesh geometry (& implicitly topology) for correctness. More...
 
bool checkMesh (const bool report=false) const
 Check mesh for correctness. Returns false for no error. More...
 
bool checkMeshMotion (const pointField &newPoints, const bool report=false) const
 Check mesh motion for correctness given motion points. More...
 
bool pointInCellBB (const point &p, label celli) const
 Is the point in the cell bounding box. More...
 
bool pointInCell (const point &p, label celli) const
 Is the point 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
 
bool hasEdges () const
 
bool hasCellCells () const
 
bool hasEdgeCells () const
 
bool hasPointCells () const
 
bool hasCells () const
 
bool hasEdgeFaces () const
 
bool hasPointFaces () const
 
bool hasCellEdges () const
 
bool hasFaceEdges () const
 
bool hasPointEdges () const
 
bool hasPointPoints () const
 
bool hasCellPoints () const
 
bool hasCellCentres () const
 
bool hasFaceCentres () const
 
bool hasCellVolumes () const
 
bool hasFaceAreas () const
 
const labelListcellCells (const label cellI, dynamicLabelList &) const
 cellCells using cells. More...
 
const labelListcellCells (const label cellI) const
 
const labelListcellPoints (const label cellI, dynamicLabelList &) const
 cellPoints using cells More...
 
const labelListcellPoints (const label cellI) const
 
const labelListpointCells (const label pointI, dynamicLabelList &) const
 pointCells using pointFaces More...
 
const labelListpointCells (const label pointI) const
 
const labelListpointPoints (const label pointI, dynamicLabelList &) const
 pointPoints using edges, pointEdges More...
 
const labelListpointPoints (const label pointI) const
 
const labelListfaceEdges (const label faceI, dynamicLabelList &) const
 faceEdges using pointFaces, edges, pointEdges More...
 
const labelListfaceEdges (const label faceI) const
 
const labelListedgeFaces (const label edgeI, dynamicLabelList &) const
 edgeFaces using pointFaces, edges, pointEdges More...
 
const labelListedgeFaces (const label edgeI) const
 
const labelListedgeCells (const label edgeI, dynamicLabelList &) const
 edgeCells using pointFaces, edges, pointEdges More...
 
const labelListedgeCells (const label edgeI) const
 
const labelListcellEdges (const label cellI, dynamicLabelList &) const
 cellEdges using cells, pointFaces, edges, pointEdges More...
 
const labelListcellEdges (const label cellI) const
 
void clearGeom ()
 Clear geometry. More...
 
void clearAddressing ()
 Clear topological data. More...
 
void clearOut ()
 Clear all geometry and addressing unnecessary for CFD. More...
 
 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 reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells, const Xfer< cellList > &cells)
 Reset this primitiveMesh given the primitive array sizes and cells. More...
 
label nPoints () const
 
label nEdges () const
 
label nInternalFaces () const
 
label nFaces () const
 
label nCells () const
 
label nInternalPoints () const
 Points not on boundary. More...
 
label nInternal0Edges () const
 Internal edges (i.e. not on boundary face) using. 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 addresing. 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
 
tmp< scalarFieldmovePoints (const pointField &p, const pointField &oldP)
 Move points, returns volumes swept by faces in motion. More...
 
bool isInternalFace (const label faceIndex) const
 Return true if given face label is internal to the mesh. More...
 
virtual bool checkUpperTriangular (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face ordering. More...
 
virtual bool checkCellsZipUp (const bool report=false, labelHashSet *setPtr=NULL) const
 Check cell zip-up. More...
 
virtual bool checkFaceVertices (const bool report=false, labelHashSet *setPtr=NULL) const
 Check uniqueness of face vertices. More...
 
virtual bool checkPoints (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for unused points. More...
 
virtual bool checkFaceFaces (const bool report=false, labelHashSet *setPtr=NULL) 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=NULL, labelHashSet *highAspectSetPtr=NULL, const Vector< label > &solutionD=Vector< label >::one) const
 Check cells for closedness. More...
 
virtual bool checkFaceAreas (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for negative face areas. More...
 
virtual bool checkCellVolumes (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for negative cell volumes. More...
 
virtual bool checkFaceOrthogonality (const bool report=false, labelHashSet *setPtr=NULL) const
 Check for non-orthogonality. More...
 
virtual bool checkFacePyramids (const bool report=false, const scalar minPyrVol=-SMALL, labelHashSet *setPtr=NULL) const
 Check face pyramid volume. More...
 
virtual bool checkFaceSkewness (const bool report=false, labelHashSet *setPtr=NULL) const
 Check face skewness. More...
 
virtual bool checkFaceAngles (const bool report=false, const scalar maxSin=10, labelHashSet *setPtr=NULL) 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=NULL) const
 Check for point-point-nearness,. More...
 
virtual bool checkEdgeLength (const bool report, const scalar minLenSqr, labelHashSet *setPtr=NULL) const
 Check edge length. More...
 
virtual bool checkConcaveCells (const bool report=false, labelHashSet *setPtr=NULL) 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...
 
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
 
bool hasEdges () const
 
bool hasCellCells () const
 
bool hasEdgeCells () const
 
bool hasPointCells () const
 
bool hasCells () const
 
bool hasEdgeFaces () const
 
bool hasPointFaces () const
 
bool hasCellEdges () const
 
bool hasFaceEdges () const
 
bool hasPointEdges () const
 
bool hasPointPoints () const
 
bool hasCellPoints () const
 
bool hasCellCentres () const
 
bool hasFaceCentres () const
 
bool hasCellVolumes () const
 
bool hasFaceAreas () const
 
const labelListcellCells (const label cellI, DynamicList< label > &) const
 cellCells using cells. More...
 
const labelListcellCells (const label cellI) const
 
const labelListcellPoints (const label cellI, 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, DynamicList< label > &) const
 cellEdges using cells, pointFaces, edges, pointEdges More...
 
const labelListcellEdges (const label cellI) const
 
void clearGeom ()
 Clear geometry. 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 unallocLabelList &own, const unallocLabelList &nei, const label nCells=-1)
 Helper function to calculate cell-face addressing from. More...
 
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...
 
static const debug::tolerancesSwitch closedThreshold_ = 1.0e-6
 Static data to control mesh checking. More...
 
static const debug::tolerancesSwitch aspectThreshold_ = 1000
 Aspect ratio warning threshold. More...
 
static Foam::debug::tolerancesSwitch nonOrthThreshold_ = 70
 Non-orthogonality warning threshold in deg. More...
 
static const debug::tolerancesSwitch skewThreshold_ = 4
 Skewness warning threshold. More...
 
static Foam::debug::tolerancesSwitch faceAngleThreshold_
 Face angle threshold. More...
 
static const debug::tolerancesSwitch faceFlatnessThreshold_
 Face flatness threshold. More...
 

Protected Member Functions

 primitiveMesh ()
 Construct null. More...
 
void calcFaceCentresAndAreas () const
 Calculate face centres and areas. More...
 
void makeFaceCentresAndAreas (const pointField &p, vectorField &fCtrs, vectorField &fAreas) const
 
void calcCellCentresAndVols () const
 Calculate cell centres and volumes. More...
 
void makeCellCentresAndVols (const vectorField &fCtrs, const vectorField &fAreas, vectorField &cellCtrs, scalarField &cellVols) const
 
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 &, const bool, const PackedBoolList &) 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_
 Static data to control mesh checking. More...
 
static scalar aspectThreshold_
 Aspect ratio warning threshold. More...
 
static scalar nonOrthThreshold_
 Non-orthogonality warning threshold in deg. More...
 
static scalar skewThreshold_
 Skewness warning threshold. More...
 
static scalar planarCosAngle_ = 1.0e-6
 Threshold where faces are considered coplanar. More...
 

Private Member Functions

 primitiveMesh (const primitiveMesh &)
 Disallow construct as copy. More...
 
void operator= (const primitiveMesh &)
 Disallow default bitwise assignment. More...
 
void calcCellShapes () const
 Calculate cell shapes. More...
 
void calcCellCells () const
 Calculate cell-cell addressing. More...
 
void calcPointCells () const
 Calculate point-cell addressing. More...
 
void calcCells () const
 Calculate cell-face addressing. More...
 
void calcCellEdges () const
 Calculate edge list. More...
 
void calcPointEdges () const
 Calculate point-edge addressing. More...
 
void calcPointPoints () const
 Calculate point-point addressing. More...
 
void calcEdges () const
 Calculate edges, pointEdges and faceEdges. More...
 
void clearOutEdges ()
 During edge calculation, a larger set of data is assembled. More...
 
void calcFaceCentresAndAreas () const
 Calculate face centres and areas. More...
 
void makeFaceCentresAndAreas (const pointField &p, vectorField &fCtrs, vectorField &fAreas) const
 
void calcCellCentresAndVols () const
 Calculate cell centres and volumes. More...
 
void makeCellCentresAndVols (const vectorField &fCtrs, const vectorField &fAreas, vectorField &cellCtrs, scalarField &cellVols) const
 
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...
 
 primitiveMesh (const primitiveMesh &)
 Disallow construct as copy. More...
 
void operator= (const primitiveMesh &)
 Disallow default bitwise assignment. More...
 
void calcCellShapes () const
 Calculate cell shapes. More...
 
void calcCellCells () const
 Calculate cell-cell addressing. More...
 
void calcPointCells () const
 Calculate point-cell addressing. More...
 
void calcCells () const
 Calculate cell-face addressing. More...
 
void calcCellEdges () const
 Calculate edge list. More...
 
void calcPointPoints () const
 Calculate point-point addressing. More...
 
void calcEdges (const bool doFaceEdges) const
 Calculate edges, pointEdges and faceEdges (if doFaceEdges=true) More...
 
void clearOutEdges ()
 

Static Private Member Functions

static label getEdge (List< dynamicLabelList > &, DynamicList< edge > &, const label, const label)
 Helper: More...
 
static label findFirstCommonElementFromSortedLists (const labelList &, const labelList &)
 For on-the-fly addressing calculation. More...
 
static label getEdge (List< DynamicList< label > > &, DynamicList< edge > &, const label, const label)
 Helper: return (after optional creation) edge between two points. More...
 
static label findFirstCommonElementFromSortedLists (const labelList &, const labelList &)
 For on-the-fly addressing calculation. More...
 

Private Attributes

label nPoints_
 Number of points. More...
 
label nEdges_
 Number of edges. More...
 
label nInternalFaces_
 Number of internal faces. More...
 
label nFaces_
 Number of faces. More...
 
label nCells_
 Number of cells. More...
 
cellShapeListcellShapesPtr_
 Cell shapes. More...
 
edgeListedgesPtr_
 Edges are ordered in upper triangular order. More...
 
labelListListccPtr_
 Cell-cells. More...
 
labelListListecPtr_
 Edge-cells. More...
 
labelListListpcPtr_
 Point-cells. More...
 
cellListcfPtr_
 Cell-faces. More...
 
labelListListefPtr_
 Edge-faces. More...
 
labelListListpfPtr_
 Point-faces. More...
 
labelListListcePtr_
 Cell-edges. More...
 
labelListListfePtr_
 Face-edges. More...
 
labelListListpePtr_
 Point-edges. More...
 
labelListListppPtr_
 Point-points. More...
 
labelListListcpPtr_
 Cell-points. More...
 
dynamicLabelList labels_
 Temporary storage for addressing. More...
 
labelHashSet labelSet_
 Temporary storage for addressing. More...
 
vectorFieldcellCentresPtr_
 Cell centres. More...
 
vectorFieldfaceCentresPtr_
 Face centres. More...
 
scalarFieldcellVolumesPtr_
 Cell volumes. More...
 
vectorFieldfaceAreasPtr_
 Face areas. More...
 
label nInternalPoints_
 Number of internal points (or -1 if points not sorted) More...
 
label nInternal0Edges_
 Number of internal edges using 0 boundary points. More...
 
label nInternal1Edges_
 Number of internal edges using 0 or 1 boundary points. More...
 
label nInternalEdges_
 Number of internal edges using 0,1 or 2boundary points. More...
 
DynamicList< labellabels_
 Temporary storage for addressing. More...
 

Detailed Description

Cell-face mesh analysis engine.

Source files

Source files

Definition at line 79 of file primitiveMesh.H.

Constructor & Destructor Documentation

◆ primitiveMesh() [1/6]

primitiveMesh ( const primitiveMesh )
private

Disallow construct as copy.

◆ primitiveMesh() [2/6]

primitiveMesh ( )
protected

Construct null.

Definition at line 36 of file primitiveMesh.C.

◆ primitiveMesh() [3/6]

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() [1/2]

~primitiveMesh ( )
virtual

Definition at line 112 of file primitiveMesh.C.

◆ primitiveMesh() [4/6]

primitiveMesh ( const primitiveMesh )
private

Disallow construct as copy.

◆ primitiveMesh() [5/6]

primitiveMesh ( )
protected

Construct null.

◆ primitiveMesh() [6/6]

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

Construct from components.

◆ ~primitiveMesh() [2/2]

virtual ~primitiveMesh ( )
virtual

Destructor.

Member Function Documentation

◆ operator=() [1/2]

void operator= ( const primitiveMesh )
private

Disallow default bitwise assignment.

◆ calcCellShapes() [1/2]

void calcCellShapes ( ) const
private

◆ calcCellCells() [1/2]

void calcCellCells ( ) const
private

◆ calcPointCells() [1/2]

void calcPointCells ( ) const
private

Calculate point-cell addressing.

Definition at line 31 of file primitiveMeshPointCells.C.

References Foam::abort(), primitiveMesh::cells(), Foam::endl(), primitiveMesh::faces(), Foam::FatalError, FatalErrorIn, forAll, primitiveMesh::nPoints(), primitiveMesh::pcPtr_, Foam::Pout, List::setSize(), and List::size().

Here is the call graph for this function:

◆ calcCells() [1/4]

void calcCells ( ) const
private

Calculate cell-face addressing.

Definition at line 99 of file primitiveMeshCells.C.

References Foam::abort(), primitiveMesh::cfPtr_, Foam::endl(), primitiveMesh::faceNeighbour(), primitiveMesh::faceOwner(), Foam::FatalError, FatalErrorIn, primitiveMesh::nCells(), and Foam::Pout.

Here is the call graph for this function:

◆ calcCellEdges() [1/2]

void calcCellEdges ( ) const
private

◆ calcPointEdges()

void calcPointEdges ( ) const
private

Calculate point-edge addressing.

Definition at line 35 of file primitiveMeshPointEdges.C.

References Foam::abort(), Foam::e, primitiveMesh::edges(), Foam::endl(), Foam::FatalError, FatalErrorIn, forAll, primitiveMesh::nPoints(), primitiveMesh::pePtr_, Foam::Pout, List::setSize(), and List::size().

Referenced by primitiveMesh::pointEdges().

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

◆ calcPointPoints() [1/2]

void calcPointPoints ( ) const
private

Calculate point-point addressing.

Definition at line 30 of file primitiveMeshPointPoints.C.

References Foam::abort(), Foam::e, primitiveMesh::edges(), Foam::endl(), Foam::FatalError, FatalErrorIn, forAll, primitiveMesh::pointEdges(), Foam::Pout, primitiveMesh::ppPtr_, List::setSize(), and List::size().

Here is the call graph for this function:

◆ calcEdges() [1/2]

void calcEdges ( ) const
private

◆ clearOutEdges() [1/2]

void clearOutEdges ( )
private

During edge calculation, a larger set of data is assembled.

Create and destroy as a set, using clearOutEdges()

Definition at line 379 of file primitiveMeshEdges.C.

References Foam::deleteDemandDrivenData().

Here is the call graph for this function:

◆ getEdge() [1/2]

Foam::label getEdge ( List< dynamicLabelList > &  pe,
DynamicList< edge > &  es,
const label  pointI,
const label  nextPointI 
)
staticprivate

Helper:

return (after optional creation) edge between two points

Definition at line 36 of file primitiveMeshEdges.C.

References List::append(), DynamicList::append(), Foam::constant::electromagnetic::e, and forAll.

Referenced by primitiveMesh::calcEdges().

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

◆ findFirstCommonElementFromSortedLists() [1/2]

Foam::label findFirstCommonElementFromSortedLists ( const labelList list1,
const labelList list2 
)
staticprivate

For on-the-fly addressing calculation.

Definition at line 312 of file primitiveMeshEdges.C.

References Foam::abort(), Foam::FatalError, and FatalErrorIn.

Here is the call graph for this function:

◆ calcFaceCentresAndAreas() [1/2]

void calcFaceCentresAndAreas ( ) const
private

◆ makeFaceCentresAndAreas() [1/2]

void makeFaceCentresAndAreas ( const pointField p,
vectorField fCtrs,
vectorField fAreas 
) const
private

Definition at line 74 of file primitiveMeshFaceCentresAndAreas.C.

References Foam::constant::universal::c, f(), forAll, Foam::mag(), n, nPoints, p, Foam::constant::mathematical::pi(), List::size(), and Vector< scalar >::zero.

Referenced by primitiveMesh::calcFaceCentresAndAreas().

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

◆ calcCellCentresAndVols() [1/2]

void calcCellCentresAndVols ( ) const
private

◆ makeCellCentresAndVols() [1/2]

void makeCellCentresAndVols ( const vectorField fCtrs,
const vectorField fAreas,
vectorField cellCtrs,
scalarField cellVols 
) const
private

Definition at line 75 of file primitiveMeshCellCentresAndVols.C.

References Foam::DelaunayMeshTools::allPoints(), cellVols, tetrahedron::centre(), f(), forAll, tetrahedron::mag(), points, List::size(), and Vector< scalar >::zero.

Referenced by primitiveMesh::calcCellCentresAndVols().

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

◆ calcEdgeVectors() [1/2]

void calcEdgeVectors ( ) const
private

Calculate edge vectors.

◆ checkDuplicateFaces() [1/2]

bool checkDuplicateFaces ( const label  faceI,
const Map< label > &  nCommonPoints,
label nBaffleFaces,
labelHashSet setPtr 
) const
private

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

Definition at line 1629 of file primitiveMeshCheck.C.

References forAllConstIter(), HashSet< Key, Hash >::insert(), and List::size().

Here is the call graph for this function:

◆ checkCommonOrder() [1/2]

bool checkCommonOrder ( const label  faceI,
const Map< label > &  nCommonPoints,
labelHashSet setPtr 
) const
private

Check that shared points are in consecutive order.

Definition at line 1671 of file primitiveMeshCheck.C.

References Foam::findIndex(), forAll, forAllConstIter(), HashSet< Key, Hash >::insert(), Foam::labelMax, and List::size().

Here is the call graph for this function:

◆ ClassName() [1/2]

ClassName ( "primitiveMesh"  )

◆ reset() [1/6]

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

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

Referenced by polyMesh::initMesh(), VoidFraction< CloudType >::preEvolve(), and ParticleErosion< CloudType >::preEvolve().

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

◆ reset() [2/6]

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

References nPoints.

◆ reset() [3/6]

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

Reset this primitiveMesh given the primitive array sizes and cells.

Definition at line 172 of file primitiveMesh.C.

References nPoints.

◆ nPoints() [1/2]

label nPoints ( ) const
inline

Definition at line 35 of file primitiveMeshI.H.

References primitiveMesh::nPoints_.

Referenced by polyMeshAdder::add(), autoLayerDriver::addLayers(), polyTopoChange::addMesh(), primitiveMesh::calcEdges(), primitiveMesh::calcPointCells(), primitiveMesh::calcPointEdges(), polyTopoChange::changeMesh(), pointZone::checkParallelSync(), zoneToPoint::combine(), sampledCuttingPlane::createGeometry(), distanceSurface::createGeometry(), createReconstructMap(), displacementInterpolationMotionSolver::curPoints(), displacementMotionSolver::displacementMotionSolver(), fvMeshDistribute::distribute(), meshToMesh::distributeCells(), edgeVertex::edgeToEVert(), polyMeshFilter::filterEdges(), polyMeshFilter::filterFaces(), polyMeshFilter::filterFacesLoop(), edgeVertex::getEdge(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), polyMesh::initMesh(), edgeVertex::isEdge(), localPointRegion::localPointRegion(), main(), polyTopoChange::makeMesh(), polyMeshAdder::mergePrimitives(), meshTriangulation::meshTriangulation(), multiSolidBodyMotionFvMesh::multiSolidBodyMotionFvMesh(), vtkMesh::nFieldPoints(), sampledSurface::pointAverage(), primitiveMesh::pointFaces(), pointSet::pointSet(), pointZoneSet::pointZoneSet(), polyMesh::polyMesh(), fvMeshDistribute::printMeshInfo(), readProcAddressing(), processorMeshes::reconstructPoints(), multiDirRefinement::refineHex8(), reorderMesh(), fvMeshDistribute::sendMesh(), motionSmootherAlgo::setDisplacement(), pointMesh::size(), solidBodyMotionFvMesh::solidBodyMotionFvMesh(), sixDoFRigidBodyMotionSolver::solve(), hexRef8Data::sync(), syncPoints(), testPackedList(), testPointSync(), testSparseData(), meshRefinement::testSyncPointList(), sampledIsoSurfaceCell::updateGeometry(), polyMeshFilter::updatePointPriorities(), edgeVertex::vertToEVert(), vtkTopo::vtkTopo(), and writeProcAddressing().

◆ nEdges() [1/2]

label nEdges ( ) const
inline

◆ nInternalFaces() [1/2]

label nInternalFaces ( ) const
inline

Definition at line 52 of file primitiveMeshI.H.

References primitiveMesh::nInternalFaces_.

Referenced by polyMeshAdder::add(), autoLayerDriver::addLayers(), polyTopoChange::addMesh(), volPointInterpolation::calcBoundaryAddressing(), CFCCellToCellStencil::calcCellStencil(), CFCFaceToCellStencil::calcCellStencil(), polyDualMesh::calcFeatures(), edgeCollapser::calcTargetFaceSizes(), meshToMesh::calculate(), blockMesh::checkBlockMesh(), primitiveMesh::checkClosedBoundary(), meshRefinement::checkCoupledFaceZones(), polyBoundaryMesh::checkDefinition(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), faceZone::checkParallelSync(), polyMeshGeometry::checkVolRatio(), nbrToCell::combine(), cellToFace::combine(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), determineCoupledFaces(), fvMeshDistribute::distribute(), dynamicRefineFvMesh::dynamicRefineFvMesh(), faceCoupleInfo::faceCoupleInfo(), FacePostProcessing< CloudType >::FacePostProcessing(), findBaffles(), fvMeshDistribute::findCouples(), localPointRegion::findDuplicateFacePairs(), localPointRegion::findDuplicateFaces(), faceCoupleInfo::findPerfectMatchingFaces(), faceCoupleInfo::findSlavesCoveringMaster(), volPointInterpolation::flatBoundaryField(), autoLayerDriver::getBafflesOnAddedMesh(), boundaryMesh::getNearest(), getRegionFaceOrder(), polyMesh::initMesh(), insertDuplicateMerge(), cellToCellStencil::insertFaceCells(), cellToFaceStencil::insertFaceCells(), fvMeshSubset::interpolate(), primitiveMesh::isInternalFace(), main(), volPointInterpolation::makeBoundaryWeights(), fvMeshDistribute::mapBoundaryData(), polyMeshAdder::mergePrimitives(), boundaryMesh::patchify(), fvMeshDistribute::printCoupleInfo(), printMeshData(), fvMeshDistribute::printMeshInfo(), boundaryMesh::read(), layerAdditionRemoval::removeCellLayer(), SloanRenumber::renumber(), mappedPatchBase::sampleSize(), MRFZone::setMRFFaces(), fvSurfaceMapper::size(), fvMeshDistribute::subsetBoundaryData(), testSparseData(), meshRefinement::updateIntersections(), cellToCellStencil::validBoundaryFaces(), cellToFaceStencil::validBoundaryFaces(), polyBoundaryMesh::whichPatch(), regionSizeDistribution::write(), autoLayerDriver::writeLayerSets(), and Foam::writeSurfFields().

◆ nFaces() [1/2]

label nFaces ( ) const
inline

Definition at line 58 of file primitiveMeshI.H.

References primitiveMesh::nFaces_.

Referenced by polyMeshAdder::add(), autoLayerDriver::addLayers(), meshRefinement::addPatch(), faceMapper::calcAddressing(), CFCFaceToCellStencil::calcCellStencil(), CFCCellToCellStencil::calcCellStencil(), primitiveMesh::calcEdges(), primitiveMesh::calcFaceCentresAndAreas(), cellCuts::calcFaceCuts(), polyDualMesh::calcFeatures(), edgeCollapser::calcTargetFaceSizes(), meshToMesh::calculate(), polyTopoChange::changeMesh(), autoLayerDriver::checkAndUnmark(), meshRefinement::checkCoupledFaceZones(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), faceZone::checkParallelSync(), polyMeshGeometry::checkVolRatio(), boundaryToFace::combine(), nbrToCell::combine(), zoneToFace::combine(), badQualityToFace::combine(), badQualityToCell::combine(), cellToFace::combine(), parFvFieldReconstructor::createPatchFaceMaps(), createReconstructMap(), structuredDecomp::decompose(), determineCoupledFaces(), autoLayerDriver::determineSidePatches(), fvMeshDistribute::distribute(), meshToMesh::distributeCells(), autoLayerDriver::doLayers(), autoSnapDriver::doSnap(), dynamicRefineFvMesh::dynamicRefineFvMesh(), faceMapper::faceMapper(), faceSet::faceSet(), faceZoneSet::faceZoneSet(), findBaffles(), localPointRegion::findDuplicateFacePairs(), faceCoupleInfo::findPerfectMatchingFaces(), faceCoupleInfo::findSlavesCoveringMaster(), volPointInterpolation::flatBoundaryField(), fvFieldReconstructor::fvFieldReconstructor(), autoLayerDriver::getBafflesOnAddedMesh(), getFaceOrder(), syncTools::getInternalOrCoupledFaces(), syncTools::getInternalOrMasterFaces(), autoLayerDriver::getLayerCellsFaces(), syncTools::getMasterFaces(), boundaryMesh::getNearest(), getRegionFaceOrder(), polyMesh::initMesh(), main(), polyTopoChange::makeMesh(), fvMeshDistribute::mapBoundaryData(), polyMeshFilter::mapOldMeshFaceFieldToNewMesh(), mappedPatchFieldBase< Type >::mappedField(), autoLayerDriver::mergePatchFacesUndo(), polyMeshAdder::mergePrimitives(), nearestPatch(), boundaryMesh::patchify(), printMeshData(), fvMeshDistribute::printMeshInfo(), wallBoundedStreamLine::read(), boundaryMesh::read(), readProcAddressing(), SloanRenumber::renumber(), reorderMesh(), mappedPatchBase::sampleSize(), fvMeshDistribute::sendMesh(), MRFZone::setMRFFaces(), fvMeshDistribute::subsetBoundaryData(), testFaceSync(), testPackedList(), testSparseData(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), myMappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), mappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), meshRefinement::updateIntersections(), polyBoundaryMesh::whichPatch(), regionSizeDistribution::write(), writeProcAddressing(), and Foam::writeSurfFields().

◆ nCells() [1/2]

label nCells ( ) const
inline

Definition at line 64 of file primitiveMeshI.H.

References primitiveMesh::nCells_.

Referenced by refinementHistoryConstraint::add(), polyMeshAdder::add(), autoLayerDriver::addLayers(), polyTopoChange::addMesh(), mixerFvMesh::addZonesAndModifiers(), refinementHistoryConstraint::apply(), cellMapper::calcAddressing(), primitiveMesh::calcCellCells(), primitiveMesh::calcCellCentresAndVols(), primitiveMesh::calcCellEdges(), primitiveMesh::calcCells(), primitiveMesh::calcCellShapes(), meshToMesh::calcDistribution(), meshToMesh::calcProcMap(), meshToMesh::calculate(), meshToMesh0::calculateInverseDistanceWeights(), cellCuts::cellCuts(), cellMapper::cellMapper(), primitiveMesh::cellPoints(), cellSet::cellSet(), cellZoneSet::cellZoneSet(), polyTopoChange::changeMesh(), zoneToCell::combine(), shapeToCell::combine(), faceZoneToCell::combine(), targetVolumeToCell::combine(), regionToCell::combine(), surfaceToCell::combine(), drippingInjection::correct(), createReconstructMap(), structuredDecomp::decompose(), determineCoupledFaces(), fvMeshDistribute::distribute(), refinementHistory::distribute(), meshToMesh::distributeCells(), autoLayerDriver::doLayers(), dynamicRefineFvMesh::dynamicRefineFvMesh(), refinementParameters::findCells(), meshRefinement::findRegions(), fvFieldReconstructor::fvFieldReconstructor(), autoLayerDriver::getLayerCellsFaces(), hexRef8::getLevel0EdgeLength(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), polyMesh::initMesh(), main(), polyTopoChange::makeMesh(), mappedPatchFieldBase< Type >::mappedField(), meshToMesh::mapSrcToTgt(), meshToMesh::mapTgtToSrc(), meshToMeshMethod::maskCells(), polyMeshAdder::mergePrimitives(), nearestPatch(), cellTable::operator=(), sampledSurface::pointAverage(), polyMesh::polyMesh(), printMeshData(), fvMeshDistribute::printMeshInfo(), readProcAddressing(), ensightParts::recalculate(), reconstructLagrangian(), multiDirRefinement::refineHex8(), refinementHistory::refinementHistory(), CuthillMcKeeRenumber::renumber(), zoltanRenumber::renumber(), SloanRenumber::renumber(), springRenumber::renumber(), reorderMesh(), fvMeshDistribute::sendMesh(), MRFZone::setMRFFaces(), solidBodyMotionFvMesh::solidBodyMotionFvMesh(), hexRef8Data::sync(), sampledIsoSurfaceCell::updateGeometry(), vtkTopo::vtkTopo(), regionSizeDistribution::write(), writeCellDistance(), meshToMeshMethod::writeConnectivity(), domainDecomposition::writeDecomposition(), and writeProcAddressing().

◆ points() [1/2]

virtual const pointField& points ( ) const
pure virtual

◆ faces() [1/2]

virtual const faceList& faces ( ) const
pure virtual

◆ faceOwner() [1/2]

virtual const labelList& faceOwner ( ) const
pure virtual

Face face-owner addresing.

Implemented in polyMesh.

Referenced by primitiveMesh::calcCellCells(), primitiveMesh::calcCellEdges(), primitiveMesh::calcCells(), and tetOverlapVolume::cellCellOverlapMinDecomp().

Here is the caller graph for this function:

◆ faceNeighbour() [1/2]

virtual const labelList& faceNeighbour ( ) const
pure virtual

Face face-neighbour addressing.

Implemented in polyMesh.

Referenced by primitiveMesh::calcCellCells(), primitiveMesh::calcCellEdges(), and primitiveMesh::calcCells().

Here is the caller graph for this function:

◆ oldPoints() [1/2]

virtual const pointField& oldPoints ( ) const
pure virtual

Return old points for mesh motion.

Implemented in polyMesh.

◆ cellShapes() [1/2]

const Foam::cellShapeList & cellShapes ( ) const

Return cell shapes.

Definition at line 230 of file primitiveMesh.C.

Referenced by primitiveMesh::calcCellShapes(), shapeToCell::combine(), main(), and vtkTopo::vtkTopo().

Here is the caller graph for this function:

◆ edges() [1/2]

const Foam::edgeList & edges ( ) const

◆ calcCells() [2/4]

void calcCells ( cellList cellFaceAddr,
const unallocLabelList own,
const unallocLabelList 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 31 of file primitiveMeshCells.C.

References forAll, Foam::max(), List::setSize(), and List::size().

Here is the call graph for this function:

◆ cellCells() [1/6]

const Foam::labelListList & cellCells ( ) const

◆ edgeCells() [1/6]

const Foam::labelListList & edgeCells ( ) const

Definition at line 32 of file primitiveMeshEdgeCells.C.

References Foam::abort(), primitiveMesh::cellEdges(), primitiveMesh::ecPtr_, Foam::endl(), Foam::FatalError, FatalErrorIn, Foam::invertManyToMany(), primitiveMesh::nEdges(), and Foam::Pout.

Referenced by polyTopoChange::calcCellInflationMaps(), and main().

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

◆ pointCells() [1/6]

const Foam::labelListList & pointCells ( ) const

◆ cells() [1/2]

const Foam::cellList & cells ( ) const

Definition at line 136 of file primitiveMeshCells.C.

Referenced by layerAdditionRemoval::addCellLayer(), meshToMesh0::calcAddressing(), cellCuts::calcAnchors(), treeDataCell::calcCellBb(), cellCuts::calcCellLoops(), CFCCellToCellStencil::calcCellStencil(), CFCFaceToCellStencil::calcCellStencil(), blockMesh::calcMergeInfo(), blockMesh::calcMergeInfoFast(), primitiveMesh::calcPointCells(), meshToMesh::calcProcMap(), tetOverlapVolume::cellCellOverlapMinDecomp(), autoLayerDriver::cellsUseFace(), layerAdditionRemoval::changeTopology(), blockMesh::checkBlockMesh(), primitiveMeshGeometry::checkCellDeterminant(), polyMeshGeometry::checkCellDeterminant(), primitiveMeshGeometry::checkFacePyramids(), polyMeshGeometry::checkFacePyramids(), nbrToCell::combine(), cellToPoint::combine(), faceToCell::combine(), cellToFace::combine(), inversePointDistanceDiffusivity::correct(), outletStabilised< Type >::correction(), geomCellLooper::cut(), topoCellLooper::cut(), dynamicRefineFvMesh::dynamicRefineFvMesh(), detectBoundaryLayers::findHairsForFace(), sampledSet::findNearFace(), getFaceOrder(), getRegionFaceOrder(), SurfaceFilmModel< CloudType >::inject(), wedgeMatcher::isA(), hexMatcher::isA(), prismMatcher::isA(), pyrMatcher::isA(), tetMatcher::isA(), tetWedgeMatcher::isA(), cellCuts::loopFace(), main(), meshToMeshMethod::maskCells(), meshToMesh::maskCells(), degenerateMatcher::match(), tetMatcher::matches(), prismMatcher::matches(), wedgeMatcher::matches(), tetWedgeMatcher::matches(), hexMatcher::matches(), pyrMatcher::matches(), polyMeshAdder::mergePrimitives(), multiSolidBodyMotionFvMesh::multiSolidBodyMotionFvMesh(), tetIndices::oldTet(), treeDataCell::findIntersectOp::operator()(), partTetMesh::partTetMesh(), primitiveMesh::pointInCellBB(), wallBoundedStreamLine::read(), layerAdditionRemoval::removeCellLayer(), meshCutter::setRefinement(), solidBodyMotionFvMesh::solidBodyMotionFvMesh(), Taverage(), Uaverage(), sampledTriSurfaceMesh::update(), wallLayerCells::usesCoupledPatch(), vtkTopo::vtkTopo(), outletStabilised< Type >::weights(), meshToMeshMethod::writeConnectivity(), and writeVTK().

◆ edgeFaces() [1/6]

const Foam::labelListList & edgeFaces ( ) const

◆ pointFaces() [1/2]

const Foam::labelListList & pointFaces ( ) const

◆ cellEdges() [1/6]

const Foam::labelListList & cellEdges ( ) const

◆ faceEdges() [1/6]

const Foam::labelListList & faceEdges ( ) const

◆ pointEdges() [1/2]

const Foam::labelListList & pointEdges ( ) const

◆ pointPoints() [1/6]

const Foam::labelListList & pointPoints ( ) const

Definition at line 91 of file primitiveMeshPointPoints.C.

Referenced by main().

Here is the caller graph for this function:

◆ cellPoints() [1/6]

const Foam::labelListList & cellPoints ( ) const

◆ cellCentres() [1/2]

const Foam::vectorField & cellCentres ( ) const

◆ faceCentres() [1/2]

const Foam::vectorField & faceCentres ( ) const

◆ cellVolumes() [1/2]

const Foam::scalarField & cellVolumes ( ) const

◆ faceAreas() [1/2]

const Foam::vectorField & faceAreas ( ) const

◆ movePoints() [1/2]

Foam::tmp< Foam::scalarField > movePoints ( const pointField p,
const pointField oldP 
)

Move points, returns volumes swept by faces in motion.

Definition at line 193 of file primitiveMesh.C.

References Foam::abort(), f(), Foam::FatalError, FatalErrorIn, forAll, Foam::nl, nPoints, and List::size().

Referenced by polyMesh::movePoints().

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

◆ isInternalFace() [1/2]

bool isInternalFace ( const label  faceIndex) const
inline

◆ checkCellsZipUp() [1/2]

bool checkCellsZipUp ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check cell zip-up.

Definition at line 1452 of file primitiveMeshCheck.C.

References Foam::constant::universal::c, cells, Foam::endl(), f(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::reduce(), and List::size().

Here is the call graph for this function:

◆ checkFaceVertices() [1/2]

bool checkFaceVertices ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check uniqueness of face vertices.

Definition at line 1553 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkFaceFaces() [1/2]

bool checkFaceFaces ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check face-face connectivity.

Definition at line 1834 of file primitiveMeshCheck.C.

References Foam::endl(), forAll, Foam::Info, and Foam::reduce().

Here is the call graph for this function:

◆ checkUpperTriangular() [1/2]

bool checkUpperTriangular ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

◆ checkClosedBoundary() [1/3]

bool checkClosedBoundary ( const bool  report = false) const

◆ checkClosedCells() [1/3]

bool checkClosedCells ( const bool  report = false,
labelHashSet setPtr = NULL,
labelHashSet highAspectSetPtr = NULL 
) const

◆ checkFaceAreas() [1/3]

bool checkFaceAreas ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check for negative face areas.

Definition at line 338 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkCellVolumes() [1/3]

bool checkCellVolumes ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check for negative cell volumes.

Definition at line 397 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkFaceOrthogonality() [1/3]

bool checkFaceOrthogonality ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check for non-orthogonality.

Definition at line 464 of file primitiveMeshCheck.C.

References Foam::acos(), Foam::cos(), Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::constant::mathematical::pi(), Foam::reduce(), s(), and List::size().

Here is the call graph for this function:

◆ checkFacePyramids() [1/3]

bool checkFacePyramids ( const bool  report = false,
const scalar  minPyrVol = -SMALL,
labelHashSet setPtr = NULL 
) const

Check face pyramid volume.

Definition at line 585 of file primitiveMeshCheck.C.

References Foam::endl(), f(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), p, points, and Foam::reduce().

Here is the call graph for this function:

◆ checkFaceSkewness() [1/3]

bool checkFaceSkewness ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check face skewness.

Definition at line 669 of file primitiveMeshCheck.C.

References Foam::endl(), f(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::max(), p, Foam::constant::mathematical::pi(), points, and Foam::reduce().

Here is the call graph for this function:

◆ checkFaceAngles() [1/3]

bool checkFaceAngles ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

◆ checkFaceFlatness() [1/3]

bool checkFaceFlatness ( const bool  report,
labelHashSet setPtr 
) const

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

References Foam::endl(), Foam::exit(), f(), Foam::FatalError, FatalErrorIn, forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::min(), n, p, points, Foam::reduce(), and List::size().

Here is the call graph for this function:

◆ checkEdgeAlignment()

bool checkEdgeAlignment ( const bool  report,
const Vector< label > &  directions,
labelHashSet setPtr = NULL 
) const

◆ checkPoints() [1/2]

bool checkPoints ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check for unused points.

Definition at line 814 of file primitiveMeshCheck.C.

References Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), and Foam::reduce().

Here is the call graph for this function:

◆ checkPointNearness() [1/2]

bool checkPointNearness ( const bool  report,
const scalar  reportDistSqr,
labelHashSet setPtr = NULL 
) const

Check for point-point-nearness,.

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

Definition at line 32 of file primitiveMeshCheckPointNearness.C.

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

Here is the call graph for this function:

◆ checkEdgeLength() [1/2]

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

◆ checkCellDeterminant()

bool checkCellDeterminant ( const bool  report = false,
labelHashSet setPtr = NULL 
) const

Check cell determinant.

Definition at line 1944 of file primitiveMeshCheck.C.

References Foam::constant::universal::c, cells, Foam::det(), Foam::e, Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::mag(), Foam::min(), Foam::reduce(), Foam::sqr(), and SymmTensor< scalar >::zero.

Here is the call graph for this function:

◆ checkTopology() [1/2]

bool checkTopology ( const bool  report = false) const

Check mesh topology for correctness.

Returns false for no error.

Definition at line 2065 of file primitiveMeshCheck.C.

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

Here is the call graph for this function:

◆ checkGeometry() [1/2]

bool checkGeometry ( const bool  report = false) const

◆ checkMesh() [1/2]

bool checkMesh ( const bool  report = false) const

Check mesh for correctness. Returns false for no error.

Definition at line 2131 of file primitiveMeshCheck.C.

References Foam::checkGeometry(), Foam::checkTopology(), 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:

◆ checkMeshMotion()

bool checkMeshMotion ( const pointField newPoints,
const bool  report = false 
) const

Check mesh motion for correctness given motion points.

Definition at line 38 of file primitiveMeshCheckMotion.C.

References Foam::acos(), cells, cellVols, Foam::endl(), f(), forAll, Foam::mag(), Foam::min(), Foam::nl, Foam::constant::mathematical::pi(), Foam::Pout, s(), Foam::sum(), and WarningIn.

Here is the call graph for this function:

◆ pointInCellBB() [1/2]

bool pointInCellBB ( const point p,
label  celli 
) const

Is the point in the cell bounding box.

Definition at line 33 of file primitiveMeshFindCell.C.

References primitiveMesh::cells(), boundBox::contains(), primitiveMesh::faces(), p, and primitiveMesh::points().

Here is the call graph for this function:

◆ pointInCell() [1/2]

bool pointInCell ( const point p,
label  celli 
) const

Is the point in the cell.

Definition at line 44 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() [1/2]

Foam::label findNearestCell ( const point location) const

Find the cell with the nearest cell centre to location.

Definition at line 70 of file primitiveMeshFindCell.C.

References Foam::magSqr().

Referenced by mixerFvMesh::addZonesAndModifiers(), and nearestToCell::combine().

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

◆ findCell() [1/2]

Foam::label findCell ( const point location) const

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

Definition at line 93 of file primitiveMeshFindCell.C.

References n.

◆ printAllocated() [1/2]

void printAllocated ( ) const

◆ hasCellShapes() [1/2]

bool hasCellShapes ( ) const
inline

Definition at line 76 of file primitiveMeshI.H.

References primitiveMesh::cellShapesPtr_.

◆ hasEdges() [1/2]

bool hasEdges ( ) const
inline

Definition at line 82 of file primitiveMeshI.H.

References primitiveMesh::edgesPtr_.

◆ hasCellCells() [1/2]

bool hasCellCells ( ) const
inline

Definition at line 88 of file primitiveMeshI.H.

References primitiveMesh::ccPtr_.

◆ hasEdgeCells() [1/2]

bool hasEdgeCells ( ) const
inline

Definition at line 94 of file primitiveMeshI.H.

References primitiveMesh::ecPtr_.

◆ hasPointCells() [1/2]

bool hasPointCells ( ) const
inline

Definition at line 100 of file primitiveMeshI.H.

References primitiveMesh::pcPtr_.

◆ hasCells() [1/2]

bool hasCells ( ) const
inline

Definition at line 106 of file primitiveMeshI.H.

References primitiveMesh::cfPtr_.

◆ hasEdgeFaces() [1/2]

bool hasEdgeFaces ( ) const
inline

Definition at line 112 of file primitiveMeshI.H.

References primitiveMesh::efPtr_.

◆ hasPointFaces() [1/2]

bool hasPointFaces ( ) const
inline

Definition at line 118 of file primitiveMeshI.H.

References primitiveMesh::pfPtr_.

◆ hasCellEdges() [1/2]

bool hasCellEdges ( ) const
inline

Definition at line 124 of file primitiveMeshI.H.

References primitiveMesh::cePtr_.

◆ hasFaceEdges() [1/2]

bool hasFaceEdges ( ) const
inline

Definition at line 130 of file primitiveMeshI.H.

References primitiveMesh::fePtr_.

◆ hasPointEdges() [1/2]

bool hasPointEdges ( ) const
inline

Definition at line 136 of file primitiveMeshI.H.

References primitiveMesh::pePtr_.

◆ hasPointPoints() [1/2]

bool hasPointPoints ( ) const
inline

Definition at line 142 of file primitiveMeshI.H.

References primitiveMesh::ppPtr_.

◆ hasCellPoints() [1/2]

bool hasCellPoints ( ) const
inline

Definition at line 148 of file primitiveMeshI.H.

References primitiveMesh::cpPtr_.

◆ hasCellCentres() [1/2]

bool hasCellCentres ( ) const
inline

Definition at line 154 of file primitiveMeshI.H.

References primitiveMesh::cellCentresPtr_.

◆ hasFaceCentres() [1/2]

bool hasFaceCentres ( ) const
inline

Definition at line 160 of file primitiveMeshI.H.

References primitiveMesh::faceCentresPtr_.

◆ hasCellVolumes() [1/2]

bool hasCellVolumes ( ) const
inline

Definition at line 166 of file primitiveMeshI.H.

References primitiveMesh::cellVolumesPtr_.

◆ hasFaceAreas() [1/2]

bool hasFaceAreas ( ) const
inline

Definition at line 172 of file primitiveMeshI.H.

References primitiveMesh::faceAreasPtr_.

◆ cellCells() [2/6]

const Foam::labelList & cellCells ( const label  cellI,
dynamicLabelList &  storage 
) const

cellCells using cells.

Definition at line 112 of file primitiveMeshCellCells.C.

References List::append(), cells, List::clear(), and forAll.

Here is the call graph for this function:

◆ cellCells() [3/6]

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

Definition at line 151 of file primitiveMeshCellCells.C.

◆ cellPoints() [2/6]

const Foam::labelList & cellPoints ( const label  cellI,
dynamicLabelList &  storage 
) const

cellPoints using cells

Definition at line 59 of file primitiveMeshCellPoints.C.

References cells, List::clear(), f(), forAll, and forAllConstIter().

Here is the call graph for this function:

◆ cellPoints() [3/6]

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

Definition at line 101 of file primitiveMeshCellPoints.C.

◆ pointCells() [2/6]

const Foam::labelList & pointCells ( const label  pointI,
dynamicLabelList &  storage 
) const

pointCells using pointFaces

Definition at line 120 of file primitiveMeshPointCells.C.

References forAll, n, pFaces, and Foam::sort().

Here is the call graph for this function:

◆ pointCells() [3/6]

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

Definition at line 174 of file primitiveMeshPointCells.C.

◆ pointPoints() [2/6]

const Foam::labelList & pointPoints ( const label  pointI,
dynamicLabelList &  storage 
) const

pointPoints using edges, pointEdges

Definition at line 103 of file primitiveMeshPointPoints.C.

References List::clear(), forAll, and List::size().

Here is the call graph for this function:

◆ pointPoints() [3/6]

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

Definition at line 135 of file primitiveMeshPointPoints.C.

◆ faceEdges() [2/6]

const Foam::labelList & faceEdges ( const label  faceI,
dynamicLabelList &  storage 
) const

faceEdges using pointFaces, edges, pointEdges

Definition at line 389 of file primitiveMeshEdges.C.

References List::clear(), f(), forAll, and List::size().

Here is the call graph for this function:

◆ faceEdges() [3/6]

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

Definition at line 426 of file primitiveMeshEdges.C.

◆ edgeFaces() [2/6]

const Foam::labelList & edgeFaces ( const label  edgeI,
dynamicLabelList &  storage 
) const

edgeFaces using pointFaces, edges, pointEdges

Definition at line 59 of file primitiveMeshEdgeFaces.C.

References List::clear(), Foam::e, and List::size().

Here is the call graph for this function:

◆ edgeFaces() [3/6]

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

Definition at line 104 of file primitiveMeshEdgeFaces.C.

◆ edgeCells() [2/6]

const Foam::labelList & edgeCells ( const label  edgeI,
dynamicLabelList &  storage 
) const

edgeCells using pointFaces, edges, pointEdges

Definition at line 59 of file primitiveMeshEdgeCells.C.

References forAll.

◆ edgeCells() [3/6]

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

Definition at line 128 of file primitiveMeshEdgeCells.C.

◆ cellEdges() [2/6]

const Foam::labelList & cellEdges ( const label  cellI,
dynamicLabelList &  storage 
) const

cellEdges using cells, pointFaces, edges, pointEdges

Definition at line 433 of file primitiveMeshEdges.C.

References cells, List::clear(), forAll, and forAllConstIter().

Here is the call graph for this function:

◆ cellEdges() [3/6]

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

Definition at line 475 of file primitiveMeshEdges.C.

◆ clearGeom() [1/2]

void clearGeom ( )

Clear geometry.

Definition at line 126 of file primitiveMeshClear.C.

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

Referenced by polyMesh::clearGeom().

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

◆ clearAddressing() [1/2]

void clearAddressing ( )

Clear topological data.

Definition at line 142 of file primitiveMeshClear.C.

References 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() [1/2]

void clearOut ( )

Clear all geometry and addressing unnecessary for CFD.

Definition at line 171 of file primitiveMeshClear.C.

◆ operator=() [2/2]

void operator= ( const primitiveMesh )
private

Disallow default bitwise assignment.

◆ calcCellShapes() [2/2]

void calcCellShapes ( ) const
private

Calculate cell shapes.

◆ calcCellCells() [2/2]

void calcCellCells ( ) const
private

Calculate cell-cell addressing.

◆ calcPointCells() [2/2]

void calcPointCells ( ) const
private

Calculate point-cell addressing.

◆ calcCells() [3/4]

void calcCells ( ) const
private

Calculate cell-face addressing.

◆ calcCellEdges() [2/2]

void calcCellEdges ( ) const
private

Calculate edge list.

◆ calcPointPoints() [2/2]

void calcPointPoints ( ) const
private

Calculate point-point addressing.

◆ calcEdges() [2/2]

void calcEdges ( const bool  doFaceEdges) const
private

◆ clearOutEdges() [2/2]

void clearOutEdges ( )
private

◆ getEdge() [2/2]

Foam::label getEdge ( List< DynamicList< label > > &  pe,
DynamicList< edge > &  es,
const label  pointI,
const label  nextPointI 
)
staticprivate

Helper: return (after optional creation) edge between two points.

Definition at line 36 of file primitiveMeshEdges.C.

References DynamicList::append(), Foam::constant::electromagnetic::e, and forAll.

Here is the call graph for this function:

◆ findFirstCommonElementFromSortedLists() [2/2]

static label findFirstCommonElementFromSortedLists ( const labelList ,
const labelList  
)
staticprivate

For on-the-fly addressing calculation.

◆ calcFaceCentresAndAreas() [2/2]

void calcFaceCentresAndAreas ( ) const
protected

Calculate face centres and areas.

◆ makeFaceCentresAndAreas() [2/2]

void makeFaceCentresAndAreas ( const pointField p,
vectorField fCtrs,
vectorField fAreas 
) const
protected

◆ calcCellCentresAndVols() [2/2]

void calcCellCentresAndVols ( ) const
protected

Calculate cell centres and volumes.

◆ makeCellCentresAndVols() [2/2]

void makeCellCentresAndVols ( const vectorField fCtrs,
const vectorField fAreas,
vectorField cellCtrs,
scalarField cellVols 
) const
protected

◆ calcEdgeVectors() [2/2]

void calcEdgeVectors ( ) const
protected

Calculate edge vectors.

◆ checkDuplicateFaces() [2/2]

bool checkDuplicateFaces ( const  label,
const Map< label > &  ,
label nBaffleFaces,
labelHashSet  
) const
protected

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

◆ checkCommonOrder() [2/2]

bool checkCommonOrder ( const  label,
const Map< label > &  ,
labelHashSet  
) const
protected

Check that shared points are in consecutive order.

◆ checkClosedBoundary() [2/3]

bool checkClosedBoundary ( const vectorField areas,
const bool  report,
const PackedBoolList internalOrCoupledFaces 
) const
protected

Check boundary for closedness.

Definition at line 46 of file primitiveMeshCheck.C.

References Foam::cmptMag(), Foam::cmptMax(), Foam::endl(), Foam::Info, Foam::mag(), Foam::reduce(), and PackedList::size().

Here is the call graph for this function:

◆ checkClosedCells() [2/3]

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

References Foam::constant::universal::c, cells, 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() [2/3]

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

Check for negative face areas.

Definition at line 238 of file primitiveMeshCheck.C.

References 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() [2/3]

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

Check for negative cell volumes.

Definition at line 318 of file primitiveMeshCheck.C.

References 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() [2/3]

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

Check for non-orthogonality.

Definition at line 390 of file primitiveMeshCheck.C.

References Foam::acos(), Foam::cos(), Foam::degToRad(), Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::min(), Foam::radToDeg(), Foam::reduce(), and Foam::sum().

Here is the call graph for this function:

◆ checkFacePyramids() [2/3]

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

References cells, 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() [2/3]

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

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

Here is the call graph for this function:

◆ checkFaceAngles() [2/3]

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

◆ checkFaceFlatness() [2/3]

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

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

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

References Foam::constant::universal::c, cells, 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() [2/2]

ClassName ( "primitiveMesh"  )

◆ reset() [4/6]

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

Reset this primitiveMesh given the primitive array sizes.

◆ reset() [5/6]

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.

◆ reset() [6/6]

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

Reset this primitiveMesh given the primitive array sizes and cells.

◆ nPoints() [2/2]

label nPoints ( ) const
inline

◆ nEdges() [2/2]

label nEdges ( ) const
inline

◆ nInternalFaces() [2/2]

label nInternalFaces ( ) const
inline

◆ nFaces() [2/2]

label nFaces ( ) const
inline

◆ nCells() [2/2]

label nCells ( ) const
inline

◆ nInternalPoints()

label nInternalPoints ( ) const
inline

Points not on boundary.

Definition at line 35 of file primitiveMeshI.H.

References primitiveMesh::nInternalPoints_.

Referenced by main().

Here is the caller graph for this function:

◆ nInternal0Edges()

label nInternal0Edges ( ) const
inline

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

no boundary point

Definition at line 47 of file primitiveMeshI.H.

References primitiveMesh::nEdges(), and primitiveMesh::nInternal0Edges_.

Referenced by main().

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

◆ nInternal1Edges()

label nInternal1Edges ( ) const
inline

Internal edges using 0 or 1 boundary point.

Definition at line 55 of file primitiveMeshI.H.

References primitiveMesh::nEdges(), and primitiveMesh::nInternal1Edges_.

Referenced by main().

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

◆ nInternalEdges()

label nInternalEdges ( ) const
inline

Internal edges using 0,1 or 2 boundary points.

Definition at line 63 of file primitiveMeshI.H.

References primitiveMesh::nEdges(), and primitiveMesh::nInternalEdges_.

Referenced by main().

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

◆ points() [2/2]

virtual const pointField& points ( ) const
pure virtual

Return mesh points.

Implemented in polyMesh.

◆ faces() [2/2]

virtual const faceList& faces ( ) const
pure virtual

Return faces.

Implemented in polyMesh.

◆ faceOwner() [2/2]

virtual const labelList& faceOwner ( ) const
pure virtual

Face face-owner addresing.

Implemented in polyMesh.

◆ faceNeighbour() [2/2]

virtual const labelList& faceNeighbour ( ) const
pure virtual

Face face-neighbour addressing.

Implemented in polyMesh.

◆ oldPoints() [2/2]

virtual const pointField& oldPoints ( ) const
pure virtual

Return old points for mesh motion.

Implemented in polyMesh.

◆ cellShapes() [2/2]

const cellShapeList& cellShapes ( ) const

Return cell shapes.

◆ edges() [2/2]

const edgeList& edges ( ) const

Return mesh edges. Uses calcEdges.

◆ calcCells() [4/4]

static void calcCells ( cellList ,
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.

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

References f(), forAll, nPoints, List::setSize(), and List::size().

Here is the call graph for this function:

◆ cellCells() [4/6]

const labelListList& cellCells ( ) const

◆ edgeCells() [4/6]

const labelListList& edgeCells ( ) const

◆ pointCells() [4/6]

const labelListList& pointCells ( ) const

◆ cells() [2/2]

const cellList& cells ( ) const

◆ edgeFaces() [4/6]

const labelListList& edgeFaces ( ) const

◆ pointFaces() [2/2]

const labelListList& pointFaces ( ) const

◆ cellEdges() [4/6]

const labelListList& cellEdges ( ) const

◆ faceEdges() [4/6]

const labelListList& faceEdges ( ) const

◆ pointEdges() [2/2]

const labelListList& pointEdges ( ) const

◆ pointPoints() [4/6]

const labelListList& pointPoints ( ) const

◆ cellPoints() [4/6]

const labelListList& cellPoints ( ) const

◆ cellCentres() [2/2]

const vectorField& cellCentres ( ) const

◆ faceCentres() [2/2]

const vectorField& faceCentres ( ) const

◆ cellVolumes() [2/2]

const scalarField& cellVolumes ( ) const

◆ faceAreas() [2/2]

const vectorField& faceAreas ( ) const

◆ movePoints() [2/2]

tmp<scalarField> movePoints ( const pointField p,
const pointField oldP 
)

Move points, returns volumes swept by faces in motion.

◆ isInternalFace() [2/2]

bool isInternalFace ( const label  faceIndex) const
inline

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

◆ checkUpperTriangular() [2/2]

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

Check face ordering.

◆ checkCellsZipUp() [2/2]

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

Check cell zip-up.

◆ checkFaceVertices() [2/2]

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

Check uniqueness of face vertices.

◆ checkPoints() [2/2]

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

Check for unused points.

◆ checkFaceFaces() [2/2]

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

Check face-face connectivity.

◆ checkClosedBoundary() [3/3]

virtual bool checkClosedBoundary ( const bool  report = false) const
virtual

Check boundary for closedness.

◆ checkClosedCells() [3/3]

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

Check cells for closedness.

Definition at line 1731 of file primitiveMeshCheck.C.

References Foam::polyMeshGenChecks::checkClosedCells().

Here is the call graph for this function:

◆ checkFaceAreas() [3/3]

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

Check for negative face areas.

◆ checkCellVolumes() [3/3]

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

Check for negative cell volumes.

◆ checkFaceOrthogonality() [3/3]

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

Check for non-orthogonality.

Reimplemented in polyMesh.

◆ checkFacePyramids() [3/3]

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

Check face pyramid volume.

◆ checkFaceSkewness() [3/3]

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

Check face skewness.

Reimplemented in polyMesh.

◆ checkFaceAngles() [3/3]

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

Check face angles.

Definition at line 1836 of file primitiveMeshCheck.C.

References Foam::polyMeshGenChecks::checkFaceAngles(), and points.

Here is the call graph for this function:

◆ checkFaceFlatness() [3/3]

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

References Foam::polyMeshGenChecks::checkFaceFlatness(), and points.

Here is the call graph for this function:

◆ checkPointNearness() [2/2]

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

Check for point-point-nearness,.

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

◆ checkEdgeLength() [2/2]

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

Check edge length.

◆ checkConcaveCells() [2/2]

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

Check for concave cells by the planes of faces.

Definition at line 1873 of file primitiveMeshCheck.C.

◆ checkTopology() [2/2]

virtual bool checkTopology ( const bool  report = false) const
virtual

Check mesh topology for correctness.

Returns false for no error.

◆ checkGeometry() [2/2]

virtual bool checkGeometry ( const bool  report = false) const
virtual

Check mesh geometry (& implicitly topology) for correctness.

Returns false for no error.

◆ checkMesh() [2/2]

virtual bool checkMesh ( const bool  report = false) const
virtual

Check mesh for correctness. Returns false for no error.

◆ setClosedThreshold()

Foam::scalar setClosedThreshold ( const scalar  val)
static

Set the closedness ratio warning threshold.

Definition at line 1985 of file primitiveMeshCheck.C.

◆ setAspectThreshold()

Foam::scalar setAspectThreshold ( const scalar  val)
static

Set the aspect ratio warning threshold.

Definition at line 1994 of file primitiveMeshCheck.C.

◆ setNonOrthThreshold()

Foam::scalar setNonOrthThreshold ( const scalar  val)
static

Set the non-orthogonality warning threshold in degrees.

Definition at line 2003 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 2012 of file primitiveMeshCheck.C.

◆ pointInCellBB() [2/2]

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

References cells, boundBox::contains(), Foam::mag(), boundBox::max(), boundBox::min(), p, points, and boundBox::span().

Here is the call graph for this function:

◆ pointInCell() [2/2]

bool pointInCell ( const point p,
label  celli 
) const

Return true if the point is in the cell.

◆ findNearestCell() [2/2]

label findNearestCell ( const point location) const

Find the cell with the nearest cell centre to location.

◆ findCell() [2/2]

label findCell ( const point location) const

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

◆ printAllocated() [2/2]

void printAllocated ( ) const

Print a list of all the currently allocated mesh data.

◆ hasCellShapes() [2/2]

bool hasCellShapes ( ) const
inline

◆ hasEdges() [2/2]

bool hasEdges ( ) const
inline

◆ hasCellCells() [2/2]

bool hasCellCells ( ) const
inline

◆ hasEdgeCells() [2/2]

bool hasEdgeCells ( ) const
inline

◆ hasPointCells() [2/2]

bool hasPointCells ( ) const
inline

◆ hasCells() [2/2]

bool hasCells ( ) const
inline

◆ hasEdgeFaces() [2/2]

bool hasEdgeFaces ( ) const
inline

◆ hasPointFaces() [2/2]

bool hasPointFaces ( ) const
inline

◆ hasCellEdges() [2/2]

bool hasCellEdges ( ) const
inline

◆ hasFaceEdges() [2/2]

bool hasFaceEdges ( ) const
inline

◆ hasPointEdges() [2/2]

bool hasPointEdges ( ) const
inline

◆ hasPointPoints() [2/2]

bool hasPointPoints ( ) const
inline

◆ hasCellPoints() [2/2]

bool hasCellPoints ( ) const
inline

◆ hasCellCentres() [2/2]

bool hasCellCentres ( ) const
inline

◆ hasFaceCentres() [2/2]

bool hasFaceCentres ( ) const
inline

◆ hasCellVolumes() [2/2]

bool hasCellVolumes ( ) const
inline

◆ hasFaceAreas() [2/2]

bool hasFaceAreas ( ) const
inline

◆ cellCells() [5/6]

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

cellCells using cells.

Definition at line 112 of file primitiveMeshCellCells.C.

References DynamicList::append(), cells, DynamicList::clear(), and forAll.

Here is the call graph for this function:

◆ cellCells() [6/6]

const labelList& cellCells ( const label  cellI) const

◆ cellPoints() [5/6]

const Foam::labelList & cellPoints ( const label  cellI,
DynamicList< label > &  storage 
) const

cellPoints using cells

Definition at line 59 of file primitiveMeshCellPoints.C.

References DynamicList::append(), DynamicList::capacity(), cells, DynamicList::clear(), List::clear(), f(), forAll, forAllConstIter(), and DynamicList::setCapacity().

Here is the call graph for this function:

◆ cellPoints() [6/6]

const labelList& cellPoints ( const label  cellI) const

◆ pointCells() [5/6]

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

pointCells using pointFaces

Definition at line 120 of file primitiveMeshPointCells.C.

References DynamicList::append(), DynamicList::clear(), forAll, n, pFaces, DynamicList::setSize(), and Foam::sort().

Here is the call graph for this function:

◆ pointCells() [6/6]

const labelList& pointCells ( const label  pointI) const

◆ pointPoints() [5/6]

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

pointPoints using edges, pointEdges

Definition at line 103 of file primitiveMeshPointPoints.C.

References DynamicList::append(), DynamicList::capacity(), DynamicList::clear(), forAll, DynamicList::setCapacity(), and List::size().

Here is the call graph for this function:

◆ pointPoints() [6/6]

const labelList& pointPoints ( const label  pointI) const

◆ faceEdges() [5/6]

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

faceEdges using pointFaces, edges, pointEdges

Definition at line 581 of file primitiveMeshEdges.C.

References DynamicList::append(), DynamicList::capacity(), DynamicList::clear(), f(), forAll, DynamicList::setCapacity(), and List::size().

Here is the call graph for this function:

◆ faceEdges() [6/6]

const labelList& faceEdges ( const label  faceI) const

◆ edgeFaces() [5/6]

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

edgeFaces using pointFaces, edges, pointEdges

Definition at line 58 of file primitiveMeshEdgeFaces.C.

References DynamicList::append(), DynamicList::clear(), Foam::e, and List::size().

Here is the call graph for this function:

◆ edgeFaces() [6/6]

const labelList& edgeFaces ( const label  edgeI) const

◆ edgeCells() [5/6]

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

edgeCells using pointFaces, edges, pointEdges

Definition at line 58 of file primitiveMeshEdgeCells.C.

References DynamicList::append(), DynamicList::clear(), and forAll.

Here is the call graph for this function:

◆ edgeCells() [6/6]

const labelList& edgeCells ( const label  edgeI) const

◆ cellEdges() [5/6]

const Foam::labelList & cellEdges ( const label  cellI,
DynamicList< label > &  storage 
) const

cellEdges using cells, pointFaces, edges, pointEdges

Definition at line 625 of file primitiveMeshEdges.C.

References DynamicList::append(), DynamicList::capacity(), cells, DynamicList::clear(), List::clear(), forAll, forAllConstIter(), and DynamicList::setCapacity().

Here is the call graph for this function:

◆ cellEdges() [6/6]

const labelList& cellEdges ( const label  cellI) const

◆ clearGeom() [2/2]

void clearGeom ( )

Clear geometry.

◆ clearAddressing() [2/2]

void clearAddressing ( )

Clear topological data.

◆ clearOut() [2/2]

void clearOut ( )

Clear all geometry and addressing unnecessary for CFD.

Field Documentation

◆ nPoints_

label nPoints_
private

Number of points.

Definition at line 86 of file primitiveMesh.H.

Referenced by primitiveMesh::nPoints().

◆ nEdges_

label nEdges_
mutableprivate

Number of edges.

Definition at line 89 of file primitiveMesh.H.

Referenced by primitiveMesh::nEdges().

◆ nInternalFaces_

label nInternalFaces_
private

Number of internal faces.

Definition at line 92 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), and primitiveMesh::nInternalFaces().

◆ nFaces_

label nFaces_
private

Number of faces.

Definition at line 95 of file primitiveMesh.H.

Referenced by primitiveMesh::nFaces().

◆ nCells_

label nCells_
private

Number of cells.

Definition at line 98 of file primitiveMesh.H.

Referenced by primitiveMesh::nCells().

◆ cellShapesPtr_

cellShapeList * cellShapesPtr_
mutableprivate

◆ edgesPtr_

edgeList * edgesPtr_
mutableprivate

Edges are ordered in upper triangular order.

Edges.

Note: inconsistency with 1.6.x to re-instate parallelisation of point-based operations HJ, 9/Jul/2010

Definition at line 110 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), primitiveMesh::hasEdges(), and primitiveMesh::printAllocated().

◆ ccPtr_

labelListList * ccPtr_
mutableprivate

◆ ecPtr_

labelListList * ecPtr_
mutableprivate

◆ pcPtr_

labelListList * pcPtr_
mutableprivate

◆ cfPtr_

cellList * cfPtr_
mutableprivate

Cell-faces.

Definition at line 125 of file primitiveMesh.H.

Referenced by primitiveMesh::calcCells(), primitiveMesh::hasCells(), and primitiveMesh::printAllocated().

◆ efPtr_

labelListList * efPtr_
mutableprivate

◆ pfPtr_

labelListList * pfPtr_
mutableprivate

◆ cePtr_

labelListList * cePtr_
mutableprivate

◆ fePtr_

labelListList * fePtr_
mutableprivate

◆ pePtr_

labelListList * pePtr_
mutableprivate

◆ ppPtr_

labelListList * ppPtr_
mutableprivate

◆ cpPtr_

labelListList * cpPtr_
mutableprivate

◆ labels_ [1/2]

dynamicLabelList labels_
mutableprivate

Temporary storage for addressing.

Definition at line 152 of file primitiveMesh.H.

◆ labelSet_

labelHashSet labelSet_
mutableprivate

Temporary storage for addressing.

Definition at line 155 of file primitiveMesh.H.

◆ cellCentresPtr_

vectorField * cellCentresPtr_
mutableprivate

◆ faceCentresPtr_

vectorField * faceCentresPtr_
mutableprivate

◆ cellVolumesPtr_

scalarField * cellVolumesPtr_
mutableprivate

◆ faceAreasPtr_

vectorField * faceAreasPtr_
mutableprivate

◆ cellsPerEdge_

static const unsigned cellsPerEdge_ = 4
static

Estimated number of cells per edge.

Definition at line 291 of file primitiveMesh.H.

◆ cellsPerPoint_

static const unsigned cellsPerPoint_ = 8
static

Estimated number of cells per point.

Definition at line 294 of file primitiveMesh.H.

◆ facesPerCell_

static const unsigned facesPerCell_ = 6
static

Estimated number of faces per cell.

Definition at line 297 of file primitiveMesh.H.

Referenced by layerAdditionRemoval::addCellLayer(), slidingInterface::calcAttachedAddressing(), and layerAdditionRemoval::removeCellLayer().

◆ facesPerEdge_

static const unsigned facesPerEdge_ = 4
static

Estimated number of faces per edge.

Definition at line 300 of file primitiveMesh.H.

◆ facesPerPoint_

static const unsigned facesPerPoint_ = 12
static

Estimated number of faces per point.

Definition at line 303 of file primitiveMesh.H.

Referenced by enrichedPatch::calcMasterPointFaces(), and layerAdditionRemoval::removeCellLayer().

◆ edgesPerCell_

static const unsigned edgesPerCell_ = 12
static

Estimated number of edges per cell.

Definition at line 306 of file primitiveMesh.H.

◆ edgesPerFace_

static const unsigned edgesPerFace_ = 4
static

Estimated number of edges per cell.

Definition at line 309 of file primitiveMesh.H.

Referenced by slidingInterface::coupleInterface(), and slidingInterface::projectPoints().

◆ edgesPerPoint_

static const unsigned edgesPerPoint_ = 6
static

Estimated number of edges per point.

Definition at line 312 of file primitiveMesh.H.

Referenced by enrichedPatch::calcCutFaces(), and primitiveMesh::calcEdges().

◆ pointsPerCell_

static const unsigned pointsPerCell_ = 8
static

Estimated number of points per cell.

Definition at line 315 of file primitiveMesh.H.

◆ pointsPerFace_

static const unsigned pointsPerFace_ = 4
static

Estimated number of points per face.

Definition at line 318 of file primitiveMesh.H.

Referenced by slidingInterface::projectPoints().

◆ closedThreshold_ [1/2]

Foam::scalar closedThreshold_ = 1.0e-6
static

Static data to control mesh checking.

Cell closedness warning threshold

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

Definition at line 324 of file primitiveMesh.H.

Referenced by primitiveMesh::checkClosedBoundary().

◆ aspectThreshold_ [1/2]

Foam::scalar aspectThreshold_ = 1000
static

Aspect ratio warning threshold.

Definition at line 327 of file primitiveMesh.H.

◆ nonOrthThreshold_ [1/2]

Foam::scalar nonOrthThreshold_ = 70
static

Non-orthogonality warning threshold in deg.

Definition at line 330 of file primitiveMesh.H.

◆ skewThreshold_ [1/2]

Foam::scalar skewThreshold_ = 4
static

Skewness warning threshold.

Definition at line 333 of file primitiveMesh.H.

◆ faceAngleThreshold_

Foam::debug::tolerancesSwitch faceAngleThreshold_
static

Face angle threshold.

Definition at line 336 of file primitiveMesh.H.

◆ faceFlatnessThreshold_

const Foam::debug::tolerancesSwitch faceFlatnessThreshold_
static

Face flatness threshold.

Definition at line 339 of file primitiveMesh.H.

◆ nInternalPoints_

label nInternalPoints_
private

Number of internal points (or -1 if points not sorted)

Definition at line 81 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), and primitiveMesh::nInternalPoints().

◆ nInternal0Edges_

label nInternal0Edges_
mutableprivate

Number of internal edges using 0 boundary points.

Definition at line 87 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), and primitiveMesh::nInternal0Edges().

◆ nInternal1Edges_

label nInternal1Edges_
mutableprivate

Number of internal edges using 0 or 1 boundary points.

Definition at line 90 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), and primitiveMesh::nInternal1Edges().

◆ nInternalEdges_

label nInternalEdges_
mutableprivate

Number of internal edges using 0,1 or 2boundary points.

Definition at line 93 of file primitiveMesh.H.

Referenced by primitiveMesh::calcEdges(), and primitiveMesh::nInternalEdges().

◆ labels_ [2/2]

DynamicList<label> labels_
mutableprivate

Temporary storage for addressing.

Definition at line 156 of file primitiveMesh.H.

◆ closedThreshold_ [2/2]

scalar closedThreshold_
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 234 of file primitiveMesh.H.

◆ aspectThreshold_ [2/2]

scalar aspectThreshold_
staticprotected

Aspect ratio warning threshold.

Definition at line 237 of file primitiveMesh.H.

◆ nonOrthThreshold_ [2/2]

scalar nonOrthThreshold_
staticprotected

Non-orthogonality warning threshold in deg.

Definition at line 240 of file primitiveMesh.H.

◆ skewThreshold_ [2/2]

scalar skewThreshold_
staticprotected

Skewness warning threshold.

Definition at line 243 of file primitiveMesh.H.

◆ planarCosAngle_

Foam::scalar planarCosAngle_ = 1.0e-6
staticprotected

Threshold where faces are considered coplanar.

Definition at line 246 of file primitiveMesh.H.


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