Successfully reported this slideshow.
Your SlideShare is downloading. ×

Dexcs2019 howto Cad and Meshing

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 125 Ad

More Related Content

Similar to Dexcs2019 howto Cad and Meshing (20)

Advertisement

Recently uploaded (20)

Dexcs2019 howto Cad and Meshing

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

×