36 void Foam::CFCFaceToCellStencil::calcFaceBoundaryData
49 const polyPatch& pp =
patches[patchi];
50 label facei = pp.start();
60 globFaces.
setSize(cFaces.size()-1);
65 if (cFaces[j] != facei)
76 else if (isA<emptyPolyPatch>(pp))
94 void Foam::CFCFaceToCellStencil::calcCellStencil
108 calcFaceBoundaryData(neiGlobal);
118 const polyPatch& pp =
patches[patchi];
120 if (isA<emptyPolyPatch>(pp))
125 validBFace[bFacei++] =
false;
134 DynamicList<label> allGlobalFaces(100);
136 globalCellFaces.setSize(
mesh().nCells());
137 forAll(globalCellFaces, celli)
139 const cell& cFaces =
mesh().
cells()[celli];
141 allGlobalFaces.
clear();
144 for (
const label facei : cFaces)
148 mesh().isInternalFace(facei)
149 || validBFace[facei-
mesh().nInternalFaces()]
152 allGlobalFaces.append(globalNumbering().toGlobal(facei));
157 for (
const label facei : cFaces)
159 if (
mesh().isInternalFace(facei))
161 label nbrCelli = own[facei];
162 if (nbrCelli == celli)
164 nbrCelli = nei[facei];
166 const cell& nbrFaces =
mesh().
cells()[nbrCelli];
168 for (
const label nbrFacei : nbrFaces)
172 mesh().isInternalFace(nbrFacei)
173 || validBFace[nbrFacei-
mesh().nInternalFaces()]
176 label nbrGlobali = globalNumbering().toGlobal(nbrFacei);
188 for (
const label nbrGlobali : nbrGlobalFaces)
196 globalCellFaces[celli] = allGlobalFaces;
216 faceToCellStencil(
mesh)
219 calcCellStencil(*
this);