Windows(Windows 10 バージョン 2004 以降)では Windows Subsystem for Linux(以下 WSL)によって Linux 用のアプリケーションを実行することができます。ここではこの機能を利用して OpenFOAM の公式パッケージをインストールし、実行する方法を説明します。なお WSL には「WSL 1」と「WSL 2」の2種類がありますが今回は「WSL 2」を使用します。
また、ここではOpenFOAM バージョン12のインストールについて説明します。バージョン11をインストールしたい場合は「OpenFOAM 11 の Windows へのインストール」を参照してください。
デスクトップ下部の検索で「powershell」と検索し、PowerShell を管理者として実行します。
以下のコマンドを実行するとWSLの有効化がおこなわれ、Ubuntu のダウンロード、インストールが開始されます。
>wsl --install
ネット環境などにもよりますが、インストールには数分間かかります。
処理が正常に終わると「ディストリビューションが正常にインストールされました。'wsl.exe -d Ubuntu' を使用して起動できます」と表示されるので、以下のコマンドで Ubuntu を起動します。
>wsl -d Ubuntu
初回実行時のみセットアップ処理と、ユーザーアカウント作成処理が行われます。「Create a default Unix user account」と表示されたら適当なユーザー名、パスワードを入力してアカウントを作成します。以下の例ではユーザー名「MyName」としてアカウントを作成しています。パスワードは入力時には表示されないことに注意してください。
Provisioning the new WSL instance Ubuntu This might take a while... Create a default Unix user account: MyName New password: Retype new password: passwd: password updated successfully To run a command as administrator (user "root"), use "sudo". See "man sudo_root" for details. Welcome to Ubuntu 24.04.2 LTS (GNU/Linux 5.15.167.4-microsoft-standard-WSL2 x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/pro System information as of Tue May 13 10:53:11 JST 2025 System load: 0.0 Processes: 31 Usage of /: 0.1% of 1006.85GB Users logged in: 0 Memory usage: 5% IPv4 address for eth0: 172.29.150.85 Swap usage: 0% This message is shown once a day. To disable it please create the /home/MyName/.hushlogin file. MyName@MyMachine:~$
上記方法でインストールした場合には Ubuntu のバージョンが自動選択されます(通常は WSL が対応している最新バージョン)。Ubuntu 起動後にコマンド「lsb_release -a」を実行して Ubuntu のバージョンが OpenFOAM のサポートしているものであることを確認します。
$lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.2 LTS Release: 24.04 Codename: noble
以上で Ubuntu のインストールが終了しました。以降、適当なフォルダを開き、エクスプローラーのアドレス欄に「wsl」と入力してエンターキーを押すとそのフォルダを作業フォルダとして Ubuntu の端末が起動します。
注意:Linux ディストリビューションを複数インストールしている場合はコマンドプロンプトで「wsl --set-default Ubuntu」と実行してデフォルトのディストリビューションを変更しておきます(参照:「WSL の基本的なコマンド | Microsoft Learn」)。
以下のコマンドで 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 update $sudo apt -y install openfoam12
次に以下のコマンドでユーザー設定を行います。この設定はインストール後に1度だけ行います。
$echo "source /opt/openfoam12/etc/bashrc" >> $HOME/.bashrc $source $HOME/.bashrc
インストールが終わったら動作確認を行います。「foamRun -help」と入力して以下の様にヘルプが表示されれば OpenFOAM は正常にインストールされています。
$foamRun -help Usage: foamRun [OPTIONS] options: -casespecify alternate case directory, default is the cwd -fileHandler 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 Solver name -srcDoc display source code in browser -doc display application documentation in browser -help print the usage Using: OpenFOAM-12 (see https://openfoam.org) Build: 12-86e126a7bc4d
OpenFOAM のチュートリアルとして用意されている Pitz&Daily 問題を計算して OpenFOAM の動作を確認します。以下のコマンドを順次、実行します。
$cp -r $FOAM_TUTORIALS/incompressibleFluid/pitzDailySteady . $cd pitzDailySteady $blockMesh $foamRun $paraFoam
「paraFoam」コマンドで ParaView(paraFoam)が起動し、計算結果が読み込まれます。まずウィンドウ左側にある「Apply」ボタンをクリックします。
続いてツールバーにある「Time:」を「3」に変更します。
最後にツールバーにあるコンボボックスで変数として「U」(速度)を選択します。すると図の様に 3D ビューに速度の大きさがコンター表示されます。
これで Windows への OpenFOAM のインストール、動作確認が終了しました。次回以降は以下の手順で OpenFOAM を使用することができます。
OpenFOAM では同じメジャーバージョン(OpenFOAM 11, OpenFOAM 12 など...)中に、不具合の修正などでマイナーアップデートが行われることがあります。アップデートが存在するかどうかは「apt update」でパッケージ一覧を更新した後「sudo apt list --upgradable」で更新可能なパッケージを表示することで確認できます。
例えば以下のようにしてインストール済みの OpenFOAM のアップデートが存在するかを確認します。
$sudo apt update $sudo apt list --upgradable | grep "openfoam"
アップデートが存在する場合は以下のようにしてインストール済みの OpenFOAM のみを更新できます。
$sudo apt install --only-upgrade openfoam12
更新後に「foamRun -help」などで確認すると「Build: 12-86e126a7bc4d」といったようにメジャーバージョン以下のビルドバージョン文字列が変わります。
インストールした OpenFOAM をアンインストールする場合は WSL 上で以下の様にします。OpenFOAM バージョン11をアンインストールする場合は「openfoam12」の部分を「openfoam11」とします。
$sudo apt purge openfoam12
Ubuntu そのものを Windows からアンインストールする場合はインストール時と同様に PowerShell を管理者として実行し、以下のように「wsl --unregister (ディストリビューション名)」でアンイストールします。
wsl --unregister Ubuntu