PreCICE vs TreeFoam連成ツール

表記タイトルにて、オープンCAE勉強会@岐阜(2023/7/29)、@大阪(2023/8/5)で発表した。発表資料をいつものslideshareにおいて公開しようとしたが、アニーメーションを多用しており、pdf資料にしてしまうとその部分の違いが全くわからない。そこで、Webブラウジングできるように編集し直して、本ページにて公開することとした。

Table of Contents

背景

preCICE ⇒ TreeFoam連成 ケースセットアップ

時間制御は、preCICEの場合、preCICE本体、流体計算(OpenFOAM)ケース、固体計算(CalculiX)ケースの各々で時間進行を定義するが、TreeFoam連成の場合、流体計算(OpenFOAM)ケースの定義がに応じて、固体計算(FrontISTR)ケースを自動進行してくれる。

dexcsチュートリアルにて動作確認

preCICE(OF / CalculiX)

ExecutionTime = 50.15 s ClockTime = 72 s

TreeFoam(OF / FrontISTR)

ExecutionTime = 54.83 s ClockTime = 282 s

preCICEで適用困難であった課題

複雑流れ場で幾何学的変形の大きな問題例

pimpleFoam

rhoPimpleFoam

interFoam

TreeFoam連成でやってみた

pimpleFoam

rhoPimpleFoam

interFoam

(考察)時間進行とデータマッピング

TreeFoam連成にとっては残念な結果となったが、時間進行を同一条件で計算しており、データマッピングを逐次的なやり方しかできないTreeFoam連成に比べて、preCICEは多様な手法があり、本例では陰解法として、dt時間変形後形状データを使って、界面Forceと変形量が収束するまで流れ場計算をやり直しているので、ある意味当然の結果であった。

CalculiXシェルの問題

本モデルは血流をイメージした簡易モデルで、preCICEの標準チュートリアルもあり、DEXCSチュートリアルではメッシュも自在に変更できるようになっている。固体部分は通常、テトラ二次要素で作成しており、シェル要素で作成することもできたが、やってみたところ、計算時間は却って長くなってしまった。

CalculiXの場合のシェル要素というのは、内部的には3次元のエッジ要素として計算されているのが原因であることが判っていた。これをFrontISTRの一般的なシェル要素で計算できれば・・・という目論見があった。

 

(前段)3D_Tube(テトラ二次要素)の結果比較

preCICE(OF / CalculiX)

ExecutionTime =411.96 s
ClockTime = 678 s
変形量は10倍表示

TreeFoam(OF / FrontISTR)

ExecutionTime =42.77 s
ClockTime = 206 s
変形量は10倍表示

TreeFoam(OF / FrontISTR)

同左
変形量は100000倍表示

これも、計算時間刻みは同一で実施しており、preCICEで計算時間がかかっているのは、陰解法による繰り返し計算が多いからで、特に計算初期段階における圧力上昇による流入を壁の膨張で吸収するメカニズムを計算できるかどうかにかかっており、逐次的なやり方ではできないということであった。

自然対流

上の図は、半球状の密閉空間内に高温物体が置かれた場合の自然対流を、OpenFOAMの標準ソルバーの一つであるchtMultiRegionFoamを使って計算したものである。2つの物体は異なる物性値として設定してあってそれなりの計算ができているが、これらの構成が異なる系の問題をセットアップするのにはかなり面倒な手続きが必要になるのと、並列計算の性能面で不安があった。

これを熱連成計算する方法によれば、上述の問題が緩和れるのでないかという期待があり、熱交換器など強制対流の問題では、いくつかの計算例も存在するが、自然対流問題では例が無かった。

preCICEでやってみた

*Density 1053
*Conductivity 0.467
*Specific heat 3412

*Density 1053
*Conductivity 237
*Specific heat 3412

TreeFoam連成ツールでやってみた

*Density 1053
*Conductivity 0.467
*Specific heat 3412

*Density 1053
*Conductivity 237
*Specific heat 3412

TreeFoam連成では、熱伝導率が大きい固体でも発散ということになならないが、自然対流場としては不自然な結果と言わざるを得ない。

preCICEでの陰解法が却って状況を悪化させていたようだ。

薄壁の熱連成問題

熱連成問題として、先の自然対流に加えて、最終的にやりたかったのは、上図のように、自然対流を想定した薄壁ケース内部に対して、外部で強制加熱(または冷却)した場合の薄壁内の熱伝導も連成して計算したいというものであった。

上図は、実際に計算できた一例で、

  • 全高2000mmに対し、壁厚20mm
  • Density 2680
  • Conductivity 0.000137
  • Specific heat 0.9

で計算しているが、目標スペック

  • 全高2000mmに対し、壁厚5mm
  • Conductivity 200

には程遠いものがある。

これについても、TreeFoam連成ツールでやってみたいが、自然対流問題が解決できた後の課題としている。

なお、TreeFoam連成ツールを使うとした場合、上図の例では流体領域が2つに区分されることになるが、同一のソルバーを使う限りにおいて、形式的に1つのケースファイルとして適用は出来そうな見込みである。

低ヤング率固体における問題

変動圧力分布

連成境界面の圧力変動

固体モデル/メッシュ

preCICE(OF/CalculiX) ヤング率 30,000 Pa

変形量は x 100 表示

preCICE(OF/CalculiX) ヤング率 3,000 Pa

変形量は x 10 表示

mapping:nearest-projection 

mapping:rbf-volume-spline 

TreeFoam(OF/FrontISTR) ヤング率 30,000 Pa

変形量は x 100 表示

TreeFoam(OF/FrontISTR) ヤング率 3,000 Pa

変形量は x 100 表示

(考察)マッピング方法/対象

まとめ

  • これまで作成したpreCICE連成ケースをTreeFoam連成ケースに変更して動かしてみた(流体ケースはほとんど同一、固体ケースはメッシュが同一)。
  • preCICEの連成ケースをTreeFoam連成ケースに変更するのは容易であった(但し2領域モデル)。
  • CHT連成ケース
    • 自然対流を計算するのは、どちらも困難
    • preCICEでの時間進行法に改善の余地があるかもしれない
  • FSI連成ケース
    • preCICE(CalculiX)の低ヤング率での課題はTreeFoam(FrontISTR)では生じていない。
    • preCICEでは、CalculiXアダプターで面圧力を取り扱えるようにするか、FrontISTRアダプターの開発が必要

CalculiXアダプターについて補足

  • 標準チュートリアルで、面圧力を取り扱ったものは無い

  • CalculiXアダプターそのものには、Pressureを処理するブロックが存在

  • OpenFOAMのFSI用アダプターがForceしか無い
  • OpenFOAMのFF用アダプターにはPressureを処理するブロックが存在
Share

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください