primitiveMesh Class Referenceabstract

Cell-face mesh analysis engine. More...

Inheritance diagram for primitiveMesh:

Public Member Functions

 ClassName ("primitiveMesh")
 
 primitiveMesh (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Construct from components. More...
 
 primitiveMesh (primitiveMesh &&)=default
 Move constructor. More...
 
 primitiveMesh (const primitiveMesh &)=delete
 Disallow default bitwise copy construction. 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, 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 addressing. More...
 
virtual const labelListfaceNeighbour () const =0
 Face face-neighbour addressing. More...
 
virtual const pointFieldoldPoints () const =0
 Return old points for mesh motion. More...
 
const cellShapeListcellShapes () const
 Return cell shapes. More...
 
const edgeListedges () const
 Return mesh edges. Uses calcEdges. More...
 
const labelListListcellCells () const
 
const labelListListedgeCells () const
 
const labelListListpointCells () const
 
const cellListcells () const
 
const labelListListedgeFaces () const
 
const labelListListpointFaces () const
 
const labelListListcellEdges () const
 
const labelListListfaceEdges () const
 
const labelListListpointEdges () const
 
const labelListListpointPoints () const
 
const labelListListcellPoints () const
 
const vectorFieldcellCentres () const
 
const vectorFieldfaceCentres () const
 
const scalarFieldcellVolumes () const
 
const vectorFieldfaceAreas () const
 
const scalarFieldmagFaceAreas () 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 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...
 
void operator= (const primitiveMesh &)=delete
 Disallow default bitwise assignment. More...
 

Static Public Member Functions

static void calcCells (cellList &, const labelUList &own, const labelUList &nei, const label nCells=-1)
 Helper function to calculate cell-face addressing from. More...
 
static bool calcPointOrder (label &nInternalPoints, labelList &pointMap, const faceList &, const label nInternalFaces, const label nPoints)
 Helper function to calculate point ordering. Returns true. More...
 

Static Public Attributes

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

Protected Member Functions

void calcFaceCentresAndAreas () const
 Calculate face centres and areas. More...
 
void makeFaceCentresAndAreas (const pointField &p, vectorField &fCtrs, vectorField &fAreas, scalarField &magfAreas) 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...
 
 primitiveMesh ()
 Construct null. More...
 

Detailed Description

Constructor & Destructor Documentation

◆ primitiveMesh() [1/4]

primitiveMesh ( )
protected

Construct null.

Definition at line 39 of file primitiveMesh.C.

◆ primitiveMesh() [2/4]

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

Construct from components.

Definition at line 77 of file primitiveMesh.C.

◆ primitiveMesh() [3/4]

primitiveMesh ( primitiveMesh &&  )
default

Move constructor.

◆ primitiveMesh() [4/4]

primitiveMesh ( const primitiveMesh )
delete

Disallow default bitwise copy construction.

◆ ~primitiveMesh()

~primitiveMesh ( )
virtual

Destructor.

Definition at line 120 of file primitiveMesh.C.

Member Function Documentation

◆ calcFaceCentresAndAreas()

void calcFaceCentresAndAreas ( ) const
protected

Calculate face centres and areas.

Definition at line 38 of file primitiveMeshFaceCentresAndAreas.C.

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

Here is the call graph for this function:

◆ makeFaceCentresAndAreas()

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

Definition at line 76 of file primitiveMeshFaceCentresAndAreas.C.

References face::areaAndCentre(), Tuple2< Type1, Type2 >::first(), forAll, Foam::mag(), Foam::max(), p, and Tuple2< Type1, Type2 >::second().

Referenced by primitiveMesh::calcFaceCentresAndAreas().

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

◆ calcCellCentresAndVols()

void calcCellCentresAndVols ( ) const
protected

◆ makeCellCentresAndVols()

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

Definition at line 72 of file primitiveMeshCellCentresAndVols.C.

References cellVols, forAll, Foam::mag(), and Foam::Zero.

Referenced by primitiveMesh::calcCellCentresAndVols().

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

◆ calcEdgeVectors()

void calcEdgeVectors ( ) const
protected

Calculate edge vectors.

◆ ClassName()

ClassName ( "primitiveMesh"  )

◆ reset() [1/3]

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

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

Referenced by LocalInteraction< CloudType >::massEscape(), LocalInteraction< CloudType >::massStick(), and ParticleErosion< CloudType >::preEvolve().

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

◆ reset() [2/3]

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

References nPoints.

◆ reset() [3/3]

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

References nPoints.

◆ nPoints()

label nPoints ( ) const
inline

Definition at line 41 of file primitiveMeshI.H.

Referenced by singleProcessorFaceSetsConstraint::add(), polyMeshAdder::add(), singleProcessorFaceSetsConstraint::apply(), motionSmootherAlgo::avg(), polyTopoChange::changeMesh(), Foam::meshCheck::checkEdgeLength(), Foam::meshCheck::checkFaceVertices(), Foam::meshCheck::checkGeometry(), pointZone::checkParallelSync(), Foam::meshCheck::checkTopology(), componentDisplacementMotionSolver::componentDisplacementMotionSolver(), fvMeshDistribute::distribute(), cellsToCells::distributeMesh(), snappySnapDriver::doSnap(), edgeVertex::edgeToEVert(), polyMeshFilter::filterEdges(), edgeVertex::getEdge(), surfaceSets::getHangingCells(), syncTools::getMasterPoints(), globalIndexAndTransform::globalIndexAndTransform(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), edgeVertex::isEdge(), localPointRegion::localPointRegion(), polyTopoChange::makeMesh(), pointSet::maxSize(), pointZoneSet::maxSize(), Foam::meshCheck::mergeAndWrite(), meshTriangulation::meshTriangulation(), multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), vtkMesh::nFieldPoints(), mappedExtrudedPatchBase::patchLocalPoints(), PointEdgeWave< Type, TrackingData >::PointEdgeWave(), primitiveMesh::pointFaces(), points0MotionSolver::points0MotionSolver(), pointSet::pointSet(), pointZoneSet::pointZoneSet(), polyMesh::polyMesh(), polyTopoChange::polyTopoChange(), fvMeshDistribute::printMeshInfo(), pointMesh::size(), hexRef8Data::sync(), pointSet::sync(), syncTools::syncPointList(), meshRefinement::testSyncPointList(), and edgeVertex::vertToEVert().

