snappyHexMeshでファイルを作成して実行したところエラーが表示されました.
始めてsnappyHexMeshを使ったためファイルの設定が間違えている可能性が高いのですが,
どこがおかしいのか把握できずにおります.
stlファイルはtriSurface内にしっかり入れています.
snappyHexMeshDict編集で参考にしたサイトは以下のサイトです.
http://opencfd.jimdo.com/%E3%83%97%E3%83%AC%E5%87%A6%E7%90%86/snappyhexmesh/どなたかご指摘くだされば幸いです.よろしくお願いいたします.
------------------------------snappyHexMeshDictの記述-------------------------------
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.1.1 |
| \\ / A nd | Web:
www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object snappyHexMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Which of the steps to run
castellatedMesh true;
snap true;
addLayers true;
// Geometry. Definition of all surfaces. All surfaces are of class
// searchableSurface.
// Surfaces are used
// - to specify refinement for any mesh cell intersecting it
// - to specify refinement for any mesh cell inside/outside/near
// - to 'snap' the mesh boundary to the surface
geometry
{
vortex_base.stl //CADで作成したSTLファイル名
{
type triSurfaceMesh;
name vortex_base; //CADで作成したSTLファイル名
}
/*refinementBox
{
type searchableBox;
min (-1.0 -0.7 0.0);
max ( 8.0 0.7 2.5);
}*/
};
// メッシュ細分の設定
castellatedMeshControls
{
//プロセッサあたりの最大格子数
maxLocalCells 100000;
// 全体の最大格子数
// この値を超えると細分は行われない
// 表面形状内の格子除去前の格子数もこの数値が適用される。
maxGlobalCells 2000000;
// 細分される格子の最小数
// 細分可能な格子数がこの値以下になると細分を止める。
minRefinementCells 10;
// 細分によって生じるアンバランスを許容するレベルの設定?
maxLoadUnbalance 0.10;
// 細分レベルが異なる格子間のバッファレイヤ数
// 大きな値をとると格子数が多くなる
// 値が小さすぎると界面フィットしたときに不十分になる
nCellsBetweenLevels 2;
// 特徴線の定義ファイルの指定と、特徴線周りの細分レベルの設定
features
(
{
file "vortex_base.eMesh"; //CADで作成したデータ
level 3;
}
);
// 表面ベースの細分
refinementSurfaces
{
vortex_base //CADで作成したデータ
{
// 表面ベースの細分設定(最小レベル、最大レベル)
level (1 1);
}
}
// 解像する角度。この角度以上で交差していれば特徴線と見なす。
resolveFeatureAngle 60;
// Region-wise refinement
// ~~~~~~~~~~~~~~~~~~~~~~
// Specifies refinement level for cells in relation to a surface. One of
// three modes
// - distance. 'levels' specifies per distance to the surface the
// wanted refinement level. The distances need to be specified in
// descending order.
// - inside. 'levels' is only one entry and only the level is used. All
// cells inside the surface get refined up to the level. The surface
// needs to be closed for this to be possible.
// - outside. Same but cells outside.
/* refinementRegions
{
refinementBox
{
mode inside;
levels ((1E15 4));
}
}*/
// Mesh selection
// ~~~~~~~~~~~~~~
//格子内分点の定義
//この点を含んでいる領域が解析対象となる
//格子の面上や頂点に来てはいけない。必ず格子内に置く
locationInMesh (3 3 0.43);
// Whether any faceZones (as specified in the refinementSurfaces)
// are only on the boundary of corresponding cellZones or also allow
// free-standing zone faces. Not used if there are no faceZones.
allowFreeStandingZoneFaces true;
}
// Settings for the snapping.
snapControls
{
//境界におけるパッチの平滑化処理の反復回数
nSmoothPatch 3;
//表面形状へフィットする際に許容される移動距離の比
tolerance 4.0;
//格子置換時の緩和計算の回数
nSolveIter 30;
//格子の界面フィッティングの緩和計算の回数
nRelaxIter 5;
//特徴線の界面フィッティング
//特徴線の界面フィッティング計算の回数
nFeatureSnapIter 10;
//表面サンプリングによる特徴線の検出、デフォルトはfaulse
implicitFeatureSnap true;
//細分化の際に特徴線を使う、デフォルトはtrue
explicitFeatureSnap true;
multiRegionFeatureSnap;
}
// 境界層メッシュ作成の設定
addLayersControls
{
// レイヤ厚さの設定
// レイヤ外部の変形していない格子の大きさに対して
// 相対値(true)か、絶対値(false)か
relativeSizes true;
// 付加するレイヤの定義
layers
{
"(lowerWall|vortex_base).*"
{
nSurfaceLayers 1; // 付加するレイヤ数
}
}
// Expansion factor for layer mesh
expansionRatio 1.0;
//- Wanted thickness of final added cell layer. If multiple layers
// is the
// thickness of the layer furthest away from the wall.
// Relative to undistorted size of cell outside layer.
// is the thickness of the layer furthest away from the wall.
// See relativeSizes parameter.
finalLayerThickness 0.5;
//- Minimum thickness of cell layer. If for any reason layer
// cannot be above minThickness do not add layer.
// Relative to undistorted size of cell outside layer.
minThickness 0.25;
//- If points get not extruded do nGrow layers of connected faces that are
// also not grown. This helps convergence of the layer addition process
// close to features.
// Note: changed(corrected) w.r.t 17x! (didn't do anything in 17x)
nGrow 0;
// Advanced settings
//- When not to extrude surface. 0 is flat surface, 90 is when two faces
// make straight angle.
featureAngle 360;
//- Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 3;
// Number of smoothing iterations of surface normals
nSmoothSurfaceNormals 1;
// Number of smoothing iterations of interior mesh movement direction
nSmoothNormals 3;
// Smooth layer thickness over surface patches
nSmoothThickness 10;
// Stop layer growth on highly warped cells
maxFaceThicknessRatio 0.3;
// Reduce layer growth where ratio thickness to medial
// distance is large
maxThicknessToMedialRatio 0.3;
// Angle used to pick up medial axis points
// Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130 in 17x.
minMedianAxisAngle 90;
// Create buffer region for new layer terminations
nBufferCellsNoExtrude 0;
// Overall max number of layer addition iterations. The mesher will exit
// if it reaches this number of iterations; possibly with an illegal
// mesh.
nLayerIter 50;
}
// メッシュ品質の設定(基本的に変更なしで)
meshQualityControls
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 65;
//- Max skewness allowed. Set to <0 to disable.
maxBoundarySkewness 20;
maxInternalSkewness 4;
//- Max concaveness allowed. Is angle (in degrees) below which concavity
// is allowed. 0 is straight face, <0 would be convex face.
// Set to 180 to disable.
maxConcave 80;
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
// Set to a sensible fraction of the smallest cell volume expected.
// Set to very negative number (e.g. -1E30) to disable.
minVol 1e-13;
//- Minimum quality of the tet formed by the face-centre
// and variable base point minimum decomposition triangles and
// the cell centre. This has to be a positive number for tracking
// to work. Set to very negative number (e.g. -1E30) to
// disable.
// <0 = inside out tet,
// 0 = flat tet
// 1 = regular tet
minTetQuality 1e-30;
//- Minimum face area. Set to <0 to disable.
minArea -1;
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
//- and face centre triangles normal
minTwist 0.02;
//- minimum normalised cell determinant
//- 1 = hex, <= 0 = folded or flattened illegal cell
minDeterminant 0.001;
//- minFaceWeight (0 -> 0.5)
minFaceWeight 0.02;
//- minVolRatio (0 -> 1)
minVolRatio 0.01;
//must be >0 for Fluent compatibility
minTriangleTwist -1;
// Advanced
//- Number of error distribution iterations
nSmoothScale 4;
//- amount to scale back displacement at error points
errorReduction 0.75;
}
// アドバンスド設定
// 結果を出力する際のオプション設定
// 0:最終的なメッシュを出力するだけ
// 1:変換途中のメッシュも出力する
// 2:セルレベルのスカラー値を付けて出力する
// 4:途中の.objファイルも出力する
debug 0;
// Merge tolerance. Is fraction of overall bounding box of initial mesh.
// Note: the write tolerance needs to be higher than this.
mergeTolerance 1e-6;
// ************************************************************************* //