34void Foam::CFCCellToCellStencil::calcFaceBoundaryData
48 label facei =
pp.start();
65 neiGlobal[bFacei] = -1;
85void Foam::CFCCellToCellStencil::calcCellStencil
99 calcFaceBoundaryData(neiGlobal);
105 globalCellCells.setSize(
mesh().nCells());
106 forAll(globalCellCells, celli)
110 labelList& cCells = globalCellCells[celli];
112 cCells.setSize(cFaces.size()+1);
117 cCells[nNbr++] = globalNumbering().toGlobal(celli);
122 label facei = cFaces[i];
124 if (
mesh().isInternalFace(facei))
126 label nbrCelli = own[facei];
127 if (nbrCelli == celli)
129 nbrCelli = nei[facei];
131 cCells[nNbr++] = globalNumbering().toGlobal(nbrCelli);
138 cCells[nNbr++] = nbrCelli;
142 cCells.setSize(nNbr);
151 cellToCellStencil(
mesh)
154 calcCellStencil(*
this);
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())
CFCCellToCellStencil(const polyMesh &mesh)
Construct from mesh.
void setSize(label n)
Alias for resize().
const polyMesh & mesh() const
cellToCellStencil(const polyMesh &)
Construct from mesh.
const globalIndex & globalNumbering() const
Global numbering for cells and boundary faces.
A cell is defined as a list of faces with extra functionality.
label toGlobal(const label proci, const label i) const
From local to global on proci.
Mesh consisting of general polyhedral cells.
const polyBoundaryMesh & boundaryMesh() const noexcept
Return boundary mesh.
virtual const labelList & faceOwner() const
Return face owner.
virtual const labelList & faceNeighbour() const
Return face neighbour.
label nBoundaryFaces() const noexcept
Number of boundary faces (== nFaces - nInternalFaces).
label nInternalFaces() const noexcept
Number of internal faces.
const cellList & cells() const
const polyBoundaryMesh & patches
List< labelList > labelListList
List of labelList.
List< label > labelList
A List of labels.
const Type * isA(const U &obj)
Attempt dynamic_cast to Type.
#define forAll(list, i)
Loop across all elements in list.