Here is the caller graph for this function:

◆ nEdges()

◆ nInternalFaces()

label nInternalFaces ( ) const
inline

Definition at line 82 of file primitiveMeshI.H.

Referenced by Flux< CloudType, Derived >::accumulate(), snappyLayerDriver::addLayers(), preserveFaceZonesConstraint::apply(), preservePatchesConstraint::apply(), decompositionMethod::calcCellCells(), CentredFitSnGradData< Polynomial >::calcFit(), Foam::meshCheck::checkClosedBoundary(), meshRefinement::checkCoupledFaceZones(), Foam::meshCheck::checkCoupledPoints(), Foam::meshCheck::checkFaceOrthogonality(), Foam::meshCheck::checkFaceSkewness(), Foam::meshCheck::checkFaceTets(), polyMeshTetDecomposition::checkFaceTets(), Foam::meshCheck::checkFaceTwist(), Foam::meshCheck::checkFaceWeights(), faceZone::checkParallelSync(), Foam::meshCheck::checkTopology(), Foam::meshCheck::checkUpperTriangular(), Foam::meshCheck::checkVolRatio(), decompositionMethod::decompose(), fvMeshDistribute::distribute(), faceCoupleInfo::faceCoupleInfo(), Foam::meshCheck::faceOrthogonality(), FacePostProcessing< CloudType >::FacePostProcessing(), Foam::meshCheck::facePyramidVolume(), Foam::meshCheck::faceSkewness(), Foam::meshCheck::faceWeights(), localPointRegion::findDuplicateFacePairs(), localPointRegion::findDuplicateFaces(), polyMeshTetDecomposition::findFaceBasePts(), FvFaceCellWave< Type, TrackingData >::FvFaceCellWave(), repatchMesh::getNearest(), fvMeshSubset::interpolate(), primitiveMesh::isInternalFace(), Foam::meshCheck::mergeAndWrite(), meshRefinement::mergePatchFacesUndo(), MeshedSurface< Face >::MeshedSurface(), MGridGenGAMGAgglomeration::MGridGenGAMGAgglomeration(), mappedExtrudedPatchBase::patchFaceAreas(), polyTopoChange::polyTopoChange(), fvMeshDistribute::printCoupleInfo(), fvMeshDistribute::printMeshInfo(), repatchMesh::read(), refiner::refiner(), SloanRenumber::renumber(), triSurfaceMesh::sampleField(), fvMatrix< Type >::setValue(), surfaceMesh::size(), Foam::fvc::smooth(), Foam::fvc::spread(), syncTools::swapBoundaryCellList(), syncTools::swapBoundaryCellPositions(), syncTools::swapFaceList(), Foam::fvc::sweep(), faceZoneSet::sync(), syncTools::syncBoundaryFaceList(), syncTools::syncEdgeMap(), syncTools::syncFaceList(), syncTools::syncFacePositions(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), cellsToCells::trimLocalTgt(), cellsToCellsStabilisation::update(), Foam::meshCheck::volRatio(), extendedCellToFaceStencil::weightedSum(), and extendedUpwindCellToFaceStencil::weightedSum().

