CfdOF on DEXCS2025 updated

はじめに

今年もそろそろDEXCS for OpenFOAM(DEXCS-OF)の更新を考える時期となってきているが、CfdOFの方も日々更新が進んでいるようである。ほぼ1年前の記事にも記したように、その完成度次第によっては、CfdOFをDEXCSランチャーとしての搭載もあり得る、また継続してハックするにしても、最新情報(テクニック)があれば、それらも取り入れたいと思っている。

そこで改めて最新CfdOFを評価してみたところ、やはりそれなりの進展ともに、これまで気づかなかった有用性も確認されたたので、本記事に取り纏めることとした。ただし記事全体のボリュームを考えて、先の記事に対して全体目次は同様にしつつ、追加や変更項目だけを中心に記すことにした。

Table of Contents

評価方法

読者が簡単にトレースできるように、新たにDEXCS2025 for OpenFOAMの仮想環境を作成して、その上に諸々更新して先の記事で実施したのと同等の作業を実施した。更新内容は以下の通り。

				
					sudo apt update
sudo apt upgrade -y
				
			

また、FreeCADも更新されていた(Ver1.1)ので、せっかくなのでこれを使うことにした。別途ダウンロードしたAppImageファイル(FreeCAD_1.1.0-Linux-x86_64-py311.AppImage)を収納したフォルダーにて、

				
					sudo cp FreeCAD_1.1.0-Linux-x86_64-py311.AppImage /opt/
cd /opt/
sudo chmod +x FreeCAD_1.1.0-Linux-x86_64-py311.AppImage
sudo rm freecad 
sudo ln -s FreeCAD_1.1.0-Linux-x86_64-py311.AppImage freecad

				
			

なおこの新しいバージョンFreeCADを起動すると、以下のダイヤログが現れる。

何やらよくわからなかったが、「設定をコピー(推奨)」を選択した。後で調べてわかったのは、FreeCADの諸々設定ファイルは、ホームフォルダ下の.local/share.FreeCADフォルダと、.config/FreeCADフォルダに収納されているが、今回からはそれらの下にバージョン名フォルダ(v1-1)を作成して、その中に収納するようにし、バージョンによって異なる設定ファイルを使うことができるということのようだ。

なおDEXCSワークベンチは新バージョンのFreeCADではエラーとなって動かない、というかDEXCSワークベンチが起動メニューに出て来ない(下図)。

エラーメッセージに従ってソースコードの何箇所かPySide2をPySideに変更すればエラーは出ず使えるようになったが、実際に動かそうとするとエラーが出たりして、詳細は未調査。ただ今回のCfdOFの動作検証には関係無いので、今後の課題としておく。

CfdOF更新方法

今回はFreeCADのワークベンチの標準的な作法に則った(下図)。

❶「Addon Managerの表示位置が変わっていたくらいで」取り立てて問題は無かった。

CfdOFの環境設定

DEXCS-OFに同梱したFreeCAD/Cfd-OFでは、そのままOpenFOAMやParaViewを使えるようになっているが、cfMeshとHISAというソルバーはインストールして使う必要があり、その方法は先の記事と全く同じで良かった。

出力ディレクトリ

デフォルトの出力ディレクトリが/tmp となっている。しかし、マウスカーソルを当てて表示される吹き出し❷をよく読むと、「現在のディレクトリを使用する場合は”.”を入力し…とあったので、❸.(ピリオド)に変更した。

なお、この設定は、CfdOFの従前のバージョンでも使えていたようだが見落としていた。

同梱Demosの実行方法

CfdOFの同梱Demosの推奨実行方法は、基本的に先の記事に示した通りであるが、前項「出力ディレクトリ」の設定によりOutputPathを都度指定する必要は無くなった。

Demosの概要と実行結果

デモケースは全部で11と、昨年より3つ増えている。新しく追加されたケースにつき、概要(モデル外観、解析コンテナ一覧、解析内容)と、メッシュ・計算時間情報、計算結果(残渣グラフやParaView可視化図)など掲載しておく。

使用した計算環境は、

  • CPU:インテル® Core™ i9-14900K(P-8コア|3.2GHz / E-16コア 2.4GH)
  • メモリ:128GB
  • OS:ubuntu24.04

上に構築したDEXCS2025公開版を使ったVMplayer(右記スペックの)仮想マシンにて実行した。

Propeller

一様流中で回転するプロペラ。プロペラの形状は至ってシンプルで。従前のバージョンでは出来なかった機能(snappyHexMesh⇒マルチリージョンメッシュ作成)の簡単デモンストレーションということか。

