↑ページトップへ

OpenFOAM の Windows へのインストール

OpenFOAM 11WSL 2Windows 11

Windows(Windows 10 バージョン 2004 以降)では Windows Subsystem for Linux(以下 WSL)によって Linux 用のアプリケーションを実行することができます。ここではこの機能を利用して OpenFOAM の公式パッケージをインストールし、実行する方法を説明します。なお WSL には「WSL 1」と「WSL 2」の2種類がありますが今回は「WSL 2」を使用します。

また、ここではOpenFOAM バージョン11のインストールについて説明します。バージョン10をインストールしたい場合は「OpenFOAM 10 の Windows へのインストール」を参照してください。

Windows Subsystem for Linux の有効化

デスクトップ左下の検索で「Windows の機能の有効化または無効化」と検索し、設定画面を開きます。

「Windows の機能の有効化または無効化」の検索
「Windows の機能の有効化または無効化」の検索

「Linux 用 Windows サブシステム」と「仮想マシンプラットフォーム」にチェックをいれてインストールを開始します。インストールが終了したら画面の指示に従ってマシンを再起動します。

Linux 用 Windows サブシステムの有効化
Linux 用 Windows サブシステムの有効化
仮想マシンプラットフォームの有効化
仮想マシンプラットフォームの有効化

再起動後、コマンドプロンプトで以下のコマンドを実行して WSL の設定を「WSL2」に変更し、WSLを最新状態に更新します。

>wsl --set-default-version 2
>wsl --update

以上で WSL の有効化は終わりです。

Ubuntu のインストール

次に Linux のディストリビューションの1つである Ubuntu をインストールします。

デスクトップ左下の検索で「Microsoft Store」と検索し、Microsoft Store を起動します。

「Microsoft Store」の検索
「Microsoft Store」の検索

Microsoft Store ウィンドウ上部の検索で「Ubuntu 22.04」と検索し、「Ubuntu 22.04.1 LTS」を開きます。

「Ubuntu」の検索
「Ubuntu 22.04」の検索

「インストール」を実行するとダウンロードが始まります。

Ubuntu のインストール
Ubuntu のインストール

インストール後、「開く」を実行すると WSL が起動します。

Ubuntu の起動
Ubuntu の起動

初回実行時のみインストール処理と、Unix ユーザーアカウントの作成が行われるので適当なユーザー名、パスワードでアカウントを作成します。以下の例ではユーザー名「MyName」としてアカウントを作成しています。パスワードは入力時には表示されないことに注意してください。

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: MyName
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.

Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.79.1-microsoft-standard-WSL2 x86_64)

	* Documentation:  https://help.ubuntu.com
	* Management:     https://landscape.canonical.com
	* Support:        https://ubuntu.com/advantage

This message is shown once a day. To disable it please create the
/home/MyName/.hushlogin file.
MyName@MyMachine:~$

以上で Ubuntu のインストールが終了しました。以降、適当なフォルダを開き、エクスプローラーのアドレス欄に「wsl」と入力してエンターキーを押すとそのフォルダを作業フォルダとして Ubuntu の端末が起動します。

注意:Linux ディストリビューションを複数インストールしている場合はコマンドプロンプトで「wsl --set-default Ubuntu-22.04」と実行してデフォルトのディストリビューションを変更しておきます(参照:「WSL の基本的なコマンド | Microsoft Docs」)。

エクスプローラーから Ubuntu の端末を起動
エクスプローラーから Ubuntu の端末を起動

OpenFOAM のインストール

以下のコマンドで OpenFOAM のバージョン11がインストールされます。

$sudo sh -c "wget -O - https://dl.openfoam.org/gpg.key > /etc/apt/trusted.gpg.d/openfoam.asc"
$sudo add-apt-repository http://dl.openfoam.org/ubuntu
$sudo apt-get update
$sudo apt-get -y install openfoam11

次に以下のコマンドでユーザー設定を行います。この設定はインストール後に1度だけ行います。

