OpenFOAM 開発環境の設定2018年7月25日 | |
はじめにOpenFOAM でソルバーやライブラリを開発するときに、同時に計算も実行していると、計算環境を変更してしまって (ソルバーやライブラリが置き換わったりして) ややこしいことになることがある。そういう事態を避けるには、以下の方法が考えられる。
アカウントを分けると作業しにくくなることがある。開発用の OpenFOAM 環境を作るには、OpenFOAM のコピーを作って名前を変えればよいのだが、オリジナルのコードを変更するつもりがないのなら、大げさな気がする。また、シェルの設定をひと工夫しないと計算作業と開発作業を並行しにくい。 ということで、OpenFOAM 開発環境の設定方法を考えてみた。 バージョンOpenFOAM v1712 開発環境の設定方針としては、オリジナルのコードのコピーは最小限にすること、計算作業と開発作業の切り替えを簡単に行えるようにすることである。ここでは、OpenFOAM v1712 が $HOME/OpenFOAM/OpenFOAM-v1712 にインストールされているものとする。開発用の環境を "OpenFOAM-v1712-dev" とする。簡単な方法は、OpenFOAM-v1712 を丸ごとコピーすることだが、ここでは etc だけコピーする。 $ mkdir ~/OpenFOAM/OpenFOAM-v1712-dev $ cd ~/OpenFOAM/OpenFOAM-v1712-dev $ cp -r ../OpenFOAM-v1712/etc . ~/OpenFOAM/OpenFOAM-v1712-dev/etc/bashrc を編集して、バージョン名を変える。 export WM_PROJECT_VERSION=v1712-dev etc 以外はリンクを作る。 $ ln -s ../OpenFOAM-v1712/applications $ ln -s ../OpenFOAM-v1712/bin $ ln -s ../OpenFOAM-v1712/build $ ln -s ../OpenFOAM-v1712/doc $ ln -s ../OpenFOAM-v1712/modules $ ln -s ../OpenFOAM-v1712/platforms $ ln -s ../OpenFOAM-v1712/src $ ln -s ../OpenFOAM-v1712/tutorials $ ln -s ../OpenFOAM-v1712/wmake ~/.bashrc には以下のように設定する。 alias of1712dev='. ~/OpenFOAM/OpenFOAM-v1712-dev/etc/bashrc' この設定で、"of1712dev" を実行すると開発環境に切り替わることになる。※.bashrc の設定によってはパスの設定に影響があるかもしれない。そのときはどうにかする。 $ . ~/.bashrc $ of1712dev $ echo $WM_PROJECT_VERSION v1712-dev おためし。 $ cp -r $FOAM_SOLVERS/incompressible/icoFoam . $ cd icoFoam Make/files を編集。 EXE = $(FOAM_USER_APPBIN)/icoFoam コンパイル。 $ wmake $ which icoFoam /home/xxx/OpenFOAM/OpenFOAM-v1712-dev/platforms/linux64GccDPInt32Opt/bin/icoFoam ソルバーは開発環境 (OpenFOAM-v1712-dev) のほうにできており、計算環境 (OpenFOAM-v1712) には影響しない。 | |
| PENGUINITIS | |