Here is the caller graph for this function:

◆ nFaces()

label nFaces ( ) const
inline

Definition at line 88 of file primitiveMeshI.H.

Referenced by refinementHistory::add(), preserveBafflesConstraint::add(), preserveFaceZonesConstraint::add(), preservePatchesConstraint::add(), singleProcessorFaceSetsConstraint::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), preserveFaceZonesConstraint::apply(), preservePatchesConstraint::apply(), decompositionMethod::calcCellCells(), primitiveMesh::calcFaceCentresAndAreas(), CentredFitSnGradData< Polynomial >::calcFit(), polyTopoChange::changeMesh(), edgeCollapser::checkBadFaces(), Foam::meshCheck::checkClosedCells(), meshRefinement::checkCoupledFaceZones(), Foam::meshCheck::checkFaceFaces(), Foam::meshCheck::checkFaceOrthogonality(), Foam::meshCheck::checkFaceTets(), polyMeshTetDecomposition::checkFaceTets(), Foam::meshCheck::checkFaceTwist(), Foam::meshCheck::checkFaceWeights(), Foam::meshCheck::checkGeometry(), Foam::meshCheck::checkMesh(), faceZone::checkParallelSync(), Foam::meshCheck::checkTopology(), Foam::meshCheck::checkVolRatio(), structured::decompose(), decompositionMethod::decompose(), fvMeshDistribute::distribute(), cellsToCells::distributeMesh(), snappyLayerDriver::doLayers(), snappySnapDriver::doSnap(), FaceCellWave< Type, TrackingData >::FaceCellWave(), Foam::meshCheck::faceConcavity(), Foam::meshCheck::faceFlatness(), faceMapper::faceMapper(), Foam::meshCheck::faceOrthogonality(), Foam::meshCheck::facePyramidVolume(), faceSet::faceSet(), Foam::meshCheck::faceSkewness(), Foam::meshCheck::faceWeights(), faceZoneSet::faceZoneSet(), localPointRegion::findDuplicateFacePairs(), polyMeshTetDecomposition::findFaceBasePts(), syncTools::getInternalOrCoupledFaces(), syncTools::getInternalOrMasterFaces(), syncTools::getMasterFaces(), repatchMesh::getNearest(), polyTopoChange::makeMesh(), faceSet::maxSize(), faceZoneSet::maxSize(), Foam::meshCheck::mergeAndWrite(), snappyLayerDriver::mergePatchFacesUndo(), meshRefinement::mergePatchFacesUndo(), MeshedSurface< Face >::MeshedSurface(), meshRefinement::meshRefinement(), mappedExtrudedPatchBase::patchFaceAreas(), polyMesh::polyMesh(), Foam::polyMeshUnMergeCyclics(), snappySnapDriver::preSmoothPatch(), fvMeshDistribute::printMeshInfo(), repatchMesh::read(), refiner::refiner(), structuredRenumber::renumber(), SloanRenumber::renumber(), snappySnapDriver::repatchToSurface(), triSurfaceMesh::sampleField(), snappySnapDriver::scaleMesh(), decompositionMethod::setConstraints(), Foam::fvc::smooth(), Foam::fvc::spread(), MPLIC::surfaceAlpha(), syncTools::swapBoundaryCellList(), syncTools::swapBoundaryCellPositions(), syncTools::swapFaceList(), Foam::fvc::sweep(), faceSet::sync(), faceZoneSet::sync(), syncTools::syncBoundaryFaceList(), syncTools::syncEdgeMap(), syncTools::syncFaceList(), syncTools::syncFacePositions(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), cellsToCells::trimLocalTgt(), cellsToCellsStabilisation::update(), and Foam::meshCheck::volRatio().

