primitiveMesh Class Referenceabstract

Cell-face mesh analysis engine. More...

Inheritance diagram for primitiveMesh:

Public Member Functions

 ClassName ("primitiveMesh")
 Runtime type information. More...
 
 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...
 
template<class Type >
bool has (const Type &(primitiveMesh::*method)() const) const
 Return whether the result of the given method has been allocated. More...
 
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

 primitiveMesh ()
 Construct null. More...
 

Static Protected Member Functions

template<class Class , class Type >
static bool isMethod (const Type &(Class::*method)() const, const Type &(Class::*otherMethod)() const)
 Test if the supplied methods are the same. Same type overload. More...
 
template<class Class , class Type , class OtherType >
static bool isMethod (const Type &(Class::*method)() const, const OtherType &(Class::*otherMethod)() const)
 Test if the supplied methods are the same. Different type. 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

◆ isMethod() [1/2]

bool isMethod ( const Type &(Class::*)() const  method,
const Type &(Class::*)() const  otherMethod 
)
inlinestaticprotected

Test if the supplied methods are the same. Same type overload.

Compares pointers.

Definition at line 31 of file primitiveMeshI.H.

◆ isMethod() [2/2]

bool isMethod ( const Type &(Class::*)() const  method,
const OtherType &(Class::*)() const  otherMethod 
)
inlinestaticprotected

Test if the supplied methods are the same. Different type.

overload. Returns false.

Definition at line 42 of file primitiveMeshI.H.

◆ ClassName()

ClassName ( "primitiveMesh"  )

Runtime type information.

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

Foam::label nPoints ( ) const
inline

Definition at line 60 of file primitiveMeshI.H.

Referenced by singleProcessorFaceSetsConstraint::add(), polyMeshAdder::add(), pointZoneList::allSize(), 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(), faceFsData::faceFsData(), polyMeshFilter::filterEdges(), pistonBowlPoints::generate(), 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(), cellPoint< Type >::pointVolumeWeightedSum(), pointZoneSet::pointZoneSet(), polyMesh::polyMesh(), polyTopoChange::polyTopoChange(), fvMeshDistribute::printMeshInfo(), addPatchCellLayer::setRefinement(), pointMesh::size(), surfPointGeoMesh::size(), rigidBodyMeshMotion::solve(), rigidBodyMeshMotionSolver::solve(), sixDoFRigidBodyMotionSolver::solve(), hexRef8Data::sync(), pointSet::sync(), syncTools::syncPointList(), meshRefinement::testSyncPointList(), and edgeVertex::vertToEVert().

Here is the caller graph for this function:

◆ nEdges()

◆ nInternalFaces()

Foam::label nInternalFaces ( ) const
inline

Definition at line 101 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(), cellToCellStencil::insertFaceCells(), cellToFaceStencil::insertFaceCells(), fvMeshSubset::interpolate(), Foam::meshCheck::mergeAndWrite(), meshRefinement::mergePatchFacesUndo(), MeshedSurface< Face >::MeshedSurface(), MGridGenGAMGAgglomeration::MGridGenGAMGAgglomeration(), inversePointDistanceDiffusivity::operator()(), mappedExtrudedPatchBase::patchFaceAreas(), polyTopoChange::polyTopoChange(), cloudBoundaryCollisionFlux::postCrossFaces(), fvMeshDistribute::printCoupleInfo(), fvMeshDistribute::printMeshInfo(), repatchMesh::read(), refiner::refiner(), SloanRenumber::renumber(), triSurface::sampleField(), setFaceFieldType(), 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(), LagrangianMesh::track(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), cellsToCells::trimLocalTgt(), cellsToCellsStabilisation::update(), cellToCellStencil::validBoundaryFaces(), cellToFaceStencil::validBoundaryFaces(), Foam::meshCheck::volRatio(), extendedCellToFaceStencil::weightedSum(), extendedUpwindCellToFaceStencil::weightedSum(), and polyBoundaryMesh::whichPatch().

Here is the caller graph for this function:

◆ nFaces()

Foam::label nFaces ( ) const
inline

Definition at line 107 of file primitiveMeshI.H.

