注意:
以#开头的不必复制粘贴。
请确保没复制错。
黑体为代码命令 1.切换到root模式(管理员),以安装必要的软件包
sudo -s
如果“ sudo”命令告诉您不在sudoers列表中,请运行:
su -
apt-get update
apt-get install git-core build-essential cmake libfl-dev bison zlib1g-dev qttools5-dev qtbase5-dev libqt5x11extras5-dev gnuplot libreadline-dev libncurses-dev libxt-dev libopenmpi-dev openmpi-bin libboost-system-dev libboost-thread-dev libgmp-dev libmpfr-dev python python-dev libcgal-dev curl
Note: 据报道,以下内容也应该在某些情况下执行,这样ParaView和CGAL才能正确构建
apt-get install libglu1-mesa-dev
exit
cd ~
mkdir OpenFOAM
cd OpenFOAM
git clone https://github.com/OpenFOAM/OpenFOAM-7.git
git clone https://github.com/OpenFOAM/ThirdParty-7.git
ln -s /usr/bin/mpicc.openmpi OpenFOAM-7/bin/mpicc
ln -s /usr/bin/mpirun.openmpi OpenFOAM-7/bin/mpirun
通过这种方式,我们可以避免在Ubuntu系统中安装多个MPI工具箱的情况下出现问题,例如安装了MPICH2并且它是默认的MPI工具箱。
uname -m
对于 i686:
source $HOME/OpenFOAM/OpenFOAM-7/etc/bashrc WM_ARCH_OPTION=32FOAMY_HEX_MESH=yes
对于x86_64,这取决于电脑是否支持64位
对于32位
source $HOME/OpenFOAM/OpenFOAM-7/etc/bashrc FOAMY_HEX_MESH=yes
对于64位
source $HOME/OpenFOAM/OpenFOAM-7/etc/bashrc WM_LABEL_SIZE=64FOAMY_HEX_MESH=yes
echo "alias of7='source \$HOME/OpenFOAM/OpenFOAM-7/etc/bashrc $FOAM_SETTINGS'" >> $HOME/.bashrc
Note: 最后一行意味着,无论何时启动一个新的终端窗口或选项卡,都应该运行与OpenFOAM-7 shell环境相关联的alias命令。换句话说,无论何时启动一个新终端,都应该运行
of7
5.1确保在ThirdParty运行中,并使用了正确的Qt版本
cd $WM_THIRD_PARTY_DIR
export QT_SELECT=qt5
5.2要使用Python和MPI构建ParaView,取决于是否已安装Ubuntu的i686或x86_64体系结构。 要检查此,运行:
uname -m
对于 i686:
#这一步要花费30 分钟到 2 个小时
./makeParaView -python -mpi -python-lib /usr/lib/i386-linux-gnu/libpython2.7.so.1.0 > log.makePV 2>&1
对于 x86_64:
#这一步要花费30 分钟到 2 个小时
./makeParaView -python -mpi -python-lib /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0 > log.makePV 2>&1
5.3一旦makeParaView脚本完成运行,确保检查文件日志的内容log.makePV 并检查是否有任何错误。log.makePV如果出错的话(如error,failed,unsussesful),则paraview没装上,如果解决不了可以先不管继续下一步。真的没办法解决的时候可以单独装paraview,步骤非常简单,后面会提到怎么做。
5.4最后,更新shell环境
wmRefresh
6.1打开OpenFOAM的主源文件夹,确保使用了正确的Qt版本
cd $WM_PROJECT_DIR exportQT_SELECT=qt5
6.2下一个命令需要一段时间…大约30分钟到3-6个小时
./Allwmake -j 4 > log.make 2>&1
Note: “4”指的是用于并行构建的核心数量。此外,构建与所使用的内核数量成比例的RAM数量,比如每个内核1GB RAM;连接这些库至少需要1.5GB,这不是并行完成的。
6.3再次运行它,以获得安装概要
./Allwmake -j 4 > log.make 2>&1
Note: 从技术上讲,一旦发现第一个错误,构建就会停止。运行第二次只会更容易地在已经构建的内容和崩溃发生的地方之间进行排序。
要查看log.make,如果openfoam不能用的话。log.make就在OpenFOAM-7文件夹里,如果出现pressmiss denied之类说权限不够的,可以执行
sudo chown -R <你的用户名> ~/OpenFOAM
或
sudo chmod -R 777 ~/OpenFOAM
将步骤6重新执行一遍
7.1通过运行这个命令来检查icoFoam是否工作正常
icoFoam -help
输出如下:
Usage: icoFoam [OPTIONS]
options:
-case specify alternate case directory, default is the cwd
-noFunctionObjects do not execute functionObjects
-parallel run in parallel
-roots <(dir1 .. dirN)> slave root directories for distributed running
-srcDoc display source code in browser
-doc display application documentation in browser
-help print the usage
Note: 请记住,需要小心使用命令的字母大小写。是icoFoam,不是icoFOAM.
8.1可以通过运行以下命令找到用户指南的本地副本
ls -A1 $WM_PROJECT_DIR/doc/Guides*/*UserGuide*.pdf
你会看到两种可用的格式:A4和US-Letter。
但是如果它告诉你没有这样的文件或目录,那么OpenFOAM环境可能没有被正确激活
注意: 无论何时启动一个新的终端窗口或选项卡,都应该运行与OpenFOAM-7 shell环境相关联的alias命令。换句话说,无论何时启动新终端,都要运行以下命令
of7
运行OpenFOAM可以生成 .foam 文件(也可以用 .blockMesh , .OpenFOAM)
然后用paraview 打开这些文件。