1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | cfMesh: A library for mesh generation
5 \\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
6 \\/ M anipulation | Copyright (C) Creative Fields, Ltd.
7 -------------------------------------------------------------------------------
9 This file is part of cfMesh.
11 cfMesh is free software; you can redistribute it and/or modify it
12 under the terms of the GNU General Public License as published by the
13 Free Software Foundation; either version 3 of the License, or (at your
14 option) any later version.
16 cfMesh is distributed in the hope that it will be useful, but WITHOUT
17 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 You should have received a copy of the GNU General Public License
22 along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
25 checkNonMappableCellConnections
28 Checks cell connections at the surface. Cells with all vertices at
29 the boundary are considered problematic because they get severly skewed
30 after being mapped to the geometry surface in most cases. This code performs
31 checks of cells with all vertices at the boundary with the rest of the mesh.
32 Such cells having a neighbour with all internal faces are removed.
35 checkNonMappableCellConnections.C
37 \*---------------------------------------------------------------------------*/
39 #ifndef checkNonMappableCellConnections_H
40 #define checkNonMappableCellConnections_H
42 #include "polyMeshGenModifier.H"
45 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50 /*---------------------------------------------------------------------------*\
51 Class checkNonMappableCellConnections Declaration
52 \*---------------------------------------------------------------------------*/
54 class checkNonMappableCellConnections
57 //- Reference to polyMeshGen
74 // Private member functions
78 //- Disallow default bitwise copy construct
79 checkNonMappableCellConnections(const checkNonMappableCellConnections&);
81 //- Disallow default bitwise assignment
82 void operator=(const checkNonMappableCellConnections&);
88 //- Construct from polyMeshGen and meshOctree
89 checkNonMappableCellConnections(polyMeshGen& mesh);
93 ~checkNonMappableCellConnections();
96 //- find problematic cells
97 void findCells(labelHashSet& badCells);
99 //- find and remove problematic cells
103 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105 } // End namespace Foam
107 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
111 // ************************************************************************* //