書評:「Elmer」ではじめる連成解析


Elmerとは?

オープンソースのマルチフィジックス用シミュレーションソフトです。主な開発元はフィンランドの非営利の国営企業であるCSC ( IT Center for Science Ltd. ) です。詳しいことは本に丁寧に書いてあります。

購入した理由

構造流体連成解析に興味がありました。これまで自分は、CAEにはSalomeMeca(Salome & Code_Aster)、CFDにはOpenFOAMを使ってきました。これまでの調査結果からSalomeMecaかOpenFOAMのどちらかを起点にして構造流体連成解析をするのが良いだろうと思っていました。詳しい感想を下に記載します。

1.
SalomeMecaにはCode_Saturneという単相流のCFDのモジュールが同梱されていて、どうやらSalomeMecaだけで構造流体連成解析ができそうです。しかし、情報が少なく特に日本語の情報が皆無のようです。

2.
OpenFOAMのフォーク版であるextend版には構造流体連成解析の機能があり、日本でもやっている人が少数ながらいらっしゃいます。しかし、extend版の設定ファイルの文法は本家版と異なり、自分はかなりの躊躇を感じました。OpenFOAMを殆ど独学で習得したのを再び繰り返すような予感がしたためです。

3.
DAKOTAという複数のソフトを連携させるオープンソースの最適化ソフトがあり、日本での使用例もあります。しかし、連携させるにはDAKOTA本体の設定方法だけでなく、連携相手のソフトを外部からコマンド制御する方法も覚えないとDAKOTA用のスクリプトが書けないため、自分はかなりの躊躇を感じました、というか、断念しました。数年前のオープンCAE学会主催による夏合宿の内容がDAKOTAのハンズオン講習会だったので参加したのですが、そのときの感想です。

4.
Elmerというマルチフィジックスのオープンソースのシミュレーションソフトがあり、CAEとして使っている人は日本にもいる。構造流体連成解析も簡単にできるらしいですが、情報が乏しい。

このような状況のときに、 「Elmer」ではじめる連成解析 という本が発売されました。
すぐに買って、今年の冬休み期間中に本の例題の計算をしました。

本の感想

この本に記載されている例題の順番の通りに作業をしていけば、構造流体連成解析ができてしまいました。自分にとっては非常に有益な本です。一通り操作してソフトのGUIが分かりやすいと思ったので、これからは頑張って膨大なページ数の英文マニュアルを読んでいきます。英文マニュアルのライセンスはCC-BY-NDですから和訳を勝手に公開してはいけません。(ライセンスがCC-BY-NCのマニュアルも一部にあります。)

この本の内容は、CAEだけの定常計算と非定計算ののち、CFDだけの定常計算と非定常計算、そのあとに構造流体連成解析の定常計算と非定常計算です。構造解析の固有値計算と熱流体解析の非定常計算の例題も含まれています。

唯一の難点

CFDの非定常計算の例題は円柱カルマン渦のシミュレーションです。応用練習で主流速度を変えたり粘性係数を変えるのですが、実際の現象ではカルマン渦が発生するのにも関わらず、この本では「カルマン渦は発生しなくなる」と記載されています。これはタイムステップが不適切なのが原因です。流体力学を知っていればカルマン渦が発生しないことに違和感を持ち、CFDの経験があるとタイムステップの設定が不適切だと気が付くだろうと思います。しかし、もしかすると、この本の読者の中に全くの初心者がいらっしゃるかもしれないという可能性を危惧し、注意喚起のために敢えて記載させていただきました。この本を批判する意図は全くありません、上記のように自分にとっては非常に有益な本です。

タイムステップを適切な値にしてカルマン渦の再現ができている計算結果を以下に記載します。

Re=500 (本の通りの設定での計算結果)
Re=500(適切な設定での計算結果)

ストローハル数が概ね一定なので、カルマン渦の発生周期は主流の速度に反比例します。
応用練習では主流速度を5倍にするので、カルマン渦の発生を捉えるためにタイムステップを5分の1にして計算した結果です。


数値粘性ではないか?という御指摘がありましたので、以下を2021/01/06 に追記しました。

この本の応用練習には、さらに粘性係数を5倍にしてRe数を100に戻した計算もあります。

Re=100 (本の通りの設定での計算結果)

以下の場合だけはアニメーションGifファイルの容量が大きくなってアップロードが出来なかったため、静止画です。タイプ条件と比べて主流速度が5倍になっているので、カルマン渦の発生を捉えるためにタイムステップを5分の1にして計算した結果です。

Re=500(適切な設定での計算結果)

したがって、御指摘のように数値粘性による“なまり”ではなく、カルマン渦のような非定常な現象を捉えるにはその周期よりもタイムステップを短くする必要があることを示していると考えます。この本での非定常計算の時間スキームの指定は2次のBDF(後退微分法)です。陰解法はタイムステップを大きくしても数値計算の安定性が保たれる便利なスキームですが、このような “落とし穴” があります。



不適切なタイムステップの件は、2021年1月4日に、いくつか見つけた誤植とともに出版元に連絡しておきました。