32 void Foam::CPCCellToCellStencil::calcPointBoundaryData
36 Map<labelList>& neiGlobal
39 neiGlobal.resize(2*boundaryPoints.size());
45 label pointi = boundaryPoints[i];
53 mesh().pointFaces()[pointi],
69 void Foam::CPCCellToCellStencil::calcCellStencil
84 Map<labelList> neiGlobal;
92 globalCellCells.setSize(
mesh().nCells());
98 label pointi = boundaryPoints[i];
100 const labelList& pGlobals = neiGlobal[pointi];
107 label celli = pCells[j];
114 globalCellCells[celli]
130 mesh().pointFaces()[pointi],
139 label celli = pCells[j];
145 globalCellCells[celli]
160 calcCellStencil(*
this);
static void merge(const label global0, const label global1, const labelList &listA, labelList &listB)
Merge two lists.
List< labelList > labelListList
A List of labelList.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
List< bool > boolList
Bool container classes.
HashSet< label, Hash< label > > labelHashSet
A HashSet with label keys.
List< label > labelList
A List of labels.
const labelListList & pointCells() const
void validBoundaryFaces(boolList &isValidBFace) const
Valid boundary faces (not empty and not coupled)
labelList calcFaceCells(const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const
Collect cell neighbours of faces in global numbering.
CPCCellToCellStencil(const polyMesh &)
Construct from all cells and boundary faces.
const globalIndex & globalNumbering() const
Global numbering for cells and boundary faces.
const polyMesh & mesh() const
Mesh consisting of general polyhedral cells.
autoPtr< indirectPrimitivePatch > allCoupledFacesPatch() const
Return patch of all coupled faces.
baseclass for extended cell centred addressing. Contains per cell a list of neighbouring cells and/or...