在ubuntu20.04安装OpenFoam-v2006并运行算例
安装依赖
sudo apt update;sudo apt-get update;sudo apt-get install build-essential autoconf autotools-dev cmake gawk gnuplot -y;sudo apt-get install flex libfl-dev libreadline-dev zlib1g-dev openmpi-bin libopenmpi-dev mpi-default-bin mpi-default-dev -y;sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev -y;sudo apt-get install libscotch-dev libptscotch-dev libfftw3-dev libboost-system-dev libboost-thread-dev libcgal-dev -y
sudo apt update;sudo apt-get update;sudo apt-get install build-essential autoconf autotools-dev cmake gawk gnuplot -y;sudo apt-get install flex libfl-dev libreadline-dev zlib1g-dev openmpi-bin libopenmpi-dev mpi-default-bin mpi-default-dev -y;sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev -y;sudo apt-get install libscotch-dev libptscotch-dev libfftw3-dev libboost-system-dev libboost-thread-dev libcgal-dev -y
(两个一样 下面的方便复制,下文同理)
如果要使用系统组件,还可以安装以下组件:
sudo apt-get install libscotch-dev libptscotch-dev libfftw3-dev libboost-system-dev libboost-thread-dev libcgal-dev
sudo apt-get install libscotch-dev libptscotch-dev libfftw3-dev libboost-system-dev libboost-thread-dev libcgal-dev
下载OpenFOAMv2006
wget -c https://sourceforge.net/projects/openfoam/files/v2006/OpenFOAM-v2006.tgz?use_mirror=nchc -O OpenFOAM-v2006.tgz;wget -c https://sourceforge.net/projects/openfoam/files/v2006/ThirdParty-v2006.tgz?use_mirror=nchc -O ThirdParty-v2006.tgz
wget -c https://sourceforge.net/projects/openfoam/files/v2006/OpenFOAM-v2006.tgz?use_mirror=nchc -O OpenFOAM-v2006.tgz;wget -c https://sourceforge.net/projects/openfoam/files/v2006/ThirdParty-v2006.tgz?use_mirror=nchc -O ThirdParty-v2006.tgz
你也可以在合适的网络环境下下载好后放到ubuntu中,以下是网址:
OpenFOAM-v2006:https://sourceforge.net/projects/openfoam/files/v2006/OpenFOAM-v2006.tgz?use_mirror=nchc
ThirdParty-v2006:https://sourceforge.net/projects/openfoam/files/v2006/ThirdParty-v2006.tgz?use_mirror=nchc
解压
编译
将解压后的文件夹放入Home/OpenFOAMv2006中(当然也可以选择你想要的目录,只要将后续的目录改成openfoam的存放目录就可以)
输入gedit ~/.bashrc
(这一步是为了打开home目录下的.bashrc文件)
在最后一行添加source ~/OpenFOAMv2006/OpenFoam-v2006/etc/bashrc
保存关闭
编译ThirdParty-v2006
在命令行中打开ThirdParty-v2006文件夹
输入./Allwmake -j
等待编译完成
编译openfoam-v2006
在命令行中打开OpenFOAM-v2006文件夹
输入foamSystemCheck
来验证前置完整性,如图
前面不重要,出现最后一句话即可
输入foam
(这是为了把当前工作目录改到OpenFoam主目录)
输入
./Allwmake -j
随后等待编译完成
测试
测试安装完整性
输入foamInstallationTest
会出现如上类似的东西
这代表着openfoam-v2006已经安装完成并配置完毕
简单算例测试
输入mkdir -p $FOAM_RUN;cd $FOAM_RUN
来创建案例存放目录并打开目录 当然也可以选择其他目录
- $FOAM_RUN是openfoam内置的运行目录
- -p的作用是当目录存在时退出不报错,不存在时则递归创建目录
输入cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily ./;cd pitzDaily
命令的意思是:
- 复制case pitzDaily到当前目录
- 打开pitzDaily目录
两个命令之间用分号;
隔开
输入blockMesh
会出现类似下面的数据
再输入simpleFoam
:
atmForestStability算例测试
输入
cd $FOAM_RUN;cp $FOAM_TUTORIALS/verificationAndValidation/atmosphericModels/atmForestStability ./;cd atmForestStability;./Allrun
cd $FOAM_RUN;cp $FOAM_TUTORIALS/verificationAndValidation/atmosphericModels/atmForestStability ./;cd atmForestStability;./Allrun
命令分为4步:
- 打开OpenFoam运行目录,也就是$FOAM_RUN
- 复制算例atmForestStability到运行目录
- 打开算例目录
- 运行算例
该算例运行需要较长时间 耐心等待
declare: not found
这是因为atmForestStability算例中的Allrun文件的第一行是#!/bin/sh
sh是shell的命令模式,而ubuntu中是bash模式
declare命令只有在bash模式下才有
所以需要将
#!/bin/sh
改为
#!/bin/bash
即可解决
算例结果
由于该算例是由多个子算例构成的,并且时间设置是0-100000(10w),所以运行时间很长,这里放一部分运行结果
控制台输出:
子case veryStable的log.buoyantBoussinesqSimpleFoam: