FreeCAD × OpenFOAMで本格CFD解析!オープンソースの流体シミュレーションワークベンチ「CfdOF」

タグ CfdOFOpenFOAMFreeCADCFD解析流体シミュレーションオープンソースGUIcolumnコラムlinuxLinuxwindowsWindowsGitHubjaheyns

FreeCAD × OpenFOAMで本格CFD解析!オープンソースの流体シミュレーションワークベンチ「CfdOF」

ひとことでいうと

CfdOFは、無料の3D CADソフト「FreeCAD」に追加できる流体シミュレーション専用の拡張機能です。画面を見ながらマウス操作で設定でき、難しいコマンド入力なしに本格的な流体解析を実行できます。バックエンド(裏側で動く処理エンジン)には業界標準の「OpenFOAM」を使っているため、商用ソフトに匹敵する計算精度を完全無料で実現しています。設計エンジニアや研究者、CFDを学びたい学生まで、幅広い方が活用できるツールです。

こんな人におすすめ

シーン1:設計コストを下げたいエンジニア

ANSYS FluentやSTAR-CCM+などの商用CFDソフトは、ライセンス費用が高額になりがちです。CfdOFを使えば、揚力・抗力・圧力分布・熱流体解析といった実務レベルの計算を、ライセンスコストゼロで実施できます。機械・航空・土木系の設計業務にそのまま役立ちます。

シーン2:CFDを学びたい学生・研究者

大学や研究機関でOpenFOAMを使いたくても、テキストファイルを手で編集する作業に戸惑うことがあります。CfdOFのGUI(グラフィカルユーザーインターフェース=画面を見ながら操作できる形式)を使えば、ジオメトリ(形状データ)の読み込みから境界条件の設定まで、画面上のフォームに値を入力するだけで進められます。実務に近いワークフローをそのまま学習できます。

シーン3:FreeCADで設計してそのまま解析したい方

FreeCADで作った3Dモデルを、別のソフトに移し替えることなく流体解析にかけられます。アドオンマネージャーからワンクリックでインストールでき、既存のCAD作業環境にスムーズに統合できます。付属のデモケースを順番に試すだけで、解析の流れを自然に学べます。

インストール・使い方

Step 1:FreeCADをインストールする

Linuxの場合(AppImage形式が安定して動きやすいため推奨):

chmod +x FreeCAD_*.AppImage
./FreeCAD_*.AppImage

chmod +x はファイルに「実行してよい」という許可を与えるコマンドです。ダウンロードしたファイルに実行権限を付けてから起動します。コマンドはターミナル(文字で命令を送る画面)にコピー&ペーストするだけで大丈夫です。

Windowsの場合:公式サイト(freecad.org)からインストーラをダウンロードして実行します。64ビット版が必要です。


Step 2:CfdOFをインストールする(アドオンマネージャー経由)

  1. FreeCADを起動します
  2. メニューの「Tools → Addon manager」を開きます
  3. 一覧から「CfdOF」を探し、「Install/update」をクリックします
  4. インストール後、FreeCADを再起動します

アドオンマネージャーとは、FreeCADに機能を追加する公式の仕組みです。ここからCfdOFを選ぶだけで、必要なファイルが自動的にインストールされます。


Step 3:OpenFOAMをインストールする

Linux(Ubuntu/Debian系)の場合

sudo sh -c "wget -O - https://dl.openfoam.org/gpg.key | apt-key add -"
sudo add-apt-repository http://dl.openfoam.org/ubuntu
sudo apt-get update
sudo apt-get install openfoam12

上記をターミナルにコピー&ペーストして実行します。sudo は管理者権限でコマンドを実行するという意味です。パスワードを求められた場合は、パソコンのログインパスワードを入力してください。

DockerまたはPodmanを使う方法(Windows・Linux共通)

FreeCADの「Edit → Preferences → CfdOF」設定画面で「Use docker」を選択し、「Install Docker Container」ボタンを押します。OpenFOAM・cfMesh・HiSAがすべて含まれたDockerイメージ(必要なソフトを丸ごと詰め込んだ仮想環境)を一括導入できます。WindowsではPodmanが推奨されており、WSL(Windows上でLinuxを動かす仕組み)と組み合わせることでパフォーマンスが向上します。


Step 4:依存関係を確認する

FreeCAD上で「CfdOF → Open preferences」を開き、「Check dependencies」を実行します。必要なソフトが正しくインストールされているか自動チェックされ、問題があれば画面に表示されます。ここで全項目がOKになれば、実際の解析作業に進む準備が整っています。