Referenced by refinementHistory::add(), preserveBafflesConstraint::add(), preserveFaceZonesConstraint::add(), preservePatchesConstraint::add(), singleProcessorFaceSetsConstraint::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), faceZoneList::allSize(), preserveFaceZonesConstraint::apply(), preservePatchesConstraint::apply(), decompositionMethod::calcCellCells(), 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(), faceCutData::faceCutData(), faceData::faceData(), Foam::meshCheck::faceFlatness(), faceFsData::faceFsData(), faceMapper::faceMapper(), Foam::meshCheck::faceOrthogonality(), Foam::meshCheck::facePyramidVolume(), faceSet::faceSet(), Foam::meshCheck::faceSkewness(), Foam::meshCheck::faceWeights(), faceZoneSet::faceZoneSet(), localPointRegion::findDuplicateFacePairs(), polyMeshTetDecomposition::findFaceBasePts(), fvFieldReconstructor::fvFieldReconstructor(), syncTools::getInternalOrCoupledFaces(), syncTools::getInternalOrMasterFaces(), syncTools::getMasterFaces(), repatchMesh::getNearest(), LagrangianFieldDecomposer::LagrangianFieldDecomposer(), lagrangianFieldDecomposer::lagrangianFieldDecomposer(), 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(), triSurface::sampleField(), snappySnapDriver::scaleMesh(), decompositionMethod::setConstraints(), addPatchCellLayer::setRefinement(), surfGeoMesh::size(), 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(), Foam::meshCheck::volRatio(), and polyBoundaryMesh::whichPatch().

Here is the caller graph for this function:

◆ nCells()

Foam::label nCells ( ) const
inline

Definition at line 113 of file primitiveMeshI.H.

Referenced by refinementHistoryConstraint::add(), polyMeshAdder::add(), snappyLayerDriver::addLayers(), cellZoneList::allSize(), refinementHistoryConstraint::apply(), nearWallFields::calcAddressing(), primitiveMesh::calcCells(), intersection::calculate(), matching::calculate(), nearest::calculate(), cellClassification::cellClassification(), Foam::meshCheck::cellClosedness(), cellCuts::cellCuts(), Foam::meshCheck::cellDeterminant(), cellMapper::cellMapper(), primitiveMesh::cellPoints(), cellSet::cellSet(), cellPoint< Type >::cellVolumeWeightedSum(), 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(), for(), FvFaceCellWave< Type, TrackingData >::FvFaceCellWave(), fvFieldReconstructor::fvFieldReconstructor(), surfaceSets::getHangingCells(), hexRef8::hexRef8(), hexRef8Data::hexRef8Data(), if(), cellsToCells::initialise(), twoPhaseMixture::interfaceFraction(), interRegionPorosityForce::interRegionPorosityForce(), Kmesh::Kmesh(), LagrangianFieldDecomposer::LagrangianFieldDecomposer(), lagrangianFieldDecomposer::lagrangianFieldDecomposer(), 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()

Foam::label nInternalPoints ( ) const
inline

Points not on boundary.

Definition at line 54 of file primitiveMeshI.H.

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

Here is the caller graph for this function:

◆ nInternal0Edges()

Foam::label nInternal0Edges ( ) const
inline

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

no boundary point

Definition at line 66 of file primitiveMeshI.H.

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

Here is the caller graph for this function:

◆ nInternal1Edges()

Foam::label nInternal1Edges ( ) const
inline

Internal edges using 0 or 1 boundary point.

Definition at line 74 of file primitiveMeshI.H.

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

Here is the caller graph for this function:

◆ nInternalEdges()

Foam::label nInternalEdges ( ) const
inline

Internal edges using 0,1 or 2 boundary points.

Definition at line 82 of file primitiveMeshI.H.

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

Here is the caller graph for this function:

◆ points()

◆ faces()

◆ faceOwner()

virtual const labelList& faceOwner ( ) const
pure virtual

Face face-owner addressing.

Implemented in polyMesh.

Referenced by tetOverlapVolume::cellCellOverlapMinDecomp(), and tetOverlapVolume::cellCellOverlapVolumeMinDecomp().

Here is the caller graph for this function:

◆ faceNeighbour()

virtual const labelList& faceNeighbour ( ) const
pure virtual

Face face-neighbour addressing.

Implemented in polyMesh.

◆ oldPoints()

virtual const pointField& oldPoints ( ) const
pure virtual