Here is the caller graph for this function:

◆ nCells()

label nCells ( ) const
inline

Definition at line 94 of file primitiveMeshI.H.

Referenced by refinementHistoryConstraint::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), refinementHistoryConstraint::apply(), nearWallFields::calcAddressing(), primitiveMesh::calcCellCentresAndVols(), primitiveMesh::calcCells(), intersection::calculate(), matching::calculate(), nearest::calculate(), cellClassification::cellClassification(), Foam::meshCheck::cellClosedness(), cellCuts::cellCuts(), Foam::meshCheck::cellDeterminant(), cellMapper::cellMapper(), primitiveMesh::cellPoints(), cellSet::cellSet(), cellZoneSet::cellZoneSet(), polyTopoChange::changeMesh(), Foam::meshCheck::checkGeometry(), Foam::meshCheck::checkTopology(), structured::decompose(), parMetis::decompose(), zoltan::decompose(), decompositionMethod::decompose(), fvMeshDistribute::distribute(), refinementHistory::distribute(), cellEdgeAddressingList::distribute(), cpuLoad::distribute(), cellsToCells::distributeMesh(), snappyLayerDriver::doLayers(), snappyRefineDriver::doRefine(), FaceCellWave< Type, TrackingData >::FaceCellWave(), refinementParameters::findCells(), meshRefinement::findRegions(), FvFaceCellWave< Type, TrackingData >::FvFaceCellWave(), surfaceSets::getHangingCells(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), cellsToCells::initialise(), twoPhaseMixture::interfaceFraction(), interRegionPorosityForce::interRegionPorosityForce(), Kmesh::Kmesh(), Foam::levelSetFraction(), polyTopoChange::makeMesh(), cellEdgeAddressingList::mapMesh(), cpuLoad::mapMesh(), cellsToCells::maskCells(), cellSet::maxSize(), cellZoneSet::maxSize(), Foam::meshCheck::mergeAndWrite(), momentOfInertia::meshInertia(), MGridGenGAMGAgglomeration::MGridGenGAMGAgglomeration(), cellTable::operator=(), mappedExtrudedPatchBase::patchFaceAreas(), polyMesh::polyMesh(), polyTopoChange::polyTopoChange(), fvMeshDistribute::printMeshInfo(), Foam::meshCheck::printMeshStats(), ensightParts::recalculate(), refinementHistory::refinementHistory(), refiner::refiner(), renumberMethod::renumber(), CuthillMcKeeRenumber::renumber(), springRenumber::renumber(), structuredRenumber::renumber(), SloanRenumber::renumber(), volMesh::size(), Foam::fvc::smooth(), Foam::fvc::spread(), syncTools::swapBoundaryCellList(), syncTools::swapBoundaryCellPositions(), Foam::fvc::sweep(), hexRef8Data::sync(), cellsToCells::tgtMeshSendCells(), cellEdgeAddressingList::topoChange(), distributor::update(), loadBalancer::update(), cellsToCellsStabilisation::update(), and cellsToCells::update().

Here is the caller graph for this function:

◆ nInternalPoints()

label nInternalPoints ( ) const
inline

Points not on boundary.

Definition at line 35 of file primitiveMeshI.H.

Referenced by Foam::meshCheck::printMeshStats().

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

Referenced by Foam::meshCheck::printMeshStats().

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

Referenced by Foam::meshCheck::printMeshStats().

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

Referenced by Foam::meshCheck::printMeshStats().

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

◆ points()

◆ faces()

◆ faceOwner()

◆ faceNeighbour()

◆ oldPoints()

