本文描述在Windows 10操作系统下安装OpenFOAM及配置相关使用环境的完整过程。
注:本文图片及文字较多,建议收藏以便需要时查阅。
”
注:WSL的安装取自微软官方文档https://docs.microsoft.com/zh-cn/windows/wsl/。
”
注:WSL2要求内部版本号1836.1049 或18363.1049 ,版本低了只能安装WSL1。建议使用Windows 10专业版。家庭版或企业版有些版本并不能安装WSL。后面Linux子系统的安装对Windows版本也有要求,如Ubuntu 20.04要求Win10版本16237.0以上。
”
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
如下图所示。
执行完毕后输入“Y”,计算机会自动重启。
若本机能够打开Microsoft Store,则可以在Mircrosoft Store中搜索Ubuntu
,如下图所示,可以选择Ubuntu 18.04或Ubuntu 20.04。
如下图所示打开Ubuntu 20.04 LTS,点击按钮获取即可自动下载并安装Ubuntu 20.04 LTS。
注:Ubuntu 20.04 LTS是2020年推出的版本,若思想比较保守,也可以选用Ubuntu 18.04 LTS。
”
安装完毕后可以点击按钮启动
打开Ubuntu。
此时可以跳转到1.5
节对Ubuntu系统进行设置。
若本机上无法打开Microsoft Store,则可以采用下载子系统手动安装的方式。
[Ubuntu 18.04](https://aka.ms/wsl-ubuntu-1804)
[Ubuntu 18.04 ARM](https://aka.ms/wsl-ubuntu-1804-arm)
[Ubuntu 16.04](https://aka.ms/wsl-ubuntu-1604)
[Debian GNU/Linux](https://aka.ms/wsl-debian-gnulinux)
[Kali Linux](https://aka.ms/wsl-kali-linux-new)
[OpenSUSE Leap 42](https://aka.ms/wsl-opensuse-42)
[SUSE Linux Enterprise Server 12](https://aka.ms/wsl-sles-12)
[Fedora Remix for WSL](https://github.com/WhitewaterFoundry/WSLFedoraRemix/releases/)
可以使用命令(如下以ubuntu18.04为例):
curl.exe -L -o ubuntu-1804.appx https://aka.ms/wsl-ubuntu-1804
或:
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile Ubuntu.appx -UseBasicParsing
若觉得命令下载太慢的话,也可以按照上面的网址直接下载。
注:新版本的Ubuntu 20.04目前只能通过windows商店安装,但本机上windows商店死活连接补上,只好作罢。
”
Ubuntu 18.04子系统我放到网盘中了。
Add-AppxPackage .\Ubuntu18.04.Appx
windows Terminal是微软开发的终端程序,可以完全替代windows系统中的cmd及powershell。该程序可以在Microsoft Store中搜索安装。
设置国内镜像的目的是为了在安装软件时加快下载速度,如果连接外网速度够快,也可以不用设置。
sudo apt update && sudo apt upgrade
若下载缓慢,可尝试更新国内ubuntu源,如阿里、清华、中科大等。
lsb_release -c
查看版本代号,如下图所示可看到当前Ubuntu 20.04系统代号为focalsudo cp -v /etc/apt/sources.list /etc/apt/sources.list_backup
chmod
命令更改文件权限sudo chmod 777 /etc/apt/sources.list
打开sources.list文件修改
选择合适的源,替换原文件的内容,保存编辑好的文件, 以阿里云更新服务器为例(可以分别测试阿里云、清华、中科大、163源的速度,选择最快的):
sudo vim /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
:wq
保存文件sudo apt update
sudo apt upgrade
sudo apt install build-essential
下载速度瞬间就起飞了。
中科大源:
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
163源:
deb http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
清华源:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
WSL在windows系统下的文件位置:
C:\Users\admin\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs
文件组织结构如下图所示:
注:在WSL中安装的所有软件都被放在这个路径下面了。这里的截图是Ubuntu18.04的,不同版本的Ubuntu文件路径名稍有区别。
”
如果不满足于WSL的完全命令行界面,也可以考虑配置图形系统,这个可以在网络上搜索到一大堆的配置教程。
在WSL中安装OpenFOAM与在Linux系统中安装过程完全一致。下面是分别为OpenFOAM8与OpenFOAM-dev的安装命令。
Installing OpenFOAM 8
sudo sh -c "wget -O - http://dl.openfoam.org/gpg.key | apt-key add -"
sudo add-apt-repository http://dl.openfoam.org/ubuntu
sudo apt-get update
sudo apt-get install openfoam8
Installing OpenFOAM-dev
sudo sh -c "wget -O - http://dl.openfoam.org/gpg.key | apt-key add -"
sudo add-apt-repository "http://dl.openfoam.org/ubuntu dev"
sudo apt-get update
sudo apt-get install openfoam-dev
安装过程中,OpenFOAM的下载极其缓慢,有板凳的尽量搭一脚,不然下载百把兆的软件只怕要一个下午,尤其是ParaView通过sourceforge下载,速度更是慢的令人发指。
注:实在等不下去的,可以直接到sourceforge网站下载OpenFOAM包,然后在WSL里头安装。
”
安装完毕后添加环境变量。
vim ~/.bashrc
source /opt/openfoam7/etc/bashrc
simpleFoam -help
出现以下提示表示OpenFOAM安装成功。
paraFoam
,出现如下图所示提示表示paraView安装成功。然而WSL并不带有图形接口而导致paraview无法使用,这里需要另外安装图形显示程序,具体步骤可参阅后面图形程序的安装一节。
有时候实在是下载不下来,或者根本没有耐心去等待,此时可以选择编译的方式进行安装。
教程参阅:https://github.com/OpenFOAM/OpenFOAM-8
”
gcc --version
若提示gcc未安装,可以先利用命令sudo apt install gcc
进行安装。
sudo apt install build-essential flex bison git-core cmake zlib1g-dev libboost-system-dev libboost-thread-dev libopenmpi-dev openmpi-bin gnuplot libreadline-dev libncurses-dev libxt-dev
# OpenFOAM-8版本
git clone https://github.com/OpenFOAM/OpenFOAM-8.git
git clone https://github.com/OpenFOAM/ThirdParty-8.git
# OpenFOAM-dev版本
git clone https://github.com/OpenFOAM/OpenFOAM-dev.git
git clone https://github.com/OpenFOAM/ThirdParty-dev.git
也可进入网址https://github.com/OpenFOAM选择合适的版本自行下载(如需要安装OpenFOAM8,则下OpenFOAM-8及ThirdParty-8,若需安装OpenFOAM-dev,则下载OpenFOAM-dev及ThirdParty-dev)。为方便后续的描述,这里将下载下来的文件放在D盘根路径下。
/home/OpenFOAM
路径中去。启动终端,输入下面的命令:cd $HOME
sudo mkdir OpenFOAM
sudo cp /mnt/d/OpenFOAM-8-master.zip .
sudo cp /mnt/d/ThirdParty-8-master.zip .
sudo mv OpenFOAM-8-master.zip OpenFOAM-8.zip
sudo mv ThirdParty-8-master.zip ThirdParty-8.zip
# 解压文件,需要预先安装unzip
sudo unzip OpenFOAM-8.zip
sudo unzip ThirdParty-8.zip
解压完毕后文件夹OpenFOAM中包含两个zip文件及两个解压的文件夹,如下图所示。
注意若系统中未安装unzip,此时可以使用命令sudo apt install zip
进行安装。
sudo vim ~/.bashrc
打开环境配置文件,在文件末尾添加下面的信息:source $HOME/OpenFOAM/OpenFOAM-8/etc/bashrc
cd $HOME/OpenFOAM/Openfoam-8
./Allwmake -j
若提示make: not found
,则需要利用命令sudo apt install make
安装make程序。程序安装完毕后重新执行上面的命令。此时有可能因为文件权限不够而报错,此时可以使用命令sudo chmod 777 -R /home/OpenFOAM/
修改文件夹权限,之后再重新执行上面的编译命令。
编译时间视CPU性能而异可能会持续半小时到几个小时。
编译完毕后可以在终端中输入命令icoFoam -help
,若出现下图所示的信息则表示安装成功。
若嫌弃直接安装OpenFOAM8时下载太慢,又嫌弃编译的方式耗时过长的话,可以尝试利用deb包的方式进行安装。
先下载OpenFOAM的deb包,下载地址为:http://dl.openfoam.org/ubuntu/dists/focal/main/binary-amd64/,在下面可以选择想要安装的版本,比如这里安装OpenFOAM8,下载openfoam8_20200901_amd64.deb,可以使用某雷下载,速度不错几分钟可以下载下来。
注意:下载链接中focal为ubuntu操作系统代号,focal是20.04版本,若18.04版本则为bionic。这可以利用命令lsb-release -c进行查看。
”
下载下来后将其放到一个英文路径下,如放到D盘下,后面使用命令:
cd ~
cp /mnt/d/openfoam8_20200901_amd64.deb .
sudo dpkg -i openfoam8_20200901_amd64.deb
等待几分钟文件解压完毕后出现如下所示的屏幕提示则表示安装成功。
采用下面的命令修改环境变量:
echo "source /opt/openfoam8/etc/bashrc" >> ~/.bashrc
source ~/.bashrc
此时可以输入下面的命令测试软件安装是否成功。
icoFoam -help
如下图所示提示则表示安装成功。
ParaView的安装过程与此相同。不过在Windows系统下建议直接安装windows版本的paraview。
下面是OpenFOAM2006的安装步骤,参阅https://www.openfoam.com/download/install-windows-10.php。
文件地址:https://sourceforge.net/projects/openfoam/files/v2006/OpenFOAM-v2006-windows10.tgz。很奇怪,这个sourceforge链接下载速度挺快的,想不明白openfoam8的下载为何如此难堪。
下载完毕后将文件放到一个英文路径下,如E\OpenFOAM-v2006-windows10.tgz。
cp -ar /mnt/e/OpenFOAM-v2006-windows10.tgz .
sudo tar -xvzf OpenFOAM-v2006-windows10.tgz -C /opt/
sudo chown -R $USER /opt/OpenFOAM
sudo apt install bison flex m4
echo "source /opt/OpenFOAM/OpenFOAM-v2006/etc/bashrc" >> ~/.bashrc
source $HOME/.bashrc
此时可以重启终端(这里推荐在windows商店中安装windows terminal,很好用),利用下面的命令测试一下是否安装成功。
icoFoam -help
若输出如下图所示,则表示安装成功
安装完毕了之后可以打扫一下战场,将后面不需要的文件给删除掉。
cd ~/OpenFOAM
sudo rm *.zip
sudo rm -r ThirdParty-8
由于是在Windows下运行,因此ParaView建议下载windows版本自行安装。
当同时安装了OpenFOAM 8和OpenFOAM 2006时,可以设置环境变量进行自由切换。
执行命令:
vim $HOME/.bashrc
会打开一个文件,在文件的最底部重新取一行添加下述两行文字:
alias of8="source ~/OpenFOAM/OpenFOAM-8/etc/bashrc"
alias of2006="source ~/OpenFOAM/OpenFOAM-2006/etc/bashrc"
保存并关闭。重新打开新的终端的时候,环境变量自动生效。这时如果用户键入:
of8
则进入OpenFOAM-8环境,类似的,键入:
of2006
则可以进入OpenFOAM-2006环境。
这里使用Xming作为WSL的图形程序,采用以下顺序安装Xming。
还需要配置环境变量。启动WSL,执行以下命令:
echo "export DISPLAY=:0" >> ${HOME}/.bashrc
. $HOME/.bashrc
也可以通过命令vim ~/.bashrc
打开配置文件,在文件最后添加文本:
export DISPLAY=:0
此时执行paraFoam
可以顺利打开。
这里也可以安装一些OpenFOAM使用中会用到的一些工具,如gedit(文本编辑器)、gnuplot等。
使用下面的命令可以安装。
sudo apt-get install gedit gedit-plugins
sudo apt-get install gnuplot gnuplot-x11 gnuplot-doc libgd-tools
至此,在Windows 10 WSL下安装OpenFOAM的所有工具已经完成。不过为了提高使用体验,可以将WSL集成到VS Code中。
VS Code是微软捣鼓出来的一款开源IDE,数不清的外部插件使得该软件上天入地无所不能。
此时可以利用VS Code打开OpenFOAM工作文件夹,然后在终端中直接运行求解器,如下图所示。
运行完毕后还可以直接输入paraFoam
进行结果查看
OpenFOAM插件安装完之后,可能还不会直接显示高亮,需要进入 文件-首选项-设置 里面,搜索files.associations,进入setting.json文件,把下面的内容复制进去,然后就可以生效了。
"files.associations": {
"*Dict": "OpenFOAM",
"*Properties": "OpenFOAM",
"fvSchemes": "OpenFOAM",
"fvSolution": "OpenFOAM",
"**/constant/g": "OpenFOAM",
"**/0/*": "OpenFOAM"
}
本文完结!
---------------------------------------------------------------------------------------------
版权声明:
原创文章,来源CFD之道,本文已经授权,欢迎分享,如需转载请联系作者。