32 void Foam::CECCellToCellStencil::calcEdgeBoundaryData
36 EdgeMap<labelList>& neiGlobal
39 neiGlobal.resize(2*boundaryEdges.size());
45 label edgeI = boundaryEdges[i];
49 mesh().edges()[edgeI],
53 mesh().edgeFaces(edgeI),
63 void Foam::CECCellToCellStencil::calcCellStencil
110 EdgeMap<labelList> neiGlobal;
118 globalCellCells.setSize(
mesh().nCells());
124 label edgeI = boundaryEdges[i];
133 label celli = eCells[j];
140 globalCellCells[celli]
156 mesh().edgeFaces(edgeI),
165 label celli = eCells[j];
171 globalCellCells[celli]
185 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.
CECCellToCellStencil(const polyMesh &)
Construct from all cells and boundary faces.
List< bool > boolList
Bool container classes.
HashSet< label, Hash< label > > labelHashSet
A HashSet with label keys.
const labelListList & edgeCells() const
List< label > labelList
A List of labels.
void validBoundaryFaces(boolList &isValidBFace) const
Valid boundary faces (not empty and not coupled)
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
labelList calcFaceCells(const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const
Collect cell neighbours of faces in global numbering.
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...