$echo "source /opt/openfoam11/etc/bashrc" >> $HOME/.bashrc
$source $HOME/.bashrc

インストールが終わったら動作確認を行います。「foamRun -help」と入力して以下の様にヘルプが表示されれば OpenFOAM は正常にインストールされています。

$foamRun -help

Usage: foamRun [OPTIONS]
options:
	-case <dir>       specify alternate case directory, default is the cwd
	-fileHandler <handler>
					override the fileHandler
	-hostRoots <((host1 dir1) .. (hostN dirN))>
					slave root directories (per host) for distributed running
	-libs '("lib1.so" ... "libN.so")'
					pre-load libraries
	-noFunctionObjects
					do not execute functionObjects
	-parallel         run in parallel
	-roots <(dir1 .. dirN)>
					slave root directories for distributed running
	-solver <name>    Solver name
	-srcDoc           display source code in browser
	-doc              display application documentation in browser
	-help             print the usage

Using: OpenFOAM-11 (see https://openfoam.org)
Build: 11-c219200fdb8b

※「foamRun」コマンドは OpenFOAM バージョン11で新しく追加されました。バージョン10以前では使用できないので代わりに「simpleFoam -help」として正常にインストールされてるかを確認します。

OpenFOAM 動作テスト

OpenFOAM のチュートリアルとして用意されている Pitz&Daily 問題を計算して OpenFOAM の動作を確認します。以下のコマンドを順次、実行します。

$cp -r $FOAM_TUTORIALS/incompressibleFluid/pitzDailySteady .
$cd pitzDaily
$blockMesh
$foamRun
$paraFoam

「paraFoam」コマンドで ParaView(paraFoam)が起動し、計算結果が読み込まれます。まずウィンドウ左側にある「Apply」ボタンをクリックします。

ParaFoam の起動
ParaFoam の起動

続いてツールバーにある「Time:」を「3」に変更します。

時刻の選択
時刻の選択

最後にツールバーにあるコンボボックスで変数として「U」(速度)を選択します。すると図の様に 3D ビューに速度の大きさがコンター表示されます。

変数の選択
変数の選択

これで Windows への OpenFOAM のインストール、動作確認が終了しました。次回以降は以下の手順で OpenFOAM を使用することができます。

  1. 作業に使いたいフォルダをエクスプローラーで開く
  2. エクスプローラーのアドレス欄で「wsl」コマンドを実行
  3. OpenFOAM の各コマンド(blockMesh、foamRun、paraFoamなど)を実行。

OpenFOAM のマイナーアップデート

OpenFOAM では同じメジャーバージョン(OpenFOAM 10, OpenFOAM 11 など...)中に、不具合の修正などでマイナーアップデートが行われることがあります。アップデートが存在するかどうかは「apt update」でパッケージ一覧を更新した後「sudo apt list --upgradable」で更新可能なパッケージを表示することで確認できます。

例えば以下のようにしてインストール済みの OpenFOAM のアップデートが存在するかを確認します。

$sudo apt update
$sudo apt list --upgradable | grep "openfoam"

アップデートが存在する場合は以下のようにしてインストール済みの OpenFOAM のみを更新できます。

$sudo apt install --only-upgrade openfoam11

更新後に「foamRun -help」などで確認すると「Build: 11-c219200fdb8b」といったようにメジャーバージョン以下のビルドバージョン文字列が変わります。

アンインストール

インストールした OpenFOAM をアンインストールする場合は WSL 上で以下の様にします。OpenFOAM バージョン10をアンインストールする場合は「openfoam11」の部分を「openfoam10」とします。

$sudo apt-get purge openfoam11

Ubuntu そのものを Windows からアンインストールする場合はデスクトップ左下の検索で「プログラムの追加と削除」と検索し、Ubuntu 22.04 LTS を検索してアンインストールします。

「プログラムの追加と削除」の検索
「プログラムの追加と削除」の検索
Ubuntu のアンインストール
Ubuntu のアンインストール

参照