virtual const pointField& oldPoints ( ) const
pure virtual

Return old points for mesh motion.

Implemented in polyMesh.

◆ cellShapes()

const Foam::cellShapeList & cellShapes ( ) const

Return cell shapes.

Definition at line 337 of file primitiveMesh.C.

◆ edges()

◆ calcCells()

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

Helper function to calculate cell-face addressing from.

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

Definition at line 30 of file primitiveMeshCells.C.

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

Here is the call graph for this function:

◆ calcPointOrder()

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

Helper function to calculate point ordering. Returns true.

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

Definition at line 128 of file primitiveMesh.C.

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

Here is the call graph for this function:

◆ cellCells() [1/3]

const Foam::labelListList & cellCells ( ) const

Definition at line 100 of file primitiveMeshCellCells.C.

Referenced by cellsToCells::appendNbrCells(), and Foam::meshCheck::checkTopology().

Here is the caller graph for this function:

◆ edgeCells() [1/3]

const Foam::labelListList & edgeCells ( ) const

Definition at line 32 of file primitiveMeshEdgeCells.C.

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

Referenced by Foam::meshCheck::checkTopology(), and Foam::meshTools::edgeOnCell().

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

◆ pointCells() [1/3]

◆ cells()

const Foam::cellList & cells ( ) const

Definition at line 136 of file primitiveMeshCells.C.

Referenced by pointMVCWeight::calcWeights(), tetOverlapVolume::cellCellOverlapMinDecomp(), tetOverlapVolume::cellCellOverlapVolumeMinDecomp(), Foam::meshCheck::cellDeterminant(), polyMeshTetDecomposition::cellTetIndices(), tetOverlapVolume::cellVolumeMinDecomp(), Foam::meshCheck::checkCellDeterminant(), Foam::meshCheck::checkCellsZipUp(), Foam::meshCheck::checkClosedCells(), Foam::meshCheck::checkConcaveCells(), Foam::meshCheck::checkFacePyramids(), Foam::meshCheck::checkTopology(), Foam::meshCheck::checkUpperTriangular(), particle::correctAfterInteractionListReferral(), outletStabilised< Type >::correction(), cutPolyIsoSurface::cutPolyIsoSurface(), probes::findElements(), polyMeshTetDecomposition::findTet(), surfaceSets::getHangingCells(), Foam::meshTools::getSharedFace(), Foam::interpolatePointToCell(), hexMatcher::isA(), prismMatcher::isA(), pyrMatcher::isA(), tetMatcher::isA(), tetWedgeMatcher::isA(), wedgeMatcher::isA(), particle::locate(), cellsToCells::maskCells(), degenerateMatcher::match(), hexMatcher::matches(), prismMatcher::matches(), pyrMatcher::matches(), tetMatcher::matches(), tetWedgeMatcher::matches(), wedgeMatcher::matches(), meshRefinement::mergePatchFacesUndo(), multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), treeDataCell::findIntersectOp::operator()(), treeDataCell::overlaps(), primitiveMesh::pointInCellBB(), polyMesh::polyMesh(), Foam::polyMeshZipUpCells(), Foam::meshCheck::printMeshStats(), refiner::refiner(), MPLIC::setCellAlphaf(), fvMatrix< Type >::setValue(), MPLIC::surfaceAlpha(), cellsToCells::tgtMeshSendCells(), layerInfo::updateFace(), and outletStabilised< Type >::weights().

Here is the caller graph for this function:

◆ edgeFaces() [1/3]

◆ pointFaces()

◆ cellEdges() [1/3]

const Foam::labelListList & cellEdges ( ) const

Definition at line 118 of file primitiveMeshCellEdges.C.

Referenced by cellFeatures::cellFeatures(), Foam::meshCheck::checkTopology(), Foam::meshTools::cutDirToEdge(), and primitiveMesh::edgeCells().

Here is the caller graph for this function:

◆ faceEdges() [1/3]

◆ pointEdges()

◆ pointPoints() [1/3]

const Foam::labelListList & pointPoints ( ) const

Definition at line 91 of file primitiveMeshPointPoints.C.

◆ cellPoints() [1/3]

const Foam::labelListList & cellPoints ( ) const

