本文以ThirdParty-10 为例,ThirdParty-10 是 OpenFOAM 软件包中的一个重要组件目录,包含了一系列外部的第三方库和工具,这些库和工具对于 OpenFOAM 的编译和运行至关重要。该目录提供了各种脚本和配置文件,用于简化这些第三方库的下载、编译和安装过程。这些库和工具包括但不限于 MPI(用于并行计算)、Scotch(用于网格划分)、ParaView(用于数据可视化)等。通过执行 Allwmake 脚本,可以一键完成所有第三方库的编译和安装,确保 OpenFOAM 环境的完整性和依赖关系的正确配置。这极大地简化了用户配置环境的难度,提高了 OpenFOAM 的可用性和易用性。
1.工程文件介绍
针对以上文件及文件目录介绍其功能特性:
Allclean:
这是一个脚本或命令,通常用于清理(即删除)所有编译生成的临时文件和目标文件。执行后,可以将编译过程中生成的中间文件和已编译的程序删除,以便重新开始编译或者清理空间。
Allwmake:
这是一个脚本或命令,用于编译并安装ThirdParty-10目录中的所有软件包。执行此命令会遍历所有子目录,编译其中的软件包并将它们安装到指定位置。
AllwmakeLibccmio:
这是一个脚本或命令,用于编译和安装Libccmio库。Libccmio是一个用于读取和写入CFD(计算流体动力学)网格数据文件的库。
etc:
这个目录通常包含一些配置文件或者其他配置相关的文件。具体内容可能因软件包而异,需要查看具体文件来了解其作用。
makeGcc, makeCmake, makeGperftools, makeLLVM, makeMesa:
这些可能是用于编译和安装特定软件或库的脚本或命令。例如,makeGcc可能用于编译GNU Compiler Collection (GCC),makeCmake用于编译CMake,等等。每个脚本可能会调用特定的编译器或工具链来完成编译和安装过程。
makeParaView:
这个脚本或命令用于编译和安装ParaView软件包。ParaView是一个用于可视化大型数据集的开源多平台数据分析和可视化工具。
platforms:
这个目录通常包含特定平台(如Linux x86_64)下的编译和安装脚本、配置文件或者其他相关文件。在这里可能会找到ParaView和其他软件的特定平台的构建脚本和配置文件。
ParaView-5.6.3.patch:
这个文件通常是一个补丁文件,用于修复或更新ParaView 5.6.3版本的特定问题或添加特定功能。应用这个补丁可能需要使用patch工具或者其他相应的方法。
scotch_6.0.9:
这可能是scotch库的版本号,用于并行有限元网格的划分和重新划分。
这些文件和目录组成了ThirdParty-10目录,用于管理和编译OpenFOAM所需的第三方软件包和库。每个文件或目录在整个编译和安装过程中都起着特定的作用,确保依赖项正确安装和配置。
2.编译安装QT
如果你遇到下面的文件:这个错误表明系统中存在一个依赖问题,特别是涉及到Qt 5.15.3的依赖关系无法满足。这可能是由于软件包版本不匹配或系统配置问题引起的。
解决的方法如下:
前提条件:
sudo sh -c "wget -O - https://dl.openfoam.org/gpg.key | apt-key add -"
sudo add-apt-repository http://dl.openfoam.org/ubuntu
更新包列表:
sudo apt-get update
方法1:命令安装
sudo apt-get install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools qtcreator qtbase5-doc-dev qtbase5-examples qtbase5-doc-html
sudo apt-get install qtmultimedia5-dev
sudo apt-get install qt5*
sudo apt-get install qtbase5-dev qttools5-dev-tools libqt5x11extras5-dev
sudo apt install qtmultimedia5-dev
等待的时间长一点:
方法2:下载之后命令安装
在官网http://download.qt.io/archive/qt/ 下载安装包,默认linux平台下提供的安装包以run后缀结尾.也可以选择其它地址下载 Qt官网下载地址:https://download.qt.io; 国内镜像下载地址:https://mirrors.cloud.tencent.com/qt/ 。建议用镜像下载速度快。集成安装包在 official_releases/qt 目录下,新地址:https://download.qt.io/new_archive/qt/
参考文章链接:https://blog.csdn.net/qq_37529913/article/details/136521711
在本文中测试的版本是5.14.2:
其他安装参考:https://blog.csdn.net/weixin_41194129/article/details/126874874
具体操作命令如下:
步骤 1:准备安装
确保权限:首先,确保下载的安装程序具有执行权限。如果没有,请使用以下命令添加执行权限:
chmod +x qt-opensource-linux-x64-5.14.2.run
步骤 2:运行安装程序
运行安装程序:运行下载的安装程序。请确保在一个可以执行文件的目录下运行此命令。如果你的 Qt 安装文件在当前目录,你可以运行以下命令:
./qt-opensource-linux-x64-5.14.2.run
按照安装向导:安装程序会启动 Qt 安装向导。按照向导指示进行操作,以下是一些通常的步骤:
选择安装类型:选择 Install Qt。
许可协议:阅读并接受许可协议。
安装组件:选择需要安装的组件。至少选择 Qt 5.14.2 版本和 Qt Creator。
步骤 3:设置环境变量
设置环境变量:安装完成后,需要设置环境变量,以便系统可以找到 Qt 工具和库。
打开终端,编辑你的 shell 配置文件,例如 ~/.bashrc 或 ~/.bash_profile:
sudo apt install gedit
gedit ~/.bashrc
在文件末尾添加以下行,设置 Qt 安装路径(假设 Qt 安装在 /opt/Qt,请根据实际安装路径修改):
export PATH=/opt/Qt/5.14.2/gcc_64/bin:$PATH
export QMAKE_PATH=/opt/Qt/5.14.2/gcc_64/bin/qmake
我的默认安装路径在:/home/ovo/Qt5.14.2,因此:
export PATH=/home/ovo/Qt5.14.2/gcc_64/bin:$PATH
export QMAKE_PATH=/home/ovo/Qt5.14.2/gcc_64/bin/qmake
保存文件并使其生效:
source ~/.bashrc
步骤 4:验证安装
验证安装:打开一个新的终端窗口,输入以下命令验证 qmake 是否正确安装并在路径中:
qmake -version
应该看到类似如下的输出,显示已安装的 Qt 版本:
3.编译安装ThirdParty-10
你可以吧下面的8修改为10
3.1 方法1
如果已经安装了OpenFOAM,可以直接安装推荐的ParaView版本。以下是一个示例,展示如何安装OpenFOAM 8和其推荐的ParaView 5.6:
安装OpenFOAM 8
sudo sh -c "wget -O - https://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
设置环境变量
在你的shell配置文件(如~/.bashrc)中添加以下行以设置环境变量:
source /opt/openfoam8/etc/bashrc
然后使更改生效:
source ~/.bashrc
验证安装
测试OpenFOAM:
simpleFoam -help
方法3.2:编译安装OpenFOAM
一次性复制下面所有内容到终端:
cd $HOME &&
if [ ! -d "OpenFOAM" ];then mkdir OpenFOAM; fi &&
sudo apt update &&
sudo apt-get install -y 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 &&
cd OpenFOAM &&
git clone https://e.coding.net/dyfluid/OpenFOAM/OpenFOAM-11.git &&
git clone https://e.coding.net/dyfluid/OpenFOAM/ThirdParty-11.git &&
source OpenFOAM-11/etc/bashrc &&
cd OpenFOAM-11 &&
./Allwmake -j &&
sed -i '$a source $HOME/OpenFOAM/OpenFOAM-11/etc/bashrc' $HOME/.bashrc
参考:http://dyfluid.com/install.html
3.3 编译安装与启动ParaView:
安装ParaView 5.6
sudo apt-get install paraviewopenfoam56
或者直接:
sudo apt-get install paravie
./makeParaView其会自动下载ParaView并开始编译,编译过程较长。然后键入paraFoam即可运行,其会自动创建一个后缀为.OpenFOAM的文件,并自动挂载。
cd $HOME/OpenFOAM/ThirdParty-10 &&
sudo apt-get install git cmake build-essential libgl1-mesa-dev libxt-dev libqt5x11extras5-dev libqt5help5 qttools5-dev qtxmlpatterns5-dev-tools libqt5svg5-dev python3-dev python3-numpy libopenmpi-dev libtbb-dev ninja-build qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools &&
./makeParaView &&
wmRefresh &&
cd $FOAM_UTILITIES/postProcessing/graphics/PVReaders &&
./Allwclean &&
./Allwmake
运行截图:
paraview
示例:运行一个简单的OpenFOAM案例并在ParaView中可视化
创建案例目录:
mkdir -p $FOAM_RUN
cd $FOAM_RUN
cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity .
cd cavity
运行预处理工具:
blockMesh
运行求解器:
icoFoam
在ParaView中可视化结果:
运行ParaView,然后在ParaView中打开cavity目录下的case.foam文件,进行结果的可视化。
cavity目录最初包含以下子目录:0,constent,和system。运行之后,它输出0.1、0.2、0.3、0.4、0.5 文件
0目录包含在这些时间步长的所有变量的值。一般是P和U,因此,0目录是初始条件。
constent目录包含运动学粘度的transportProperties字典,一般是一些常数。
system目录包含网格构建,运行控制设置、离散化方案和求解方案过程的设置。
icoFoam解决程序读取案例目录中的文件,并根据这些设置运行案例。
有一个速度恒为1的边界带动下面的流体进行运动。
参考链接:https://blog.csdn.net/lin958490203/article/details/124013542
参考
http://dyfluid.com/cnn.html#id7