Gmsh で OpenFOAM 用メッシュを作る2015年11月22日 | |
はじめにGmsh を使って OpenFOAM 用メッシュを作ってみる。 使用バージョンGmsh 2.11.0 Windows 版 ファイルサンプル STL ファイル mixing_elbow.stl.gz (FreeCAD で作成) Gmsh で STL からメッシュを作る以下のような ".geo" ファイルを用意する。 mixing_elbow.geo
Merge "mixing_elbow.stl";
CreateTopology;
ll[] = Line "*";
For i In {0: #ll[]-1}
Compound Line(newl) = ll[i];
EndFor
ss[] = Surface "*";
s = news;
For i In {0 : #ss[]-1}
Compound Surface(s+i) = ss[i];
EndFor
Surface Loop(1) = {s : s + #ss[] - 1};
Volume(1) = {1};
Physical Surface ("in1") = {s};
Physical Surface ("in2") = {s+1};
Physical Surface ("out") = {s+2};
Physical Surface ("side") = {s+3};
Physical Volume ("fluid") = {1};
Mesh.CharacteristicLengthMin = 0.;
Mesh.CharacteristicLengthMax = 0.002;
Geometry.HideCompounds = 0;
"Merge" で STL を取り込んでいる。"Compound Line", "Compound Surface" は、STL のラインやサーフェイスからまとまったラインとサーフェイスを作る。こうしないと、メッシュ分割がもとの STL のパッチに依存してしまう。その後にボリュームを作り、サーフェイスとボリュームに名前を付け、最後にメッシュサイズを指定している。 Gmsh を起動し、メニュー [File]-[Open...] で ".geo" ファイルを読み込む。ツリーの [Mesh]-[Define]-[3D] を押すとメッシュが作成される。メッシュができたら、続けて [Optimize 3D (Netgen)] を押す。 STL の線が邪魔な場合は、メニュー [Tools]-[Visibility] の [List browser] で表面を見えなくすればよい。 メニュー [File]-[Save Mesh] で ".msh" ファイルが保存される。 できたメッシュ。 ![]() 変換gmshToFoam で OpenFOAM 用メッシュに変換する。 $ gmshToFoam mixing_elbow.msh | |
| PENGUINITIS | |