DEXCSランチャー(FreeCADマクロ版)v202006

ダウンロードはこちらから



DEXCSランチャーとは

OpenFOAMを使った仮想風洞試験を、ボタンを順番に押していくだけで、誰でも簡単に実行できるようにすべく、pythonで作成したGUIツールで、DEXCS2019からは、FreeCADのマクロとして実装するようになった。

DEXCSランチャーはこれまで、DEXCS for OpenFOAMというisoイメージ中に同梱される形でしか配付していなかった。これはpythonのソースコードを配付したとしても、DEXCS以外の環境で使用する為には、様々なカスタマイズが必要になって、一般ユーザーが独自でカスタマイズできるようにするには、相当な困難があった為である。

DEXCS2019からはランチャーをFreeCADマクロとして実装した事を契機として、DEXCS2020ではこれらのマクロを、同梱したDEXCS以外の環境でも使えるようにすることを目指して取組中であるが、このたびプロトタイプ版としてDEXCS2019に搭載したマクロをベースに、DEXCS21019とそれ以外のDEXCS(DECS2015以降、DEXCS2018はFreeCADの更新も必要)でも使えるランチャーが出来たので、ここに公開することにした。

また、DEXCSで構築したシステムでなくとも、TreeFoamが動く環境であれば、若干のファイル追加で動作するはずなので、その要件と追加方法についても記しておく。この部分も、DEXCS2020以降では、configDexcsの設定だけで対応可能にしていく予定である。

更新方法

同梱のconfigDexcsというファイルが、以下のようになっている。

# cfMesh がインストールされたOpenFOAM環境
#for DEXCS-2019
    cfMesh     /opt/OpenFOAM/OpenFOAM-v1906
# for DEXCS-2018 ( not available)
#     cfMesh     /opt/OpenFOAM/OpenFOAM-v1806
# for DEXCS-2017
#     cfMesh /opt/OpenFOAM/OpenFOAM-4.x
# for DEXCS-2016
#     cfMesh     /opt/OpenFOAM/OpenFOAM-4.x
# for DEXCS-2015
#     cfMesh     /opt/OpenFOAM/OpenFOAM-2.4.x
# for DEXCS-2014
#     cfMesh     /opt/OpenFOAM/OpenFOAM-2.3.x

#configTreeFoam のインストール場所
    TreeFoam ~/.TreeFoamUser

#dexcs のインストール場所
# for DEXCS-2017 〜
    dexcs     /opt/DEXCS
# for 〜 DEXCS-2016
#    dexcs     ~/Desktop/DEXCS

DEXCS2019で更新する場合はこのままで良いが、それ以外のDEXCSでマクロを使いたい場合には、chMeshがインストールされたOpenFOAM環境と、dexcsのインストール場所を該当のものに変更する(行頭に#の有る行は有効にならないので、有効にしたい行だけ#を外す)。

同梱の updateDexcsLauncher.sh を端末上で実行する。その際、既存のuser.cfgを上書きするかどうかの質問があるので、

$ ./updateDexcsLauncher.sh
DEXCS Launcher update
Overwrite your FreeCAD SettingFile(user.cfg)? (Y/N)

上書きして良ければ「Y」を入力してアップデートは完了。

上書きの可否は、インストール先のFreeCADの利用環境で自身でカスタマイズしたマクロやツールバーの有無次第で判断されたい。上書きしてしまうと、それらの情報が無くなってしまうということである。「N」を入力した場合には、マクロファイルがアップデートされるだけなので、ツールボタンを自身で作り直す作業が必要になる。

なお、上書きした場合でも、元の user.cfg ファイルは、user.cfr.<user>.orig という名前で残すようにしてあるので復元は可能。またテキストファイルなので、内容を理解した上での新旧ファイル間での組み合わせ改変は可能です。

注意事項

  • DEXCS2015では、xfce4-terminal の追加インストールが必要になります。

$ sudo apt install xfce4-terminal

  • DEXCS2018ではFreeCADのAppImage版がインストールされている為動作不可、FreeCADをパッケージ版、もしくはビルド版に変更する必要があります。DEXCS上で上記FreeCADをインストールするには、この記事を参照下さい。

user.cfgを上書きしないで、作り直す方法

DEXCS2017へインストールした例で説明する。FreeCADを起動して、「ツール」メニューから「カスタマイズ」を選択すると以下の画面になる。

ここでマクロ欄右端の▼(上図赤印)をクリックすると、マクロ一覧が現れるので、登録したいマクロを選択し、メニューテキストなど空欄に説明事項を印しておく。ピクセルマップの「…」ボタンを押すと、以下の画面が現れてアイコンを選択できるようになる。何を選んでも良いが、

その際に、「アイコンフォルダー…」のボタンを押して、

「+」ボタンを押して、TreeFoamのアイコンフォルダ(/opt/TreeFoam/icons)を追加しておく。そうすると、TreeFoamのアイコンを登録できるようになる。

空欄を埋めて、アイコンが決まったら、「追加」ボタンを押してひとつのマクロの登録が完了である。

登録が必要なマクロは以下の通りである。

マクロファイル名メニューテキストツールチップ等アイコン
runTreefoam.pytreefoamtreefoam を起動します
runGridEditor.pygridEditorgridEditorの起動
runParaview.pyrunParaviewparaFoamの起動
runClearCase.pyrunClearCase計算結果を削除して、caseを初期化します
runJgp.pyrunJGPlotjgpファイルの適合
checkCaseFileName.pycheckCase解析ケースファイルの確認
runCheckMesh.pycheckMeshcheckMeshを実行する
solverSet.pysolverSet新規にcaseを作成、又はsolverやmeshを入れ替え
editConstantFolder.pyeditConstantFolderPropertiesの編集
editSystemFolder.pyeditSystemFolderDict(system)の編集
runSolver.pyrunSolversolverを起動
runPlotWatcher.pyrunPlotWatcherplotWatcherの起動
runParallel.pyrunParallel並列処理

登録が終わったら、次にツールバーへの登録である。上記カスタマイズ画面において、「ツールバー」のタグ画面にて、左欄で「マクロ」、右欄で「全体」選択し、DEXCSツールバーを展開すると、下図の状態になる。

ここで、登録したマクロを左欄で選択し、中央の右矢印ボタンを押せば、右欄に追加されるので、新たに登録したもののうち、必要なものを右欄に移し、順序も好みで入れ替えて使ってもらえば良い。

DEXCS以外のプラットフォームで動作させる為の要件

  • cfMesh(cartesianMesh)がインストールされており、configDecs中に、これを起動する為の(ビルドした)OpenFOAMの環境情報が記してある事。

  • TreeFoamがインストールされており(+dexcsSwak版でなくとも可)、configDecs中に configTreeFoam のインストール場所が記されている事。但し、ヴァージョン2系のみ。ヴァージョン3系では一部のマクロが動作しない(ので現在製作中)。
  • FreeCADのVerは0.16以上で、AppImage版でない事
  • configDecs中にdexcs指定フォルダを定義しておき、指定したフォルダ下にSWAKというフォルダとtemplateというフォルダを作成。SWAKフォルダ下にpyDexcsSwak.py という空ファイルを作成。templateフォルダ下には、dexcsという名前でOpenFOAMのケースフォルダを収納しておく。ケースフォルダの中身は、ケースファイルとして有効な内容であれば何でも良いが、FreeCADモデルがOpenFOAMのケースフォルダでない場所でメッシュ作成する際の雛形フォルダとして使われることになる。

Share

コメントする

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

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