SlideShare a Scribd company logo
オープンCAEコンサルタント
OCSE^2 代表 野村悦治
DEXCS for OpenFOAM®における
推奨メッシュ生成法
Disclaimer: OPENFOAM ® is a registered trade mark of OpenCFD Limited, the producer of the
OpenFOAM software and owner of the OPENFOAM ® and OpenCFD ® trade marks. This
offering is not approved or endorsed by OpenCFD Limited.
2020/10
for DEXCS2020
 
1
形状、メッシュデータ作成方法の概要
■ 簡単な形状・・・FreeCADで作成(と境界区分)
■ 複雑な形状・・・通常利用の3D-CADで作成
○ ⇒ STL形式でエクスポート
⇒ helyxOS へインポート ⇒ snappyHexMesh
⇒ TreeFoam へインポート ⇒ snappyHexMesh
○ ⇒STEP形式でエクスポート
⇒FreeCADへインポート ⇒ FreeCADマクロ ⇒ cfMesh
(簡単なSTL形式インポートも可能)
■ 他のソフトで作成したメッシュが存在
○ ⇒###ToFoam 標準ユーティリティを利用
DEXCS同梱ツール DEXCS推奨方法
2
目次
1. FreeCAD
2. cfMesh
3. FreeCADマクロ
3
1. FreeCAD
4
FreeCADとは http://www.freecadweb.org/?lang=ja
5
https://www.freecadweb.org/wiki/Getting_started/jp
FreeCADの起動
6
クリック
1
FreeCADの基本
❏ 画面の構成
❏ ワークベンチ
❏ ツールバー
❏ マウスの使い方
❏ 3Dモデル作成法
❏ インポート / エクスポート
❏ DEXCS カスタマイズメニュー
7
画面(パネル)の構成
画面の追加・削除
画面の分離・結合
8
ワークベンチ
9
CAE通常利用
9
31
2
ツールバー
10
追加・削除
可能
個々のツールバーはサ
イズ如何で展開使用、自
由に配置も可能
ワークベンチ変更に伴
いツールバー構成が
変化
新規作成ボタンを押せ
ば、ツールバー利用
が可能になる
マウスの使い方
11
3D画面上で
マウス右クリック
2⇒右ボタン
でもOK
変更は可能
クリック
3Dモデル作成法のいろいろ
12
Part
PartDesign
Sketch
Pocket
押出
1
3
2
3Dモデル作成法のいろいろ
13
Part
1
Part起動画面とツール
14
プリミティブ
ツール
1
加工ツール
2
注:ツールバーの位置は説明用に並び替えてあります
論理演算
ツール
立方体 ⇒ 直方体平板
1
3
4
寸法を変更
5
62
15
円柱
16
1
3
4
寸法を変更
5
2
クリック
6
7 8
ソリッド演算
1
2
4
Applyボタンを押して、意図した通りにならなかっ
た場合は、Ctrl+Zキーにてやり直し
17
3
3Dモデル作成法のいろいろ
18
Sketch
Pocket
押出
2
スケッチ起動
19
2
3
1
4
スケッチツール
描画ツール
拘束ツール
注:ツールバーの位置は説明用に並び替えてあります
20
長方形と円の作成
1 2
寸法や配置はおおまかで良い(後で修正)
21
円中心を固定
円中心と原点を選択
円中心が原点に移動
選択したものは
緑色表示されている
1
2
3
22
円の半径
円を選択
1
2
5
3
4
23
長方形の位置
辺と原点を選択
1
2
3
4
5
6
7
8
辺と原点を選択
24
長方形の大きさ
辺を選択
1
2
3
4
6
7
8
辺を選択
5
25
スケッチ終了 ⇒ Part起動
2
26
1
押し出し
1
3
4
2
27
3Dモデル作成法のいろいろ
Part
PartDesign
Pocket
3
28
PartDesign起動
1
3
p.15 と同じ
2
4
29
面上でスケッチ画面を起動
面を選択1
2
3
30
円を作成
円を選択
1
円中心を選択
5
4
4
3
2
6
31
ポケット作成
1
5
2
4
3
32
FreeCADの基本
❏ 画面の構成
❏ ワークベンチ
❏ ツールバー
❏ マウスの使い方
❏ 3Dモデル作成法
❏ インポート / エクスポート
❏ DEXCS カスタマイズメニュー
33
3Dモデルのエクスポート(STEP形式)
1
4
3
6
5
7
2
8
34
35
3Dモデルのインポート(STEP形式)
2
3
4
5
新規
1
6
36
3Dモデルのエクスポート(STL形式)
1
2
3
4
5
6
7
37
3Dモデルのエクスポート
(STL形式、補足)
本図方法も可能だが、ファイル名に拡張子( stlまたはast)を付
加する必要がある。 stlはバイナリ形式、astはアスキー形式。
OpenFOAMは拡張子stlのアスキー形式が必要なので、 astで
出力してファイル名変更する必要がある。
また複数ブロックが存在する場合、この方法で出力される STL
モデルは単一ブロックになってしまう。
3Dモデルのインポート(STL形式)
2
3
4
5
新規
1
6
38
(注)STLモデルのままでは後述のマクロで取扱できません
39
インポートしたSTLモデルの3D化
2
5
4
1
3D化出来たら削除
(残しておくと、後のマク
ロ作業でエラーになる)
形状がうまく再現でき
ない場合に調整
m(メートル)サイズで作成してあ
る場合は、拡大してからイン
ポートすると良い
サイズ制限は、
メモリが許容できる範囲まで OKですが、
実用上は数10MB程度まで
3
40
DEXCSカスタマイズメニュー(1/4)
選択
p.36参照
選択したコンポーネントを対象に
OpenFOAM用メッシュ作成に必要
な設定作業で、よく使用する機能を
集約したメニューバー
41
DEXCSカスタマイズメニュー(2/4)
2
3
1
https://open-shelf.appspot.com/FreeCAD/3.html
42
DEXCSカスタマイズメニュー(3/4)
2
3
4
1
(同一)
43
DEXCSカスタマイズメニュー(4/4)
2
3
41
(同一)
2. cfMesh
44
cfMesh
とは
● 開発元:Creative Fields., Ltd.(http://www.c-fields.com/)
● GPL版と商用版(CF-MESH+)もある。
● SnappyHexMeshに類似だが、より簡単・メッシュ品質も良い
(但し、現在は単領域問題にしか適用できない)
● (ESI版)OpenFOAM-v1712 より modules 搭載
オープンCAE勉強会@富山/20140823第24回
45
cfMesh作成原理と
主要パラメタ・Dictファイルの概要
対象領域定義ファイル
(fms形式)
細分化レベル
レイヤー
46
マニュアル
ファイルマネー
ジャの起動
ダブル
クリック
展開
2
3
1
4
47
3.FreeCADマクロ
48
cfMesh作成原理と
主要パラメタ・Dictファイルの概要
対象領域定義ファイル
(fms形式)
細分化レベル
レイヤー
DEXCS2014からは FreeCADマクロでDictファイルを自動作成
49
FreeCADマクロの開発経緯
パラメタセット詳細適合の省力化支援
(GUI)wxコンポーネント⇒ Qt4 / pySyde化
マクロ起動ボタン化
code refuctoring by Miyoshi
● 0.17.13522
● 0.16.6712(stable)
● 0.17.8614 (Git)
● 0.14
● 0.16
FreeCAD Ver.
● 0.19.18272(Git)マクロ機能追加、python3 対応
50
● 0.19 (2020/9/21)TreeFoam3 対応、ポータビリティ対応
cfMeshSetting.py
マクロの起動(DEXCS2014)
1
マクロの実行
makeChMeshSetting.py
を選択
実行ボタンを押す
3
2
51
FreeCADマクロ
52
チュートリアルケースの確認
ダブルクリック
53
1
2
ダブルクリック
FreeCADの起動
54
http://ofbkansai.sakura.ne.jp/log_seminar/
オープンCAE勉強会@関西
55
まずは動かしてみる
Export
ボタンをクリック
2
3
4
1
56
メッシュ作成
2
3
1
57
メッシュ表示
2
1
3
4
58
cfMesh設定用パラメタファイルと
FreeCADマクロの仕組み
59
cfMesh設定用パラメタファイル
マクロ実行
stlファイルの作成
fmsファイルへの変換
meshDictの作成
2
1
3
OpenFOAM
ケースフォルダ
/opt/DEXCS/template/dexcs
マクロ実行時に
存在しなければ
自動作成
0
60
DEXCSランチャー
仮想風洞試験パラメタセット
2
1
3
マクロ実行前
FreeCADマクロ新規追加機能
61
stlファイルの作成
http://ofbkansai.sakura.ne.jp/log_seminar/
オープンCAE勉強会@関西
内容はほぼ同一
exportStl.FCMacro は、
export.py を拡張したものです
62
fmsファイルの作成
OF端末の起動
1
surfaceFeatureEdges -angle 30 [case].stl [case].fms
コマンド入力
2
63
backstepSimple.stl
三角形を構成する
節点座標
法線ベクトル
64
0
1
2
3
4
5
6
7
8 9
10
11
backstepSimple.fms
patchの数
節点の数
三角形の数
輪郭線の数
patch番号
三角形の節点番号
線分の
節点番号
節点座標patchの
名前と
type
65
meshDictの作成
boundaryLayer
にチェックマークが
ある場合リストアップ
Type:region 以外にて
cellSize指定がある場
合リストアップ
Type:region
にてcellSize指定があ
る場合リストアップ66
maxCellSize
maxCellSize = ( Δx + Δy + Δz ) / 60
= (30 + 3 + 2 ) /60
= 0.58
67
パラメタスタディ
maxCellSize
featureAngle
boundaryLayer
68
変更箇所
maxCellSize
2 3
1
69
4
featureAngle
変更箇所
2 3
1
70
4
変更箇所
boundaryLayer
2 3
1
71
4
boundaryLayer
レイヤー指定なし
72
レイヤーオプション(手修正)
1
2
変更箇所
73
レイヤーオプション(手修正結果)
変更箇所
74
backstep
壁面を個別に名
前を変えている
こと確認
backstepを
ダブルクリック
1
マクロ実行
ボタンをクリック
3
2
75
変更箇所
パラメタの細部調整
76
2 3
1
4
計算(simpleFoam)実行
ソルバー(simpleFoam)
実行ボタンを押す
plotWatcher
起動ボタンを押す
2
3
4
境界条件データ等は事前に設定
済のものを使用しています。
1
77
5
FreeCADマクロの使い方
新規追加機能を中心に演習
78
モデル確認
ダブルクリック
79
ヒートシンク http://www.micforg.co.jp/jp/c_t19.html
80
演習用カットモデル
非表示
表示
2
1
表示 ⇆ 非表示 は、コンポーネントを選択してスペースキーを押せば切り替わります。
81
FreeCADマクロの使い方
additionalRefinementLevel
82
cfMeshにおけるメッシュ細分化は、 maxCellSizeを基本サイズとする二分木法による。
細分化対象のサイズがわかっている場合は、その細分化サイズを直接指定するのが直感的にわかりやすそ
うなので、デフォルトでは cellSize指定できるようにしてある。
一方、サイズを微調整するには、 RefLevelを指定して、maxCellSizeを変更するのが調整しやすい。
指定した
cellSize
実際に適用され
るcellSize
マクロ設定 ⇒ メッシュ作成
変更箇所
フィン厚み
2
3
1
483
メッシュ作成
2
3
1
84
メッシュ表示
2
1
3
4
85
2
1
3
4
6
5
8
7
86
メッシュ確認(流体部分)
セルサイズ
0.8
セルサイズ
0.1
87
固体部分でのメッシュ作成
ヒートシンク(カット
モデル)
のみ表示
2
1
88
マクロ設定 ⇒ メッシュ作成、確認
2 3
変更箇所
1
4
89
狭い隙間でのメッシュ作成
ベースメッシュ
境界面
keepCellsIntersectingBoundary
0
keepCellsIntersectingBoundary
1
内部メッシュ
OK
内部メッシュ
OK
内部メッシュ
NG
90
keepCellsIntersectingBoundary
2 3
1
4
91
keepCellsIntersectingBoundary
(不具合例)
固体部分もメッシュ
計算時間長大!
3 4
2
1
変更箇所
5
92
FreeCADマクロの使い方
stopAfter EdgeExtruction
計算時間数秒
にて不具合確認
2 3
1
4
93
FreeCADマクロの使い方
optimizeLayer optionの効能
94
球の回りの流れ
http://skomo.o.oo7.jp/f28/hp28_62.htm
http://www.higashi-h.tym.ed.jp/course/kadai15/matome/kuuki.htm
Re(レイノルズ数)
Cd(抗力係数)
U:速度
D:代表寸法
 (球の直径)
nu:動粘性係数
95
球の抵抗係数
http://slpr.sakura.ne.jp/qp/air-resistance/
96
FreeCAD起動
ダブルクリック
97
モデル確認
球の半径は0.5
(D=1)
98
モデル確認
(細分化領域)
30
10
99
マクロ起動
1
100
メッシュ出力先
101
2
4
1
3
5
どちらかを選択
メッシュパラメタ設定
変更箇所(例)
Export
ボタンをクリック
2
3
4
1
102
メッシュ作成
2
3
1
103
メッシュ表示
104
2
1
3
4
105
2
1
3
4
6
5
8
7
106
メッシュ確認(Paraview)
メッシュ方案(例)
107
計算(simpleFoam)実行
ソルバー(simpleFoam)
実行ボタンを押す
plotWatcher
起動ボタンを押す
2
3
4
境界条件データ等は事前に設定
済のものを使用しています。
1
108
5
Re=100000, RAS:kEpsilon
計算(pimpleFoam)実行
ソルバー(simpleFoam)
実行ボタンを押す
plotWatcher
起動ボタンを押す
2
3
4
境界条件データ等は事前に設定
済のものを使用しています。
1
109
5
Re=10000, RAS:kEpsilon
4
110
2
34
1
5
6
7
ダブルクリック
111
計算結果の検証
sphere
simpleFoam
112
sphere
pimpleFoam
113
注意点・・・STLのメッシュ偏差
2
3
1
4
5
6
114
計算精度要因
・・・STLのメッシュ偏差
115
その他の計算精度要因
● 解析領域、細分化領域のサイズ
● 非定常計算における平均化処理
● 計算スキーム
● ...
116
optimizeLayer 不具合例
117
まとめ
118
マクロ画面
の説明(1/2)
境界条件 Type の指定
(patch/wall/symmetryPlane/region/overset/empty)
cellSizeは空白になっている
⇒細分化しない
BoundaryLayerにチェックマークが入っ
ていない⇒レイヤーは付加しない
maxCellSizeの値はモデルサイズから概略自
動計算した値が設定済みだが変更は可能
featureAngleは30(変更可能)
表示されているパーツ
の名前がリストアップさ
れている
レイヤーを付加するとした
場合の設定値(変更可能)
119
マクロ画面
の説明(2/2)
曲面レイヤーを滑らか
にしたい場合に使用
(起動時)FreeCADモデルの存在するディレクトリだが、任
意のディレクトリに変更も可能。 OpenFOAMのケースディ
レクトリでなくても可。
狭い隙間でメッシュ作成
したい場合に使用
メッシュ作成に長時間が予想される
場合に用に使用
(メッシュ方案の問題有無確認)
cfMesh設定ファイルを出力
作成済の設定ファイルを取り込む
(但し、手修正部分はリセットされる)
設定ファイル
(meshDict)を直接編集
メッシュ作成
(cartesianMesh)を実行
メッシュ確認用 .foam 作成
(但しParaviewは別途手動で
起動要)
Object毎の細分化をサイズで
直接指定(但し、その数字通り
にならない場合もある)
Object毎の細分化をレ
ベル数字(N)で指定
(CellSize =
maxCellSize / 2N
)
終了
終了
120
メッシュチェック
(checkMesh)を実行
マニュアル
ファイルマネー
ジャの起動
ダブル
クリック
展開
2
3
1
4
121
122
マニュアル
meshDict
meshDict中のコメント文はマニュアル表記をそのまま転記しています
surfaceFile
maxCellSize
boundaryCellSize
minCellSize
localRefinement
{
patchName
{
additionalRefinementLevels / cellSize
refinementThickness
}
}
objectRefinement
{
objectName
{
cellSize
type box / sphere / cone / line / hollowCone
}
}
edgeMeshRefinement
{
edgeName
{
edgeFile
additionalRefineLevels / cellSize
refinementThickness
}
}
パラメタ総覧 (1/2)
keepCellsIntersectingBoundary
checkForGruedMesh(removeGruedMesh?)
keepCellsIntersectingPatches
{
patchName
{
keepCells
}
}
removeCellsIntersectingPatches
{
patchName
{
keepCells
}
}
123
renameBoundary
{ defaultName
defaultType
newPatchNames
{
patchName
{
newName
type
}
}
}
anisotropicSources
{
boxExample
{
type box
center /
lengthX / lengthY ,...
scaleX / scaleY...
}
planeExample
{
type plane
normal / origin
scalingDistance
scalingFactor
}
}
workflowControl
{
stopAfter edgeExtraction
restartFromLastStep
}
enforceGeometryConstraints
boundaryLayers
{
nLayers
thicknessRatio
maxFirstLayerThickness
patchBoundaryLayers
}
patchName
}
nLayers
thicknessRatio
allowDiscontinuity
}
}
optimizeLayer
untangleLayer
optimizationParameters
{
nSmoothNormals
maxNumIterations
featureSizeFactor
reCalculateNormals
relThicknessTol
}
} 青字部分のみFreeCADマクロで設定可能
パラメタ総覧 (2/2)
朱字部分もFreeCADマクロで設定可能
紫字部分は今後の予定
124
Let’s smart OpenCAE
presented by125