Step 5:デモケースで動作確認する

CfdOFのインストールフォルダ内にある Demos フォルダに、.FCMacro という拡張子のサンプルファイルが番号順に入っています。これを順番に実行するだけで、ケース設定の流れをステップバイステップで体験できます。最初の1本を動かすことで、解析の全体像をつかむことができます。

動かしてみた

実際にリポジトリの中身を確認したところ、ファイル構成が非常に整理された設計になっていることがわかりました。

Gui/ ディレクトリ以下には、FreeCADの画面と連携するUIパネルのファイル(.ui 形式)が多数含まれています。TaskPanelCfdMesh.ui(メッシュ設定パネル)、TaskPanelPhysics.ui(物理設定パネル)、TaskPanelCfdFluidBoundary.ui(境界条件設定パネル)のように、各設定画面ごとにファイルが分かれており、機能を追加・変更しやすい構造になっています。

また Translations/ フォルダには日本語・ドイツ語・中国語繁体字・スペイン語・アラビア語・ポーランド語の翻訳ファイル(.qm / .ts)が揃っており、国際的なユーザーコミュニティへの配慮がしっかりされています。日本語環境でも自然に使えるよう整備されている点は、日本のユーザーにとって心強いポイントです。

なお、CfdOFはFreeCADとOpenFOAMがあってはじめて動くGUIアドオンです。単体でのコマンドライン実行は想定されていないため、最初にFreeCADの環境を整えてから使い始めることが大切です。

ブラウザで試す

CfdOFはFreeCAD+OpenFOAMという大きなGUI環境が必要なため、フルの流体解析をブラウザ上で実行することはできません。ただし、解析を始める前の下準備として重要な流体パラメータ計算(Reynolds数・ベルヌーイ方程式・境界層厚さなど)を、ブラウザから手軽に試せるデモツールがあります。ソルバー選択やメッシュ設定の参考値を確認するのに役立てられます。

実践のコツ:解析をスムーズに進めるために

  • Reynolds数(Re)で流れの性質を先に確認する:Re<2300なら層流(おだやかな流れ)、Re>4000なら乱流(乱れた流れ)が目安です。この判断でソルバーの選び方が変わります。

    Re = (密度 × 流速 × 代表長さ) ÷ 動粘性係数
    
    Re < 2300  → 層流(Laminar): simpleFoamの層流設定が適切
    2300〜4000 → 遷移流(Transitional): 解釈に注意
    Re > 4000  → 乱流(Turbulent): k-εやk-ω SSTなどの乱流モデルを選択
  • Physicsパネルで乱流モデルを選ぶだけでOK:CfdOFの「Physics」パネルでk-ω SSTなどを選択すると、OpenFOAMの設定ファイルが自動で生成されます。手動でファイルを編集する必要はありません。

  • まずデモケースを1本動かしてみるDemos フォルダのサンプルを最初に実行すると、ジオメトリ読み込み→メッシュ生成→計算→結果確認という流れをひと通り体験できます。

  • 「Check dependencies」を必ず実行する:インストール後はこのチェックを必ず通してから解析を始めると、環境の不備を早めに発見できます。

  • メッシュ手法は目的に合わせて選ぶ:複雑な形状にはsnappyHexMesh、比較的シンプルな形状にはcfMeshが扱いやすい傾向があります。四面体メッシュが必要なときはGmshも選べます。

  • ParaViewで結果を可視化する:計算が終わったら、ParaViewというソフトで圧力分布・速度ベクトル・温度分布などをカラーマップで確認できます。数字の羅列が視覚的な「絵」に変わる瞬間は、解析の醍醐味のひとつです。

活用アイデア

  • ドローン・UAVの機体抵抗最適化:機体周りの空気の流れをsnappyHexMeshでメッシュ化し、simpleFoam+k-ω SST乱流モデルで抗力係数を算出できます。設計段階での形状比較に活用できます。

  • 建物・橋梁周辺の風環境評価:大気境界層プロファイルを入口境界条件として設定し、高層建築や橋梁周辺の風圧分布を可視化できます。構造設計や歩行者快適性の評価に役立ちます。

  • 熱交換器・冷却システムの設計支援buoyantSimpleFoamを使った自然対流・強制対流の温度分布シミュレーションで、冷却フィン形状の最適化や熱スポットの検出が行えます。

  • 海洋工学・船舶設計interFoamによる波浪荷重計算や自由表面流れの解析で、船体形状の抵抗評価が可能です。

  • マクロスクリプトによるパラメトリック解析.FCMacro形式でケース設定をコード化すると、複数の形状や条件を自動的に連続して解析するパラメトリックスタディを実施できます。

  • 超音速・遷音速の高速流体解析:HiSAソルバーを使えば、航空機エンジン周りや超音速域の流れも扱えます。高速圧縮性流れの研究にも対応できます。