Return old points for mesh motion.

Implemented in polyMesh.

◆ cellShapes()

const Foam::cellShapeList & cellShapes ( ) const

Return cell shapes.

Definition at line 337 of file primitiveMesh.C.

Referenced by primitiveMesh::has(), and USERD_get_var_by_component().

Here is the caller graph for this function:

◆ edges()

◆ calcCells()

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

Helper function to calculate cell-face addressing from.

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

Definition at line 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(), Foam::meshCheck::checkTopology(), and primitiveMesh::has().

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(), Foam::meshTools::edgeOnCell(), and primitiveMesh::has().

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(), cellPoint< Type >::cellVolumeWeightedSum(), Foam::tracking::changeFace(), 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(), geomCellLooper::cut(), cutPolyIsoSurface::cutPolyIsoSurface(), cellEdgeAddressingList::data(), probes::findElements(), polyMeshTetDecomposition::findTet(), surfaceSets::getHangingCells(), Foam::meshTools::getSharedFace(), primitiveMesh::has(), Foam::interpolatePointToCell(), hexMatcher::isA(), prismMatcher::isA(), pyrMatcher::isA(), tetMatcher::isA(), tetWedgeMatcher::isA(), wedgeMatcher::isA(), LagrangianMesh::LagrangianMesh(), Foam::tracking::locate(), cellsToCells::maskCells(), degenerateMatcher::match(), hexMatcher::matches(), prismMatcher::matches(), pyrMatcher::matches(), tetMatcher::matches(), tetWedgeMatcher::matches(), wedgeMatcher::matches(), meshRefinement::mergePatchFacesUndo(), volumeInjection::modify(), multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), inversePointDistanceDiffusivity::operator()(), treeDataCell::findIntersectOp::operator()(), treeDataCell::overlaps(), primitiveMesh::pointInCellBB(), cellPoint< Type >::pointVolumeWeightedSum(), polyMesh::polyMesh(), Foam::polyMeshZipUpCells(), Foam::meshCheck::printMeshStats(), refiner::refiner(), MPLIC::setCellAlphaf(), meshCutter::setRefinement(), 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]

◆ faceEdges() [1/3]

◆ pointEdges()

◆ pointPoints() [1/3]

const Foam::labelListList & pointPoints ( ) const

Definition at line 91 of file primitiveMeshPointPoints.C.

Referenced by primitiveMesh::has().

Here is the caller graph for this function:

◆ cellPoints() [1/3]

const Foam::labelListList & cellPoints ( ) const

◆ cellCentres()

◆ faceCentres()

◆ cellVolumes()

◆ faceAreas()

◆ magFaceAreas()

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

Referenced by polyMesh::printAllocated().

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

◆ has()

◆ 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 294 of file primitiveMesh.H.

◆ cellsPerPoint_

const unsigned cellsPerPoint_ = 8
static

Estimated number of cells per point.

Definition at line 297 of file primitiveMesh.H.

◆ facesPerCell_

const unsigned facesPerCell_ = 6
static

Estimated number of faces per cell.

Definition at line 300 of file primitiveMesh.H.

◆ facesPerEdge_

const unsigned facesPerEdge_ = 4
static

Estimated number of faces per edge.

Definition at line 303 of file primitiveMesh.H.

◆ facesPerPoint_

const unsigned facesPerPoint_ = 12
static

Estimated number of faces per point.

Definition at line 306 of file primitiveMesh.H.

◆ edgesPerCell_

const unsigned edgesPerCell_ = 12
static

Estimated number of edges per cell.

Definition at line 309 of file primitiveMesh.H.

◆ edgesPerFace_

const unsigned edgesPerFace_ = 4
static

Estimated number of edges per cell.

Definition at line 312 of file primitiveMesh.H.

◆ edgesPerPoint_

const unsigned edgesPerPoint_ = 6
static

Estimated number of edges per point.

Definition at line 315 of file primitiveMesh.H.

◆ pointsPerCell_

const unsigned pointsPerCell_ = 8
static

Estimated number of points per cell.

Definition at line 318 of file primitiveMesh.H.

◆ pointsPerFace_

const unsigned pointsPerFace_ = 4
static

Estimated number of points per face.

Definition at line 321 of file primitiveMesh.H.


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