More Related Content

PDF
Dexcs2019 howto Cad and Meshing
PDF
How to cad and meshing for OpenFOAM
PDF
123 dexcs2020
PDF
Howto CAD and Meshing on DEXCS2021
PDF
Dexcs2021 of install2
PDF
123 Dexcs2021
PDF
Mixer vessel by cfmesh
PDF
Mesh dexcs
Dexcs2019 howto Cad and Meshing
How to cad and meshing for OpenFOAM
123 dexcs2020
Howto CAD and Meshing on DEXCS2021
Dexcs2021 of install2
123 Dexcs2021
Mixer vessel by cfmesh
Mesh dexcs

What's hot (14)

PDF
123 dexcs2019
PDF
about DEXCS for OpenFOAM
PDF
Free cad 0.19.2 and cfdof (Japanese Ver.)
PDF
20210515 cae linux_install_vb
PPTX
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
PDF
Windows8/8.1時代のWin32プログラミング #sapporocpp
PDF
20170211_pronama_CrystalDiskMark_UWP
PDF
Vivado hls勉強会1(基礎編)
PDF
Decsx launcherv 2.5
PDF
「クリエイティブ・ミュージック・コーディング」- オーディオ・ビジュアル作品のための、オープンソースなソフトウエア・フレームワークの現状と展望
PDF
Using xvim with macvim
PDF
室内空調シミュレーション手順書
PDF
SDSoC 2016.3+yocto project
PDF
わんくま名古屋#33(20141115) TDD道場#21
123 dexcs2019
about DEXCS for OpenFOAM
Free cad 0.19.2 and cfdof (Japanese Ver.)
20210515 cae linux_install_vb
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
Windows8/8.1時代のWin32プログラミング #sapporocpp
20170211_pronama_CrystalDiskMark_UWP
Vivado hls勉強会1(基礎編)
Decsx launcherv 2.5
「クリエイティブ・ミュージック・コーディング」- オーディオ・ビジュアル作品のための、オープンソースなソフトウエア・フレームワークの現状と展望
Using xvim with macvim
室内空調シミュレーション手順書
SDSoC 2016.3+yocto project
わんくま名古屋#33(20141115) TDD道場#21
Ad

