2019年 これからの人向け 超速習!
流体解析ツールボックス
OpenFOAM
第71回オープンCAE勉強会@関西
mmer547
自己紹介
mmer547
オープンCAE勉強会@関西
CAEは10年ほど
以前は受託解析、システム開発系の会社で構造解析、設計者向けGUIを
開発
現在はメーカーで流体解析に従事
オープンCAEシンポジウム実行委員長 ←New
Note.muやQiitaで記事投稿中
はじめに
OpenFOAMについて概要を知るための発表です
以下の観点でOpenFOAMを使っていくための情報をお伝えします
OpenFOAMについて - 概要
はじめるために - 準備
計算の仕方 - 操作
勉強の仕方 - 学習
OpenFOAMについて
4
OpenFOAMについて
無償・オープンソース(GPL)のCFDツールボックス
250ものアプリケーションと100を超えるソフトウェア
企業や学術・研究機関で使用されています
OpenFOAMは二つのバージョンがあります
5
http://www.openfoam.com/
http://openfoam.org/
OpenFOAMについて
 OpenFOAM年表
•10/12/2004 - OpenCFD release OpenFOAM 1.0
•12/01/2005 - OpenCFD release OpenFOAM 1.0.2
•11/03/2005 - OpenCFD release OpenFOAM 1.1
•22/08/2005 - OpenCFD release OpenFOAM 1.2
•01/02/2006 - OpenCFD release OpenFOAM 13alpha
•29/03/2006 - OpenCFD release OpenFOAM 1.3
•10/01/2007 - OpenCFD secure the OpenFOAM trademark
•12/01/2007 - OpenCFD release OpenFOAM 1.4alpha
•11/04/2007 - OpenCFD release OpenFOAM 1.4
•03/08/2007 - OpenCFD release OpenFOAM 1.4.1
•16/05/2008 - OpenCFD release OpenFOAM 1.5beta
•14/07/2008 - OpenCFD release OpenFOAM 1.5
•28/07/2009 - OpenCFD release OpenFOAM 1.6
•25/06/2010 - OpenCFD release OpenFOAM 1.7.0
•26/08/2010 - OpenCFD release OpenFOAM 1.7.1
•16/06/2011 - OpenCFD release OpenFOAM 2.0.0
•04/08/2011 - OpenCFD release OpenFOAM 2.0.1
•08/2011 - OpenCFD acquired by Silicon Graphics International (SGI)
- OpenCFD and SGI create the OpenFOAM Foundation, based in the USA
•19/12/2011 - OpenCFD release OpenFOAM 2.1.0 via OpenFOAM Foundation
•31/05/2012 - OpenCFD release OpenFOAM 2.1.1 via OpenFOAM Foundation
•08/2012 — OpenCFD transfer copyright of its development and bug-
fix repositories to OpenFOAM Foundation
•12/09/2012 - ESI Group representatives replace SGI as board members of the
OpenFOAM Foundation
- OpenCFD acquired by Engineering Systems International (ESI) Group
•02/2013 — OpenCFD transfer copyright of its development repository to
OpenFOAM Foundation leading to the 2.2.0 release
•06/03/2013 - OpenCFD release OpenFOAM 2.2.0 via OpenFOAM Foundation
•06/2013 — OpenCFD transfer copyright of its bug-fix repository to OpenFOAM
Foundation leading to the 2.2.1 release
•11/07/2013 - OpenCFD release OpenFOAM 2.2.1 via OpenFOAM Foundation
•10/2013 — OpenCFD transfer copyright of its bug-fix repository to OpenFOAM
Foundation leading to the 2.2.2 release
•14/10/2013 - OpenCFD release release OpenFOAM 2.2.2 via OpenFOAM
Foundation
•01/2014 — OpenCFD transfer copyright of its development repository to
OpenFOAM Foundation leading to the 2.3.0 release
•17/02/2014 - OpenCFD release OpenFOAM 2.3.0 via OpenFOAM Foundation
•25/04/2014 - OpenFOAM Foundation Ltd incorporated in the UK, with ESI Group
board representation
•11/2014 — OpenCFD transfer copyright of its bug-fix repository to OpenFOAM
Foundation Ltd leading to the 2.3.1 release
•10/12/2014 - OpenFOAM Foundation Ltd release OpenFOAM 2.3.1
•03/2015 — OpenCFD transfer copyright of its development repository to
OpenFOAM Foundation Ltd
•04/2015 — OpenCFD transfer copyright of new twoPhaseEulerFoam mass
transfer and reactions functionality to OpenFOAM Foundation Ltd
•22/05/2015 - OpenFOAM Foundation Ltd release OpenFOAM 2.4.0
•05/2015 — OpenCFD transfer copyright of its bug-fix patches for 2.3.x to
OpenFOAM Foundation Ltd
•22/09/2015 - OpenCFD publish its development line as the OpenFOAM-
history repository
•09/2015 — OpenCFD transfer copyright of its development repository to
OpenFOAM Foundation Ltd
•14/10/2015 - OpenCFD release OpenFOAM for Windows 2.4.0
•03/11/2015 - OpenFOAM Foundation Ltd release OpenFOAM 3.0.0
•20/11/2015 - OpenCFD release OpenFOAM for Windows 3.0.0
•15/12/2015 - OpenFOAM Foundation Ltd release OpenFOAM 3.0.1
•13/01/2016 - OpenCFD release OpenFOAM v3.0+ for Linux, Mac and Windows
•30/06/2016 - OpenCFD release OpenFOAM v1606+ for Linux, Mac and Windows
•23/12/2016 - OpenCFD release OpenFOAM v1612+ for Linux, Mac and Windows
•30/06/2017 - OpenCFD release OpenFOAM v1706 for Linux, Mac and Windows
•31/12/2017 - OpenCFD release OpenFOAM v1712 for Linux, Mac and Windows
•29/06/2018 - OpenCFD release OpenFOAM v1806 for Linux, Mac and Windows
•20/12/2018 - OpenCFD release OpenFOAM v1812 for Linux, Mac and Windows
開発プロセス
https://www.openfoam.com/history/より引用
OpenFOAMについて
8
プリプロセス
• メッシング
• プリユーティリティ
ポストプロセス
• Paraview
• ポストユーティリ
ティ
ソルバー
• 標準ソルバー
• カスタマイズ
OpenFOAMについて
標準ソルバーで計算できる範囲
9
非圧縮性
定常・非定常
乱流解析
圧縮性
定常・非定常
乱流解析
流体ー個体
伝熱解析
混相流解析
(VOF・キャビ
テーション)
燃焼解析
遷音速
超音速
圧縮性流体
OpenFOAMについて
[長所]
 ユーザーによるコミュニティが発展しているため
