35 bool starMesh::starEqualFace
37 const face& boundaryFace,
45 bool cellFaceHappy =
false;
49 forAll (cellFace, cellFaceLabelI)
51 const label curCellFaceLabel = cellFace[cellFaceLabelI];
53 forAll (boundaryFace, bouFaceLabelI)
55 if (boundaryFace[bouFaceLabelI] == curCellFaceLabel)
70 bool boundaryFaceHappy =
true;
72 forAll (boundaryFace, bouFaceLabelI)
74 const label curBouFaceLabel = boundaryFace[bouFaceLabelI];
78 forAll (cellFace, cellFaceLabelI)
80 if (curBouFaceLabel == cellFace[cellFaceLabelI])
87 boundaryFaceHappy = boundaryFaceHappy && found;
90 return (cellFaceHappy && boundaryFaceHappy);
94 void starMesh::markBoundaryFaces()
97 boundaryCellIDs_.setSize(boundary_.size());
98 boundaryCellFaceIDs_.setSize(boundary_.size());
102 const faceList& patchFaces = boundary_[patchI];
105 labelList& curBoundaryCellIDs = boundaryCellIDs_[patchI];
106 labelList& curBoundaryCellFaceIDs = boundaryCellFaceIDs_[patchI];
117 const face& curFace = patchFaces[faceI];
120 forAll(facePoints, pointI)
123 PointCells[facePoints[pointI]];
125 forAll(facePointCells, cellI)
127 const label curCellIndex = facePointCells[cellI];
130 cellFaces_[curCellIndex];
132 forAll(curCellFaces, cellFaceI)
134 if (starEqualFace(curFace, curCellFaces[cellFaceI]))
140 curBoundaryCellIDs[faceI] = curCellIndex;
141 curBoundaryCellFaceIDs[faceI] = cellFaceI;
153 <<
" does not have neighbour cell."
154 <<
" Face : " <<
endl << curFace <<
endl
155 <<
"PROSTAR Command: vset,news,vlis";
159 if (curFace[spI] > -1 && curFace[spI] < starPointID_.
size())
161 Info <<
"," << starPointID_[curFace[spI]];
176 void starMesh::collectBoundaryFaces()
178 Info <<
"Collecting boundary faces" <<
endl;
181 faceList& patchFaces = boundary_[patchI];
184 const labelList& curBoundaryCellIDs = boundaryCellIDs_[patchI];
185 const labelList& curBoundaryCellFaceIDs = boundaryCellFaceIDs_[patchI];
187 forAll (curBoundaryCellIDs, faceI)
190 cellFaces_[curBoundaryCellIDs[faceI]]
191 [curBoundaryCellFaceIDs[faceI]];
195 Info <<
"Finished collecting boundary faces" <<
endl;