Similar to Howto CAD and Meshing on DEXCS2020 (15)

PDF
howtoCADandMeshing2022.pdf
PDF
123DEXCS2022.pdf
PDF
aboutDexcsPlus2022.pdf
PDF
aboutDEXCS2023-OF.pdf
PDF
DEXCS2022 for preCICE
PDF
Making mixingelbow
PDF
About dexcs2021 for OpenFOAM
PDF
About DEXCS for OpenFOAM
PDF
aboutDEXCS2022-OF.pdf
PDF
About dexcs2020 for OpenFOAM
PDF
About dexcs2019 for OpenFOAM
PDF
Helyx os dexcs2020
PDF
DEXCS2023OF_Install.pdf
PDF
Helyx os dexcs2018
PDF
CAESES-FFW,GridPro,OpenFOAMを使用した形状最適化事例#1
howtoCADandMeshing2022.pdf
123DEXCS2022.pdf
aboutDexcsPlus2022.pdf
aboutDEXCS2023-OF.pdf
DEXCS2022 for preCICE
Making mixingelbow
About dexcs2021 for OpenFOAM
About DEXCS for OpenFOAM
aboutDEXCS2022-OF.pdf
About dexcs2020 for OpenFOAM
About dexcs2019 for OpenFOAM
Helyx os dexcs2020
DEXCS2023OF_Install.pdf
Helyx os dexcs2018
CAESES-FFW,GridPro,OpenFOAMを使用した形状最適化事例#1
Ad

More from Etsuji Nomura (11)

PDF
How to install DEXCS2024 for OpenFOAM on VirtualBox
PDF
DEXCS2022OF_Install.pdf
PDF
Dexcs2020-OF install
PDF
Dexcs2019 of install
PDF
Of tutorials v1806
PDF
Dexcs2018 of install
PDF
OpenFOAM Case Handling in dakota-6.8 gui
PDF
201804 about su2
PDF
Of tutorials v1712
PDF
about dakota6.7 gui
PDF
Of tutorials 5.0
How to install DEXCS2024 for OpenFOAM on VirtualBox
DEXCS2022OF_Install.pdf
Dexcs2020-OF install
Dexcs2019 of install
Of tutorials v1806
Dexcs2018 of install
OpenFOAM Case Handling in dakota-6.8 gui
201804 about su2
Of tutorials v1712
about dakota6.7 gui
Of tutorials 5.0

Howto CAD and Meshing on DEXCS2020