使用者同士での情報提供や助言等の恩恵が受けられます。
[短所]
 マニュアルはありますが、
公式のサポートはありません。
 設定する数値などの目安は自分たちで
考える必要があります。
 (デフォルト値はありません)
 操作はCUI(コマンドベース)です。
ex. メッシュ作成 → blockMesh
計算実行 → foamJob or simpleFoam
はじめるために
OpenFOAMをはじめるために
OpenFOAM
での計算
計算用
PC
インストール 使い方
課題
OpenFOAMを使うためには?
Linuxでソースコードをコンパイルするストロングスタイル
➢ 最も基本のスタイル
➢ サポート外のLinuxだと地獄が待っているかもしれない
Windows限定WSLを使うスタイル
➢ Windows10上でLinuxを使うことができる機能
➢ 最近はスタンダードになりつつある
公式のDockerスタイル(Mac、Linux、Windows)
➢ 使ってる人見たことない
伝統的な仮想マシンスタイル
➢ VirtualBoxやVMWareを使ってPC上に仮想のマシンを構築する
•DEXCS
•CAE Linux
➢ 使い捨て出来るがマシンの能力をフルに使えない
何はともあれPC
計算用のマシンが必要!
大学、企業なら数値計算用のワークステーションやブレードサーバ
➢ https://www.dell.com/ja-
jp/work/shop/%E3%83%A2%E3%83%90%E3%82%A4%E3%83%AB-
%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97%E3%83%A
F%E3%83%BC%E3%82%AF%E3%82%B9%E3%83%86%E3%83%BC%E3%82%B7%E3%83%
A7%E3%83%B3/sf/precision-desktops
➢ https://www.hpc.co.jp/aboutHPC.html
趣味ならゲーミングPCがベター
➢ CPU、GPUともにハイスペックでメモリも多い
OpenFOAMはCPUとメモリが重要
➢ CPUの数で
GPUは可視化の時に使う
スパコン
産業利用ならFOCUS
➢ 産業利用向けの公的スーパーコンピュータ
➢ 公益財団法人 計算科学振興財団
➢ https://www.j-focus.or.jp/focus/
アカデミックなら大学関係のスパコン
➢ 東京大学
➢ https://www.cc.u-tokyo.ac.jp/supercomputer/
➢ 九州大学
➢ https://www.cc.kyushu-u.ac.jp/scp/system/new-system.html
➢ 名古屋大学
➢ http://www.icts.nagoya-u.ac.jp/ja/sc/
➢ 京都大学
➢ http://www.iimc.kyoto-u.ac.jp/ja/services/comp/
クラウドサービス
最近はクラウドで計算を流す方法も豊富(AWS、Azureなど)
もっと簡単にOpenFOAMを実行する
Rescale
➢ 企業、大学、個人でも契約可能
➢ サーバーの準備もブラウザ上でクリックして決めていく
➢ 従量課金、デポジットの両方が使用可能
➢ https://www.rescale.com/jp/
計算の仕方
解析フロー
一般的な解析のフローを示します
本講習ではこのフローに従って作業をしていきます
18
計算の
仕様を考える
形状作成 メッシュ作成
条件設定計算実行ポスト処理
計算の仕様を考える
どんな計算をするか
どのような形か
何の物性を使うのか
どこに、どの条件を設定するのか
どれを結果として得るのか
形状作成
大体のモノの形状は複雑
3DCADを使って形状を作る
オープンソースのCADソフトだと
「FreeCAD」
OpenFOAMではSTLファイルを使う
メッシュ作成
blockMesh - ブロック形状の組み合わせで形を作る
snappyHexMesh ー 形状を定義したSTLファイルにスナップさせて作る
条件設定
条件はテキストに書き込む
計算実行
OpenFOAMだと計算実行はコマンド入力
1. 直接計算ソルバの名前を打ち込む
➢ イメージしやすいやり方
➢ 計算実行中のログは画面に表示されるだ
けで残らない
2. foamJobコマンドを使う
➢ マニュアル記載の計算実行方法
➢ 計算ログはファイルに書き出される
3. 計算実行用スクリプトAllrunを実行する
➢ 基本的に自分で用意する
➢ チュートリアルの問題に入っている
➢ マスターすると処理を自動化できる
$ icoFoam
$ foamJob
$ ./Allrun
ポスト処理
ParaVIewを使って可視化
コマンドベースで結果を出力するユーティリティもある
➢ y+、トルク、任意面の流量など
勉強の仕方
マニュアル
ユーザーマニュアルが公開されている
ESI版
➢ https://www.openfoam.com/documentation/user-guide/
➢ https://www.openfoam.com/documentation/tutorial-guide/
Foundation版
➢ https://cfd.direct/openfoam/user-guide/
どちらも機能を完全に網羅しているわけではない
➢ 後述のチュートリアルを避けて通れない
書籍
日本語の書籍は二つ
OpenFOAMによる熱移動と流れの数値解析
➢ いわゆるペンギン本
➢ 広くOpenFOAMの基本について
OpenFOAMプログラミング
➢ OpenFOAMのコードの中身について解説した本
➢ 非常な有用な情報が書かれているが、バージョンは5年ほど
前のバージョン
➢ バージョンの差について呑み込めるようになってから読んだ
方が無難
➢ 最近のバージョンでは本に書いているコードはコンパイルで
きない
同人誌
OpenFOAMの歩き方(合本版)v1812対応版
手前味噌ですみません
日本語の商業誌の前に読む本として書いた本
OpenFOAMを使っている人がどうやってインプッ
トを用意しているか思考に沿って解説
Boothで販売中(2,500円)
https://hammamania.booth.pm/items/1148469
環境構築、チュートリアルの実行、自分で用意し
た形状で計算、応用範囲のそる場の使い方、ネタ
探しなど
チュートリアルケース
OpenFOAMのインストールフォルダに入っているチュートリアル問題
真のマニュアル
読むためにはOpenFOAMのインプット構成が分かっていないとつらい
XSim
Web上でOpenFOAMのイン
プットを作れるサービス
現時点で無料
形状を定義するファイルのサ
イズは5MBまで
TwitterIDでログインすれば
データを5個まで残せる
画面上で条件を設定して、イ
ンプットをダウンロードすると
OpenFOAMを実行する直前の
データになっている
コミュニティ
オープンCAE学会
➢ 年2回、6月総会と12月シンポジウムで講習会を開催
➢ シンポジウムでは講演会があり、ユーザーの使用事例などが聞ける
➢ シンポジウムは今年関西開催
勉強会
➢ 日本の各地で行われているユーザー同士の勉強会
➢ 東京、大阪、岐阜、富山などで開催
➢ 直接質問することができる
Google Group
➢ 日本語のユーザー掲示板
➢ 質問をすれば、回答が来るかも
➢ 質問の前にこちらをお読みください。
➢ OpenFOAM Google Groupに投稿する際に抑えるポイント
➢ https://qiita.com/mmer547/items/7c7c257dcaf2efbc730b
まとめ
まとめ
OpenFOAMはオープンソースのソフトで誰でも使用してよい
OpenFOAMはサポートがあるわけではないので、マニュアル、書籍、コ
ミュニティを活用して学習する必要がある
OpenFOAMは商用コードと逆で、学習コスト>>>ライセンス料という
難解なコードであるが、それを補うほどの恩恵がある
最近は先人の残した遺産がたくさんあるのでコツさえつかめば何とかな
るオープンソースCAEコードになった
ぜひ、学会や勉強会に行っていろんな情報を集めるようにしてください
良いOpenFOAMライフを!!!

2019年 これからの人向け 超速習!流体解析ツールボックスOpenFOAM