Definition at line 31 of file primitiveMeshCellPoints.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, Foam::invertManyToMany(), primitiveMesh::nCells(), primitiveMesh::pointCells(), and Foam::Pout.

Referenced by tetOverlapVolume::overlappingCells(), and pointMVCWeight::pointMVCWeight().

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

◆ cellCentres()

◆ faceCentres()

◆ cellVolumes()

◆ faceAreas()

◆ magFaceAreas()

const Foam::scalarField & magFaceAreas ( ) const

◆ movePoints()

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

Move points, returns volumes swept by faces in motion.

Definition at line 305 of file primitiveMesh.C.

References Foam::abort(), f(), Foam::FatalError, FatalErrorInFunction, forAll, nPoints, tmp< T >::ref(), and List< T >::size().

Referenced by polyMesh::movePoints().

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

◆ isInternalFace()

◆ pointInCellBB()

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

Return true if the point in the cell bounding box.

The bounding box may be isotropically inflated by the fraction inflationFraction

Definition at line 32 of file primitiveMeshFindCell.C.

References primitiveMesh::cells(), boundBox::contains(), primitiveMesh::faces(), Foam::mag(), boundBox::max(), boundBox::min(), VectorSpace< Form, Cmpt, Ncmpts >::one, p, primitiveMesh::points(), and boundBox::span().

Here is the call graph for this function:

◆ pointInCell()

bool pointInCell ( const point p,
label  celli 
) const

Return true if the point is in the cell.

Definition at line 59 of file primitiveMeshFindCell.C.

References cells, f(), forAll, and p.

Referenced by polyMesh::pointInCell().

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

◆ findNearestCell()

Foam::label findNearestCell ( const point location) const

Find the cell with the nearest cell centre to location.

Definition at line 86 of file primitiveMeshFindCell.C.

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

Here is the call graph for this function:

◆ findCell()

Foam::label findCell ( const point location) const

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

Definition at line 108 of file primitiveMeshFindCell.C.

References n.

◆ printAllocated()

void printAllocated ( ) const

Print a list of all the currently allocated mesh data.

Definition at line 31 of file primitiveMeshClear.C.

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

Here is the call graph for this function:

◆ hasCellShapes()

bool hasCellShapes ( ) const
inline

Definition at line 106 of file primitiveMeshI.H.

◆ hasEdges()

bool hasEdges ( ) const
inline

Definition at line 112 of file primitiveMeshI.H.

◆ hasCellCells()

bool hasCellCells ( ) const
inline

Definition at line 118 of file primitiveMeshI.H.

◆ hasEdgeCells()

bool hasEdgeCells ( ) const
inline

Definition at line 124 of file primitiveMeshI.H.

◆ hasPointCells()

bool hasPointCells ( ) const
inline

Definition at line 130 of file primitiveMeshI.H.

◆ hasCells()

bool hasCells ( ) const
inline

Definition at line 136 of file primitiveMeshI.H.

◆ hasEdgeFaces()

bool hasEdgeFaces ( ) const
inline

Definition at line 142 of file primitiveMeshI.H.

◆ hasPointFaces()

bool hasPointFaces ( ) const
inline

Definition at line 148 of file primitiveMeshI.H.

◆ hasCellEdges()

bool hasCellEdges ( ) const
inline

Definition at line 154 of file primitiveMeshI.H.

◆ hasFaceEdges()

bool hasFaceEdges ( ) const
inline

Definition at line 160 of file primitiveMeshI.H.

◆ hasPointEdges()

bool hasPointEdges ( ) const
inline

Definition at line 166 of file primitiveMeshI.H.

◆ hasPointPoints()

bool hasPointPoints ( ) const
inline

Definition at line 172 of file primitiveMeshI.H.

◆ hasCellPoints()

bool hasCellPoints ( ) const
inline

Definition at line 178 of file primitiveMeshI.H.

◆ hasCellCentres()

bool hasCellCentres ( ) const
inline

Definition at line 184 of file primitiveMeshI.H.

◆ hasFaceCentres()

bool hasFaceCentres ( ) const
inline

Definition at line 190 of file primitiveMeshI.H.

◆ hasCellVolumes()

bool hasCellVolumes ( ) const
inline

