OpenFOAM

【第2回OpenFOAM熱流体解析】snappyHexMeshでマネキン周りのメッシュ作成

こんにちは(@t_kun_kamakiri

本記事ではOpenFOAMを用いた熱流体解析の設定手順について解説を行います。
具体的には自然対流下でのマネキン周りの熱量を計算し、対流熱伝達と熱ふく射における影響度を調べることを目的とします。

今回はマネキン周りのメッシュ作成をsnappyHexMeshを用いて作成する方法を紹介します。

こんな人を対象
  • OpenFOAMを用いて流体解析を勉強している人
  • OpenFOAMで熱流体解析(ふく射込み)を試したい人

フォルダ構成は以下のようにしています。

まずはsnappyHexMeshでのメッシュ作成用のフォルダに移動します。

OpenFOAM v2412(WSL Ubuntu 22.04)

モデルのコピー

まずはモデルを一式コピーします。
※モデルは前回記事で作成しているテストケースを使用します。

作業はshmフォルダで行います。

FreeCADで外部領域のモデルを作成

FreeCADはこちらより最新版(2025/2/28時点 FreeCAD 1.0.0)をダウンロードします。

ダウンロードが終了したら早速モデルを作成していきます。
モデルの大きさは論文を参考に作成します。まずはFreeCADでBoxを作成します。
座標軸が論文と異なるので注意が必要です。

Boxの位置がおかしいのでPlacementで、論文で示されている位置と同じになるようにだいたいの位置で合わせます。

OpenFOAMは境界条件の際に境界面に名前を付けておく必要があるため、以下のように面を分割して名前を付けます。

では外部領域の出力を行います。
作成した面を一括でstlとして出力するマクロは以下の記事に解説とプログラムがありますので、ご活用ください。
作成したのはFreeCAD 0.20.2でしたがFreeCAD 1.0.0内臓のPythonプログラムは無事動くようです。

👇こんな感じで分割した面を一括でまとめて出力できるので便利です。

出力した外部領域モデルとマネキンモデルを合わせてParaViewで確認しておきます。

サイズ感などは問題なさそうですね。

メッシュ作成

snappyHexMeshとsurfaceMeshExtractの設定用のファイルがないので適当なチュートリアルからコピーしてきます。
ついでにmeshQualityDictもコピーしています(snappyHexMeshで設定されているため)。

$FOAM_TUTORIALS=/usr/lib/openfoam/openfoam2412/tutorials/

snappyHexMeshで設定するモデルはconstant/triSurfaceフォルダに保存しておく必要があります。

blockMeshでベースメッシュ作成

snappyHexMeshを用いたメッシュ作成にはベースメッシュが必要です。
そのベースメッシュはblockMeshで行います。

snappyHexMeshは以下の図の流れでメッシュ作成を行っています。blockMeshは外部モデル領域を覆うように少し大きめ(+0.02m)で設定します。

blockMeshDict

以下のコマンドでメッシュ作成を行います。

できたメッシュをParaViewで確認しておきます。

ベースメッシュとして問題がないか確認します。

surfaceMeshExtractで特徴線の作成

まずはsurfaceMeshExtractを用いて特徴線を作成します。

surfaceMeshExtractDict

以下のコマンドを実行するとconstant/triSurfaceフォルダにmodel.eMeshが作成されます。

vm_sitaf.eMeshはsnappyHexMeshでの特徴線まわりのメッシュ再分割に使用します。

※.eMeshはParaViewでは読み込めないため.obj形式に変換するとParaViewで表示することができます。変換のコマンドは以下です。

snappyHexMeshでメッシュ作成

続いてsnappyHexMeshの設定を行います。

snappyHexMeshDict

注意すべき点はlocationInMesh (1.5 1 1); がちゃんと作成したいメッシュ領域にあるかどうか確認してください。これはどの閉じた領域のメッシュを作成するかを指定するものです。
例えば、ParaViewで表示して間違いがないかを確認しています。

snappyHexMeshを実行します。
実行の際は-overwriteオプションを付けています。

snappyHexMeshはメッシュを3段階に分けてメッシュ作成していますが、このオプションを付けない場合は途中経過も保存されていきます。途中経過は不要なときは、このオプションを付けておくと上書き保存でメッシュ作成されていきます。

では、ParaViewでメッシュ状態を確認してみましょう。

snappyHexMeshはメッシュ再分割(細分割)した部分の境界層がうまく入らないことがありますが、ひとまずメッシュ作成は完了とします。

まとめ

本記事ではOpenFOAMを用いた熱流体解析の準備としてマネキンモデルまわりのメッシュ作成を行いました。今回はOpenCFD版のsnappyHexMeshを使用していますが、次回紹介するcfMeshの方が境界層がきれいに入ったりします。

次回は、cfMeshを用いたメッシュ作成を行います。

計算力学技術者のための問題アプリ

計算力学技術者熱流体2級、1級対策アプリをリリースしました。

  • 下記をクリックしてホームページでダウンロードできます。
  • LINE公式に登録すると無料で問題の一部を閲覧できます
    ※LINEの仕様で数式がずれていますが、アプリでは問題ありません。

OpenFOAMに関する技術書を販売中!

OpenFOAMを自宅で学べるシリーズを販売中です。
OpenFOAM初学者から中級者向けの技術書となっていますので、ぜひよろしくお願いいたします。

次回の技術書典18に向けて内容を考え中です。
乞うご期待!!

見出し画像

お勧めの参考書

本記事の内容について触れている書籍がこちらです。
CFD(流体解析)のガイドブックというタイトルだけあって、熱流体に関する内容は網羅的に書かれています。

はじめての環境・設備設計シミュレーション CFDガイドブック

はじめての環境・設備設計シミュレーション CFDガイドブック

4,180円(02/28 12:15時点)
Amazonの情報を掲載しています

乱流モデルの数式の展開が非常に丁寧なのはこちらの参考書です。
今まで読んだ本の中で途中式もしっかり書いてあって一番丁寧でした。
乱流モデルの話だけでなく、混相流(気液、固液)や粒子法、浅水方程式の話も乗っているので重宝しています。

流れの方程式

流れの方程式

後藤仁志
9,900円(02/28 11:12時点)
Amazonの情報を掲載しています

乱流モデルはこちらもお勧めです。
前半は数値シミュレーションの離散化の話で、後半に乱流モデルの話が出てきます。

乱流の数値シミュレーション 改訂版

乱流の数値シミュレーション 改訂版

梶島 岳夫
6,890円(02/28 21:53時点)
Amazonの情報を掲載しています

乱流モデルのざっくりした解説と流体全般の基礎知識にはこちらがちょうど良いでしょう。

関連記事もどうぞ

COMMENT