1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
7 -------------------------------------------------------------------------------
9 This file is part of OpenFOAM.
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.
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
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/>.
25 Foam::directMappedVariableThicknessWallPolyPatch
28 Foam::directMappedVariableThicknessWallPolyPatch
31 directMappedVariableThicknessWallPolyPatch.C
33 \*---------------------------------------------------------------------------*/
35 #ifndef directMappedVariableThicknessWallPolyPatch_H
36 #define directMappedVariableThicknessWallPolyPatch_H
38 #include "wallPolyPatch.H"
39 #include "directMappedWallPolyPatch.H"
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
49 /*---------------------------------------------------------------------------*\
50 Class directMappedVariableThicknessWallPolyPatch Declaration
51 \*---------------------------------------------------------------------------*/
53 class directMappedVariableThicknessWallPolyPatch
55 public directMappedWallPolyPatch
61 scalarList thickness_;
66 //- Runtime type information
67 TypeName("directMappedWallVariableThickness");
72 //- Construct from components
73 directMappedVariableThicknessWallPolyPatch
79 const polyBoundaryMesh& bm
82 //- Construct from components
83 directMappedVariableThicknessWallPolyPatch
89 const word& sampleRegion,
90 const directMappedPatchBase::sampleMode mode,
91 const word& samplePatch,
92 const vectorField& offset,
93 const polyBoundaryMesh& bm
96 //- Construct from components. Uniform offset.
97 directMappedVariableThicknessWallPolyPatch
103 const word& sampleRegion,
104 const directMappedPatchBase::sampleMode mode,
105 const word& samplePatch,
106 const vector& offset,
107 const polyBoundaryMesh& bm
110 //- Construct from dictionary
111 directMappedVariableThicknessWallPolyPatch
114 const dictionary& dict,
116 const polyBoundaryMesh& bm
119 //- Construct as copy, resetting the boundary mesh
120 directMappedVariableThicknessWallPolyPatch
122 const directMappedVariableThicknessWallPolyPatch&,
123 const polyBoundaryMesh&
126 //- Construct given the original patch and resetting the
127 // face list and boundary mesh information
128 directMappedVariableThicknessWallPolyPatch
130 const directMappedVariableThicknessWallPolyPatch& pp,
131 const polyBoundaryMesh& bm,
137 //- Construct given the original patch and a map
138 directMappedVariableThicknessWallPolyPatch
140 const directMappedVariableThicknessWallPolyPatch& pp,
141 const polyBoundaryMesh& bm,
143 const labelUList& mapAddressing,
147 //- Construct and return a clone, resetting the boundary mesh
148 virtual autoPtr<polyPatch> clone(const polyBoundaryMesh& bm) const
150 return autoPtr<polyPatch>
152 new directMappedVariableThicknessWallPolyPatch(*this, bm)
156 //- Construct and return a clone, resetting the face list
158 virtual autoPtr<polyPatch> clone
160 const polyBoundaryMesh& bm,
166 return autoPtr<polyPatch>
168 new directMappedVariableThicknessWallPolyPatch
179 //- Construct and return a clone, resetting the face list
181 virtual autoPtr<polyPatch> clone
183 const polyBoundaryMesh& bm,
185 const labelUList& mapAddressing,
189 return autoPtr<polyPatch>
191 new directMappedVariableThicknessWallPolyPatch
204 virtual ~directMappedVariableThicknessWallPolyPatch();
209 //- Return non const thickness
210 scalarList& thickness()
216 //- Return const thickness
217 const scalarList& thickness() const
223 //- Write the polyPatch data as a dictionary
224 void write(Ostream&) const;
228 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
230 } // End namespace Foam
232 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
236 // ************************************************************************* //