用語とポイント解説

CFD(シーエフディー)

Computational Fluid Dynamics(計算流体力学)の略称です。コンピュータの数値計算によって、空気や水などの流体の動きを再現する技術のことです。かんたんに言うと、実際に風洞実験をしなくても、パソコンの中で「流れ」をシミュレーションできる方法です。設計の初期段階でコストをかけずに流体性能を確認できます。

OpenFOAM(オープンフォーム)

オープンソース(無料で公開されているプログラム)のCFDソルバー群です。CfdOFのバックエンド、つまり実際の計算を担当する部分として使われています。かんたんに言うと、CfdOFがフロントにある「操作パネル」なら、OpenFOAMは裏で動く「計算エンジン」です。世界中の研究機関や企業でも広く使われている実績があります。

メッシュ(格子)

解析対象の空間を、小さなセル(格子状のマス目)に細かく分割したものです。計算はこのセルひとつひとつに対して行われます。かんたんに言うと、複雑な形状を細かいタイルで埋め尽くすようなイメージです。メッシュを細かくするほど精度は上がりますが、計算時間も増えるというトレードオフがあります。

simpleFoam(シンプルフォーム)

時間変化しない定常状態の非圧縮性流れ(液体や低速の気体)を解くソルバーです。計算が比較的軽く、収束(計算が安定して答えに近づくこと)しやすい特徴があります。かんたんに言うと、「流れが安定している状態」を素早く計算したいときに選ぶエンジンです。

pimpleFoam(ピンプルフォーム)

時間とともに変化する非定常流れを解くソルバーです。渦の発生・消滅や、時間変化する力の解析に使います。かんたんに言うと、simpleFoamが「写真1枚を撮る」なら、pimpleFoamは「動画を撮る」ようなイメージです。計算コストはsimpleFoamより大きくなります。

snappyHexMesh(スナッピーヘックスメッシュ)

OpenFOAMに付属している、六面体ベースのメッシュ生成ツールです。複雑な3D形状でも、形状に沿って自動的にメッシュを生成できます。かんたんに言うと、3D形状の表面にぴったり合うように格子を自動で調整してくれる道具です。

cfMesh(シーエフメッシュ)

カットセル法(形状を切り抜くようにセルを作る方法)でメッシュを生成するツールです。CfdOFはカスタマイズされたバージョンを使用しています。かんたんに言うと、形状を型紙のように使って格子を切り抜く道具です。比較的シンプルな形状を効率よくメッシュ化できます。

HiSA(ハイサ)

High Speed Aerodynamic Solverの略で、遷音速(音速付近)から超音速までの高速流体解析に特化したソルバーです。かんたんに言うと、音速前後の「とても速い流れ」を計算するための専用エンジンです。航空機や高速車両の解析で特に活躍します。

ParaView(パラビュー)

CFD解析の計算結果を画面上で可視化するためのソフトウェアです。圧力・速度・温度などの分布をカラーマップや矢印(ベクトル図)で表示できます。かんたんに言うと、数字の羅列である計算結果を「わかりやすい絵」に変換するツールです。オープンソースで無料利用できます。

RANS(ランス)

Reynolds-Averaged Navier-Stokes(レイノルズ平均ナビエ-ストークス方程式)の略称です。乱流の細かい変動を平均化して扱うことで、計算コストを抑えながら乱流効果を取り込むモデル手法です。かんたんに言うと、乱れた流れを「平均的な流れ+乱流の影響」として近似計算する手法です。実務では最もよく使われるアプローチです。

k-ω SST(ケーオメガエスエスティー)

境界層(物体表面近くの薄い流れの層)と物体から離れた自由流の両方で精度が高い、汎用性の高い乱流モデルです。航空宇宙・自動車・機械分野で広く採用されています。かんたんに言うと、「表面近くも遠い場所も、どちらもそこそこ正確に計算できる万能な乱流モデル」です。


CfdOFは、これまで高コストな商用ソフトが必要だった本格的な流体シミュレーションを、誰でも無料で始められる環境を提供してくれます。ぜひドローンや建築物の風環境評価、熱交換器の設計最適化などに活用してみてはいかがでしょうか。