但し、デフォルトのパラメタそのままだと、何を計算しているんだかよく判らなかったので、パラメータを少し変更した(下図参照)。

Npoints Ncells ExeTime ClockTime
131,598
105.292
52.38
53

Meanvelocityforce_cellZone

立方体ブロック中に各々方向と風速の異なる3つのファンブロックが存在することによる複雑な流れを計算している。ファンブロックは従前バージョンにはなかったツールボタン(下図参照)

で、風速や風向を設定する。

また、乱流モデルは DES/kOmegaSSTIDDES となっており、あまり馴染みのないもので、浅学にて、これを題材に勉強できると思っておこう。

Npoints Ncells ExeTime ClockTime
104,257
589,250
1,200.68
1,204

Periodic_boundary_meanvelocityforce

従前から存在したチュートリアルケースのViscousTubeBundleにおいて、流れの主要部だけに着目して周期境界条件で計算したもの(多分)。

周期境界条件のメニューは従来からあったと思うが、具体的な使用方法と、ケース名にあるmeanvelocityforce(前項でも使っている)として、こういう使い方もできる、…というデモンストレーションか。

Npoints Ncells ExeTime ClockTime
12,494
60,217
52.38
25.23

CfdOF新旧ソースコード比較

 

本稿の執筆時点における最新版(v1.34.12)は4月3日にアップデートされていた。そこで、DEXCS-OFに同梱のkdiff3を使って、最新版(v1.34.12)ソースコードと、DEXCS2025に同梱されたもの(v1.31.4)について調べた結果を掲載しておく。

ただし、kdiff3はデフォルト設定のままだと、ほとんど全てのファイルで「変更有り」と認識されてしまう。これはソースコード中のコメント文がほとんどのファイルで一新されているからであった。そこで上の図は、Kdiff3に係る別記事で記した方法を使って、正味の変更部分だけを抽出したものである。⇒それにしても、やはり多くのコンテンツに手が加えられていることが判った。

最新版の評価結果

何はともあれ、メニューが日本語化されているところが何とも嬉しい(これは昨年の評価でも記した)。加えて、snappyHexMeshでマルチリージョンメッシュを作成できるようになったのが嬉しい。

とはいえ、メッシュ細分化メニュー上で、「Moving mesh region」というアイテムが追加されたということで、cfMeeshの場合は、この部分が見え消し状態になって使えない、という代物。

これをCHTケース作成に転用できるかどうかは、要調査となろう。

Demosケースについて

ケースの数が3つ増え、動作することも確認できた。いずれもCfdOFの機能向上に伴うデモンストレーション的な内容であった。

 

Dexcs標準チュートリアル問題について

基本的に先の記事に示した通りの方法で実行することが出来た。

ただし、CfdOFにおいてはメッシュ作成用に、流体部分だけの閉じた領域モデルを再構築する必要があったが、FreeCADのバージョン更新に伴ってそのやり方によっては、少々変なメッシュが出来てしまう等の問題が生じたこともあった。

諸々調査の結果、対策方法は見つかっており、本記事中で詳細手順は説明しないが、DEXCS2026の構想案の中で取りまとめていく予定である。

まとめ

  • DEXCS2025において、FreeCAD最新版(ver 1.1)とCfdOFの最新版(V1.34.12)に更新する方法について取り纏めた。
  • この1年間で追加された3つのDemosケースにつき、概要(解析内容、モデル、解析コンテナ、計算結果など)を取り纏めた。
  • CfdOFをDEXCS標準ツールとして採用に向けてのゴールが更に一歩近づいた感はあるが、まだいくつか注文点がある(昨年の評価記事でも記した)。
    • GUIで設定できない項目が多くある。これを「編集」⇒ファイルマネージャーを使ってパラメタ変更するのは、初心者向けに難度大。
    • 上記でパラメタ変更した結果を再利用する仕組みが欲しい。
    • これらの課題をDEXCSツールバー(TreeFoamのサブセット)を使って解消できないだろうか?⇒DEXCS2026?

今後

  • FreeCAD最新版(ver 1.1)上で、DEXCSワークベンチは正しく動作しないので、その対応策作成。
  • DEXCS2026構想
    • CfdOFハック版の試み(CfdOFからTreeFoamのサブセット起動など)
    • DEXCSワークベンチとCfdOFハック版の簡単切り替えシステム
Facebook
X
LinkedIn

コメントする

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

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

上部へスクロール