olaFlow 環境構築

olaflow(旧olaFoam)は、波のシミュレーションに特化した数値モデルで、OpenFOAM向けに開発されています。沿岸、海洋、水力、およびオフショアエンジニアリングの分野で、水中構造物と波の相互作用をシミュレートすることができます。

この記事では、olaFlowの環境構築について説明していきます。

1.olaFlowリポジトリのダウンロード

Ubuntuを起動し、保存したいディレクトリへ作成、移動します。

mkdir ディレクトリ名
cd ディレクトリ名

ダウンロードするときにディレクトリが作成されるので、作成しなくても大丈夫です。

準備ができたらリポジトリのダウンロードをします。

Ubuntuで下記を入力して実行

git clone git://github.com/phicau/olaFlow.git

うまくいかない場合は下記を試してみてください。

git clone https://github.com/phicau/olaFlow.git

git clone http://github.com/phicau/olaFlow.git

いろいろ試してみましたが、git clone git://github.com/phicau/olaFlow.gitはタイムアウトしてしまいうまくいかないので、今回はgit clone https://github.com/phicau/olaFlow.gitを使って進めています。

httpsとhttpは、どちらもダウンロードできます。どちらかというとhttpsの方がセキュリティ性が高いため、こだわりがない場合はhttpsを推奨します。

ダウンロードすると以下の画像のようになります。

ダウンロード下記のコードでチェックと更新をします。

git checkout
git pull

以上で、リポジトリのダウンロード完了です。

2. olaFlowをコンパイルする

olaFlowを使用するには、OpenFOAMを使用する必要があります。コンパイルもOpenFOAMから行う必要があります。ですが、最新バージョンのOpenFOAMではolaFlowとバージョンが合わないためを使用することができません(2024年6月時点)。OpenFOAMは定期的に更新があるのですが、olaFlowは2年以上更新がありません。olaFlowはOpenFOAMをもとに作成されているため、もとが変わってしまうと対応できないんではないかと思います。

olaFlowのGitHub(https://github.com/phicau/olaFlow)ページを見るとOpenFoamv2206なら対応しているみたいです。OpenFoamは2種類あるのですが、今回はスルーします。
早速、Openfoam2206をインストールして進めていきます。OpenFoamのインストール方法は別の投稿にまとめてあるので、そちらを参考にしてください。

olaFlowをコンパイルしていきます。まずはOpenFOAMv2206を起動します。

openfoam2206

OpenFOAMが起動したら、olaFlowのディレクトリへ移動。

cd olaFlow
ls

allMakeでolaFlowをコンパイルします。

./allMake

これでコンパイル完了です。セッティングは以上になります。

参考にまでにv2312のエラーを添付しておきます。

3. 例題

olaFlowを実際に使ってみます。

まずは、フォルダの作成します。
計算を実行するフォルダを作成します。最終的にparaviewで計算結果を表示するので、Windows版を使っている場合はCドライブのどこかにフォルダを作るといいと思います。
今回は、わかりやすさ重視でCドライブのすぐ下に作りました。

olaFlowはダウンロードしたデータの中にチュートリアル用のデータが入っています。これを使ってolaFlowの動作確認をします。
チュートリアルデータは「olaFlow」→「tutorials」に入っています。今回は「baseWaveFlume」を使用します。データは普通のコピペでコピーできます。

先ほど作成したフォルダにチュートリアルデータのコピーします。

ディレクトリを移動してデータを確認します。画像の確認方法とコードが少し違いますが同じ意味なので気にしないでください。

cd /mnt/c/olaFlow/baseWaveFlume
ls

ディレクトリにデータが確認出来たらOKです。

計算を実行します。

./runCase

数十分かかります。早めに終わらせたい場合は下記の項目を調整するといいと思います。

baseWaveFlume→system
・controlDict

endTimeを変更して抽出時間を短くしましょう。初期設定は60秒です。writeIntervalを変更して書き込みの頻度を下げるのも有効です。

計算結果をparaviewで可視化します。paraviewのインストール方法や可視化方法は別記事を参照してください。

paraviewで可視化すると下記の画像のようになります。静止画なのでわかり辛いですが、波のアニメーションが表示されます。

以上になります。

コメント