FreeFOAM The Cross-Platform CFD Toolkit
directMappedWallPolyPatch.C
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM 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 OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 \*---------------------------------------------------------------------------*/
25 
28 
29 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
30 
31 namespace Foam
32 {
33  defineTypeNameAndDebug(directMappedWallPolyPatch, 0);
34 
35  addToRunTimeSelectionTable(polyPatch, directMappedWallPolyPatch, word);
37  (
38  polyPatch,
39  directMappedWallPolyPatch,
40  dictionary
41  );
42 }
43 
44 
45 // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
46 
47 
48 // * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * * * * * //
49 
51 (
52  const word& name,
53  const label size,
54  const label start,
55  const label index,
56  const polyBoundaryMesh& bm
57 )
58 :
59  wallPolyPatch(name, size, start, index, bm),
60  directMappedPatchBase(static_cast<const polyPatch&>(*this))
61 {}
62 
63 
65 (
66  const word& name,
67  const label size,
68  const label start,
69  const label index,
70  const word& sampleRegion,
72  const word& samplePatch,
73  const vectorField& offset,
74  const polyBoundaryMesh& bm
75 )
76 :
77  wallPolyPatch(name, size, start, index, bm),
79  (
80  static_cast<const polyPatch&>(*this),
81  sampleRegion,
82  mode,
83  samplePatch,
84  offset
85  )
86 {}
87 
88 
90 (
91  const word& name,
92  const label size,
93  const label start,
94  const label index,
95  const word& sampleRegion,
97  const word& samplePatch,
98  const vector& offset,
99  const polyBoundaryMesh& bm
100 )
101 :
102  wallPolyPatch(name, size, start, index, bm),
104  (
105  static_cast<const polyPatch&>(*this),
106  sampleRegion,
107  mode,
108  samplePatch,
109  offset
110  )
111 {}
112 
113 
115 (
116  const word& name,
117  const dictionary& dict,
118  const label index,
119  const polyBoundaryMesh& bm
120 )
121 :
122  wallPolyPatch(name, dict, index, bm),
123  directMappedPatchBase(*this, dict)
124 {}
125 
126 
128 (
129  const directMappedWallPolyPatch& pp,
130  const polyBoundaryMesh& bm
131 )
132 :
133  wallPolyPatch(pp, bm),
134  directMappedPatchBase(*this, pp)
135 {}
136 
137 
139 (
140  const directMappedWallPolyPatch& pp,
141  const polyBoundaryMesh& bm,
142  const label index,
143  const label newSize,
144  const label newStart
145 )
146 :
147  wallPolyPatch(pp, bm, index, newSize, newStart),
148  directMappedPatchBase(*this, pp)
149 {}
150 
151 
152 // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
153 
155 {
157 }
158 
159 
160 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
161 
162 //- Initialise the calculation of the patch geometry
164 {
167 }
168 
169 //- Calculate the patch geometry
171 {
174 }
175 
176 //- Initialise the patches for moving points
178 {
181 }
182 
183 //- Correct patches after moving points
185 {
188 }
189 
190 //- Initialise the update of the patch topology
192 {
195 }
196 
197 //- Update of the patch topology
199 {
202 }
203 
204 
206 {
209 }
210 
211 
212 // ************************ vim: set sw=4 sts=4 et: ************************ //