今回の更新は、いつもの主要アプリの更新に加えて、同梱ドキュメント類の構成を、これまでとは大きく刷新した点にある。
DEXCS2024における同梱資料は、解説書「はじめてのDEXCS for OpenFOAM」の内容とほぼ同一になるよう構成した。解説書はDEXCS2023のコンテンツにで説明したものになっているが、解説書中のコンテンツを同梱のDEXCS2024のコンテンツで凡そ読み替えて解釈できるよう構成したつもりである。
つまり、同梱のハンズオン資料だけでわからない点は、解説書の説明で補完できるよう構成しているので、解説書も併せて参考にすれば理解を深めていただけるのではないか、ということである。
DEXCS2024における主要更新
- ベースOSはubuntu-24.04.1 (LTS)
- OpenFOAMやその他の組み込みツールのヴァージョンアップに対応
- OpenFOAM-v2406(パッケージインストール版)
- ParaView-5.13.0(バイナリー版)
- OpenFOAM 12 のバイナリ版と付属のparaview-5.11.2を同梱
- DEXCSワークベンチをFreeCAD-0.22rev版に対応
- DEXCSプロットTableツールの改良
- HelyX-OFの同梱を復活、併せてdexcs標準チュートリアルの実行手順のマニュアルも同梱、さらにsnappyHexMesh作成用のGUIツールとして活用する為のTipsも同梱
- DEXCSワークベンチのハック元であるCfdOFの最新版を同梱、併せてdexcs標準チュートリアルの実行手順のマニュアルも同梱
インストールと利用法
DEXCS for OpenFOAM はマシンイメージ(.iso)で配布されるので、DEXCS2021まではDVDにイメージ書き込みして、DVDから起動してそのまま利用することができました。しかし、DEXCS2024ではサイズが12.5GBとなっており、DVDには収納できないので、たとえばこちらの情報を参考にUSBメモリー にイメージ書き込みする方法がありますが、こうすると既存の計算環境(とくにハードディスク)に何ら手を加えることなくDEXCSの機能を試すことができるので、本当のDEXCS初体験の人はこの方法、もしくはハードディスクに余裕スペース(50GB以上)が有る場合は、仮想マシンプレーヤー(VirtualBox や、VMPlayer)をインストールして、配布されたisoイメージファイルを仮想光学ディスクとして「まずは使ってみる」方法(ライブモード)がお薦めです。
- ライブモードのユーザー名は、DEXCS2021までは、自動的にcustom とされていましたが、DEXCS2024では、ubuntuです。パスワードは不要。
- インストールモードでは起動後のインストール機能により、HDD等に直接インストールできる上、使用するユーザー名を任意に設定することができます。
- ライブモードであれ、インストールモードであれ、デスクトップ画面上にsetupDEXCS.shというファイルが残っていたら、DEXCSセットアップがまだ終わっていません。これを右クリックメニューから、「Run as a program」を選択すると画面が暗転し、ログインし直すことでDEXCSセットアップが完了、setupDEXCS.shというファイルも消失しているはずです。
- DEXCSはLinuxシステムですが、基本的にシングルユーザー(インストールしたユーザー)での利用を想定してDEXCSセットアッププログラム(setupDEXCS.sh)が同梱されています。複数ユーザーによる利用も可能ですが、その場合にはもう少し別にユーザー個別のシステムカスタマイズが必要になります。
- VMWare Playerや、VirtualBox等の仮想環境で起動して、仮想環境を作成することも簡単です。
- VirtualBoxにインストールする方法(インストール方法の16〜27ページ)は、書籍「OpenFOAMによる熱移動と流れの数値解析(第2版)」の付録A、または「オープンCAEのためのDEXCS for OpenFOAM ハンドブック」の付録AにDEXCS2020について、書籍「はじめてのDEXCS for OpenFOAM」の第10章にDEXCS2023についてもう少し詳しく記されており、基本は同じです。
- 但し、書籍「はじめてのDEXCS for OpenFOAM」では、VirtualBox7.の初期バージョンを使い、isoイメージ選択を仮想マシン作成の最初のステップで設定していますが、最新のVirtualBox7ではこの段階で指定するとフリーズしてしまうので要注意です。
- DEXCS2021までは、VirtualBoxのGuestAdditionがインストールされていましたが、DEXCSが2022以降ではインストールされておらず、インストール時の画面サイズが固定化され、VirtuaBox6.xでは必要な操作ボタンが使えないという問題があります。 VirtualBox7.0ではサイズが大きいので問題ありません。
- 共有ファイルの設定方法もDEXCS2021以前と比べて大きく変更になっています。VirtualBoxとVMPlayer用には、専用スクリプトを同梱してあるので、これを使えば良いのですが、間違えると(VirtualBox上で、VMPlayerのスクリプトを使うなど)、たいへんなことになるので気をつけて下さい。
- また、このスクリプトはインストールモードでのみ有効です。(ライブモードでは共有ファイルを使えません)
- 国際化対応のレベルはDEXCS2015に同じ(英語版のみに対応)で、日本語⇆英語のベース環境切り替え方法は、DEXCS2021に比べやや簡単になっています。
- とはいえ、GUIツールでの切り替えは、今ひとつまだるっこしいので、コマンドライン入力による切り替え方法も記してあります。
- FreeCADは、デフォルトではv-0.22revのAppImage版が起動しますが、Ubuntu標準インストールのStable版と、本リーリース直前に入手したAppImage版も同梱されており、切り替える方法についても記してあります。
- 本リリース時点でのStable版にはSTLエクスポートに関するバグ(たとえばこちらの記事)があり、DEXCSワークベンチのプラットフォームとして推奨できませんが、更新された場合にはその限りでありません。
- AppImage最新版は、バージョン1.1.0devとなっておりFreeCADも、いよいよメジャーバージョンアップが予想されます。
- ParaViewと純正paraFoamとの違いから、純正paraFoamを使ってDEXCS十徳ナイフメニューの「blockMeshDictを表示」する方法とその際の注意点について記してあります。
- DEXCS2017まで同梱していたSLURMを、DEXCS2023より復活させました。
- DEXCS2023では、複数ジョブ投入時の動に異常がありましたが、DEXCS2024では解消できているはずです。
- OpenFOAM 12 も同梱されているので、DEXCSランチャーやTreeFoamでこれをベースとして使うことも使用可能になっていますが、その為に必要な設定変更項目も記してあります。
- HelyX-OFをSHM(snappyHexMesh)を作成する為のGUIツールとして活用することは十分可能ですが、並列計算したケースのメッシュデータを回収する為のスクリプト変更方法について記してあります。
同梱プログラム
- OpenFOAM-v2406(https://www.openfoam.com/news/main-news/openfoam-v2406)
- paraview-5.13.0-RC2 / 5.11.2 ( http://www.paraview.org/ )
- PyFoam-2023.7 ( https://pypi.org/project/PyFoam/)
- cfMesh-v1.1.2(http://www.c-fields.com/)
- Emacs 29.3(https://www.gnu.org/software/emacs/)
- gnuplot-6.0(http://www.gnuplot.info)
- FreeCAD-0.22rev(https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds)
- kdiff3-1.10.6(https://apps.kde.org/kdiff3/)
- TreeFoam_3.25-240805+dexcsSwak-240920(http://opencae.gifu-nct.ac.jp/pukiwiki/index.php?AboutTreeFoam)
- Helyx-OS(https://engys.com/products/helyx-os)
- JGP(https://java-gnuplot-gui.soft112.com/#google_vignette)
- VirtualBox Guest Additions-7.1.0
- 同梱してあるというだけで、インストールはユーザーが実施することになります
- FireFoxは、ubuntuの標準Webブラウザで、ubuntuでは22.04より標準ではsnapパッケージとしてインストールされていましたが、DEXCS2022以降ではこれを廃して、改めてdebパッケージとしてインストールし直してあります(マニュアル等のファイルブラウジングの問題があった為)。
- DEXCSオリジナルツールとして
DEXCSランチャー(dexcs.py)国際化対応版⇒FreeCADのマクロボタン化しました。(DEXCS2021~)⇒FreeCADの凖ワークベンチ化しました(DEXCS2023〜)- DEXCS十徳ナイフ(dexcsSWAK.py)。これをTreeFoamのメニューから呼び出せるようにしました(pyDexcsSWAK.py)。
- cfMesh用簡単設定ツール(makeCfMeshSetting.FCMacro)(https://ocse2.com/?p=1851)
- 上記を改良し、メッシュ作成・確認まで出来るようにしました。
- DEXCSワークベンチ。FreeCADのワークベンチモジュールであるCfdOFをフレームワークにして、上記ツールのエンジン部分を使えるように移植することで、機能拡張が可能になりました。⇒製作メモ、GitHub
- CfdOFそのものも使えるようになっています。
- JAVA gnuplot GUIのプロジェクトファイルの適合ツール⇒DEXCS2021、DEXCS2022では搭載中止していましたが、DEXCS2023から復活
- ⇒ 替わって、FreeCADのPlotワークベンチ+DEXCSオリジナルマクロ(dexcsPlotTool_gui.py +dexcsPlotTable.py(3D物理シミュレーションで実践できる 多パラメータ最適化の新手法 Kindle版の著者WTさんの作です))
- ソースコード検索ツール(dexcsTextSearcher.py) ( https://ocse2.com/xoops/modules/wordpress/index.php?p=413 )
- 以下は、同梱してあるというだけで、今やほとんど使用する事のない化石のようなものです。
- snappyHexMeshDict簡易エディタ(snappyDictExporter.py)改良版 ( https://ocse2.com/?p=806)
- 境界条件名の一括変更ツール(bcFilesConverter.py) ( https://ocse2.com/xoops/modules/wordpress/index.php?p=348 )
- 時刻歴データのプロットツール(timeLinePlotter.py) ( https://ocse2.com/xoops/modules/wordpress/index.php?p=390 1DE
製作方法メモ
製作に着手したのが、2024/7/10で、約3ヶ月を要したが、今回はubuntuのメジャーバージョンアップに伴って、苦心譚が多く有った。今後のことも考え、できるだけ記録に残すようにした⇒製作方法メモ