diff --git a/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C b/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C index 256ffa19cd..daf71ac7e9 100644 --- a/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C +++ b/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C @@ -66,6 +66,45 @@ Foam::label Foam::checkTopology } + { + cellSet cells(mesh, "illegalCells", mesh.nCells()/100); + + forAll(mesh.cells(), cellI) + { + const cell& cFaces = mesh.cells()[cellI]; + + if (cFaces.size() <= 3) + { + cells.insert(cellI); + } + forAll(cFaces, i) + { + if (cFaces[i] < 0 || cFaces[i] >= mesh.nFaces()) + { + cells.insert(cellI); + break; + } + } + } + label nCells = returnReduce(cells.size(), sumOp