Definition at line 196 of file primitiveMeshI.H.

◆ hasFaceAreas()

bool hasFaceAreas ( ) const
inline

Definition at line 202 of file primitiveMeshI.H.

◆ cellCells() [2/3]

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

cellCells using cells.

Definition at line 111 of file primitiveMeshCellCells.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), cells, DynamicList< T, SizeInc, SizeMult, SizeDiv >::clear(), and forAll.

Here is the call graph for this function:

◆ cellCells() [3/3]

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

Definition at line 151 of file primitiveMeshCellCells.C.

◆ cellPoints() [2/3]

◆ cellPoints() [3/3]

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

Definition at line 101 of file primitiveMeshCellPoints.C.

◆ pointCells() [2/3]

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

◆ pointCells() [3/3]

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

Definition at line 174 of file primitiveMeshPointCells.C.

◆ pointPoints() [2/3]

◆ pointPoints() [3/3]

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

Definition at line 134 of file primitiveMeshPointPoints.C.

◆ faceEdges() [2/3]

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

◆ faceEdges() [3/3]

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

Definition at line 624 of file primitiveMeshEdges.C.

◆ edgeFaces() [2/3]

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

edgeFaces using pointFaces, edges, pointEdges

Definition at line 57 of file primitiveMeshEdgeFaces.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::clear(), Foam::e, and List< T >::size().

Here is the call graph for this function:

◆ edgeFaces() [3/3]

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

Definition at line 103 of file primitiveMeshEdgeFaces.C.

◆ edgeCells() [2/3]

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

edgeCells using pointFaces, edges, pointEdges

Definition at line 57 of file primitiveMeshEdgeCells.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::clear(), and forAll.

Here is the call graph for this function:

◆ edgeCells() [3/3]

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

Definition at line 127 of file primitiveMeshEdgeCells.C.

◆ cellEdges() [2/3]

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

◆ cellEdges() [3/3]

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

Definition at line 673 of file primitiveMeshEdges.C.

◆ clearGeom()

void clearGeom ( )

Clear geometry.

Definition at line 129 of file primitiveMeshClear.C.

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

Referenced by polyMesh::clearGeom(), and polyMesh::setPoints().

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

◆ clearAddressing()

void clearAddressing ( )

Clear topological data.

Definition at line 146 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()

void clearOut ( )

Clear all geometry and addressing unnecessary for CFD.

Definition at line 175 of file primitiveMeshClear.C.

◆ operator=()

void operator= ( const primitiveMesh )
delete

Disallow default bitwise assignment.

Member Data Documentation

◆ cellsPerEdge_

const unsigned cellsPerEdge_ = 4
static

Estimated number of cells per edge.

Definition at line 263 of file primitiveMesh.H.

◆ cellsPerPoint_

const unsigned cellsPerPoint_ = 8
static

Estimated number of cells per point.

Definition at line 266 of file primitiveMesh.H.

◆ facesPerCell_

const unsigned facesPerCell_ = 6
static

Estimated number of faces per cell.

Definition at line 269 of file primitiveMesh.H.

◆ facesPerEdge_

const unsigned facesPerEdge_ = 4
static

Estimated number of faces per edge.

Definition at line 272 of file primitiveMesh.H.

◆ facesPerPoint_

const unsigned facesPerPoint_ = 12
static

Estimated number of faces per point.

Definition at line 275 of file primitiveMesh.H.

◆ edgesPerCell_

const unsigned edgesPerCell_ = 12
static

Estimated number of edges per cell.

Definition at line 278 of file primitiveMesh.H.

◆ edgesPerFace_

const unsigned edgesPerFace_ = 4
static

Estimated number of edges per cell.

Definition at line 281 of file primitiveMesh.H.

◆ edgesPerPoint_

const unsigned edgesPerPoint_ = 6
static

Estimated number of edges per point.

Definition at line 284 of file primitiveMesh.H.

◆ pointsPerCell_

const unsigned pointsPerCell_ = 8
static

Estimated number of points per cell.

Definition at line 287 of file primitiveMesh.H.

◆ pointsPerFace_

const unsigned pointsPerFace_ = 4
static

Estimated number of points per face.

Definition at line 290 of file primitiveMesh.H.


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