Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 #ifndef layerParameters_H
00036 #define layerParameters_H
00037
00038 #include <OpenFOAM/dictionary.H>
00039 #include <OpenFOAM/scalarField.H>
00040 #include <OpenFOAM/labelList.H>
00041 #include <OpenFOAM/Switch.H>
00042
00043
00044
00045 namespace Foam
00046 {
00047
00048
00049 class polyBoundaryMesh;
00050 class refinementSurfaces;
00051
00052
00053
00054
00055
00056 class layerParameters
00057 {
00058
00059
00060
00061 static const scalar defaultConcaveAngle;
00062
00063
00064
00065
00066
00067
00068
00069 labelList numLayers_;
00070
00071 scalarField expansionRatio_;
00072
00073 Switch relativeSizes_;
00074
00075 scalarField finalLayerThickness_;
00076
00077 scalarField minThickness_;
00078
00079
00080 scalar featureAngle_;
00081
00082 scalar concaveAngle_;
00083
00084 label nGrow_;
00085
00086 label nSmoothSurfaceNormals_;
00087
00088 label nSmoothNormals_;
00089
00090 label nSmoothThickness_;
00091
00092 scalar maxFaceThicknessRatio_;
00093
00094 scalar layerTerminationCos_;
00095
00096 scalar maxThicknessToMedialRatio_;
00097
00098 scalar minMedianAxisAngleCos_;
00099
00100 label nBufferCellsNoExtrude_;
00101
00102 label nSnap_;
00103
00104 label nLayerIter_;
00105
00106 label nRelaxedIter_;
00107
00108
00109
00110
00111
00112 static labelList readNumLayers
00113 (
00114 const PtrList<dictionary>& surfaceDicts,
00115 const refinementSurfaces& refineSurfaces,
00116 const labelList& globalToPatch,
00117 const polyBoundaryMesh& boundaryMesh
00118 );
00119
00120
00121 layerParameters(const layerParameters&);
00122
00123
00124 void operator=(const layerParameters&);
00125
00126
00127 public:
00128
00129
00130
00131
00132 layerParameters
00133 (
00134 const PtrList<dictionary>& surfaceDicts,
00135 const refinementSurfaces& refineSurfaces,
00136 const labelList& globalToPatch,
00137 const dictionary& dict,
00138 const polyBoundaryMesh& boundaryMesh
00139 );
00140
00141
00142 layerParameters(const dictionary& dict, const polyBoundaryMesh&);
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152 const labelList& numLayers() const
00153 {
00154 return numLayers_;
00155 }
00156
00157
00158 const scalarField& expansionRatio() const
00159 {
00160 return expansionRatio_;
00161 }
00162
00163
00164
00165 bool relativeSizes() const
00166 {
00167 return relativeSizes_;
00168 }
00169
00170
00171
00172
00173
00174
00175 const scalarField& finalLayerThickness() const
00176 {
00177 return finalLayerThickness_;
00178 }
00179
00180
00181
00182
00183
00184 const scalarField& minThickness() const
00185 {
00186 return minThickness_;
00187 }
00188
00189
00190 scalar featureAngle() const
00191 {
00192 return featureAngle_;
00193 }
00194
00195 scalar concaveAngle() const
00196 {
00197 return concaveAngle_;
00198 }
00199
00200
00201
00202
00203 label nGrow() const
00204 {
00205 return nGrow_;
00206 }
00207
00208
00209 label nSmoothSurfaceNormals() const
00210 {
00211 return nSmoothSurfaceNormals_;
00212 }
00213
00214
00215
00216 label nSmoothNormals() const
00217 {
00218 return nSmoothNormals_;
00219 }
00220
00221
00222 scalar maxFaceThicknessRatio() const
00223 {
00224 return maxFaceThicknessRatio_;
00225 }
00226
00227 scalar layerTerminationCos() const
00228 {
00229 return layerTerminationCos_;
00230 }
00231
00232
00233 label nSmoothThickness() const
00234 {
00235 return nSmoothThickness_;
00236 }
00237
00238
00239
00240 scalar maxThicknessToMedialRatio() const
00241 {
00242 return maxThicknessToMedialRatio_;
00243 }
00244
00245
00246 scalar minMedianAxisAngleCos() const
00247 {
00248 return minMedianAxisAngleCos_;
00249 }
00250
00251
00252 label nBufferCellsNoExtrude() const
00253 {
00254 return nBufferCellsNoExtrude_;
00255 }
00256
00257 label nSnap() const
00258 {
00259 return nSnap_;
00260 }
00261
00262
00263
00264
00265 label nLayerIter() const
00266 {
00267 return nLayerIter_;
00268 }
00269
00270
00271
00272 label nRelaxedIter() const
00273 {
00274 return nRelaxedIter_;
00275 }
00276
00277
00278
00279 };
00280
00281
00282
00283
00284 }
00285
00286
00287
00288 #endif
00289
00290