symmetryPlaneOptimisation.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | cfMesh: A library for mesh generation
4  \\ / O peration |
5  \\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
6  \\/ M anipulation | Copyright (C) Creative Fields, Ltd.
7 -------------------------------------------------------------------------------
8 License
9  This file is part of cfMesh.
10 
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.
15 
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
19  for more details.
20 
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/>.
23 
24 Class
25  symmetryPlaneOptimisation
26 
27 Description
28  Smoothing of symmetry planes in the mesh such that all points
29  are in the plane.
30 
31 SourceFiles
32  symmetryPlaneOptimisation.C
33 
34 \*---------------------------------------------------------------------------*/
35 
36 #ifndef symmetryPlaneOptimisation_H
37 #define symmetryPlaneOptimisation_H
38 
39 #include "DynList.H"
40 #include "polyMeshGenModifier.H"
41 #include "boundBox.H"
42 #include "labelLongList.H"
43 #include "boolList.H"
44 #include "plane.H"
45 
46 #include <map>
47 
48 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
49 
50 namespace Foam
51 {
52 
53 /*---------------------------------------------------------------------------*\
54  Class symmetryPlaneOptimisation Declaration
55 \*---------------------------------------------------------------------------*/
56 
58 {
59  // Private data
60  //- reference to the mesh
62 
63  //- symmetry planes in the mesh
64  std::map<label, plane> symmetryPlanes_;
65 
66  // Private member functions
67  //- detect symmetry planes
68  void detectSymmetryPlanes();
69 
70  //- point-planes addressing
71  void pointInPlanes(VRWGraph&) const;
72 
73 public:
74 
75  // Constructors
76 
77  //- Construct from mesh
79 
80 
81  // Destructor
82 
84 
85  // Member Functions
86  //- move vertices to the symmetry planes
88 };
89 
90 
91 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
92 
93 } // End namespace Foam
94 
95 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
96 
97 #endif
98 
99 // ************************************************************************* //
boolList.H
Foam::symmetryPlaneOptimisation::symmetryPlanes_
std::map< label, plane > symmetryPlanes_
symmetry planes in the mesh
Definition: symmetryPlaneOptimisation.H:63
polyMeshGenModifier.H
Foam::symmetryPlaneOptimisation::~symmetryPlaneOptimisation
~symmetryPlaneOptimisation()
Definition: symmetryPlaneOptimisation.C:191
Foam::polyMeshGen
Definition: polyMeshGen.H:46
Foam::symmetryPlaneOptimisation::pointInPlanes
void pointInPlanes(VRWGraph &) const
point-planes addressing
Definition: symmetryPlaneOptimisation.C:105
Foam::symmetryPlaneOptimisation
Definition: symmetryPlaneOptimisation.H:56
plane.H
Foam::symmetryPlaneOptimisation::optimizeSymmetryPlanes
void optimizeSymmetryPlanes()
move vertices to the symmetry planes
Definition: symmetryPlaneOptimisation.C:196
mesh
dynamicFvMesh & mesh
Definition: createDynamicFvMesh.H:18
Foam
Namespace for OpenFOAM.
Definition: combustionModel.C:30
Foam::symmetryPlaneOptimisation::symmetryPlaneOptimisation
symmetryPlaneOptimisation(polyMeshGen &mesh)
Construct from mesh.
Definition: symmetryPlaneOptimisation.C:182
Foam::symmetryPlaneOptimisation::mesh_
polyMeshGen & mesh_
reference to the mesh
Definition: symmetryPlaneOptimisation.H:60
boundBox.H
Foam::symmetryPlaneOptimisation::detectSymmetryPlanes
void detectSymmetryPlanes()
detect symmetry planes
Definition: symmetryPlaneOptimisation.C:44
labelLongList.H
Foam::VRWGraph
Definition: VRWGraph.H:101
DynList.H