从零开始:Ubuntu18.04上搭建CFDEM耦合环境(含OpenFOAM-5.x和LIGGGHTS-3.8.0)
从零构建Ubuntu18.04下的CFD-DEM耦合仿真平台OpenFOAM-5.x与LIGGGHTS-3.8.0深度整合指南当离散元方法DEM遇上计算流体力学CFD便诞生了能够模拟颗粒-流体交互的CFD-DEM耦合技术。对于从事颗粒动力学、流化床反应器或工业混合过程研究的工程师而言搭建一套稳定的CFDEM耦合环境是开展仿真的第一步。本文将带您完整走过从系统配置到案例验证的全流程避开那些新手常踩的坑。1. 环境准备打造稳定的Ubuntu18.04基础选择Ubuntu18.04并非偶然——这个LTS版本不仅拥有长期支持其默认的GCC 7编译器恰好满足OpenFOAM-5.x的编译要求。在开始前我们需要做好这些基础工作# 更新软件源并升级现有包 sudo apt update sudo apt upgrade -y关键依赖安装清单开发工具链build-essential cmake git-core数学库libgmp-dev libmpfr-dev libcgal-dev并行计算支持openmpi-bin libopenmpi-devQt图形支持qt4-dev-tools libqt4-opengl-dev提示国内用户建议先更换软件源。在软件和更新中选择阿里云或清华镜像源可显著提升下载速度。存储规划同样重要。建议为编译预留至少30GB空间因为OpenFOAM和ParaView的编译过程会产生大量中间文件。我们可以通过以下命令查看空间使用情况df -h /home # 查看用户目录所在分区剩余空间2. 源码获取与目录架构设计合理的目录结构能避免后续环境变量混乱。建议在用户主目录下建立如下框架~/CFDEM ├── OpenFOAM-5.x ├── ThirdParty-5.x ├── CFDEMcoupling-PUBLIC-5.x └── LIGGGHTS-PUBLIC获取源码时Git克隆虽直接但可能较慢。对于网络不稳定情况推荐在浏览器访问GitHub仓库页面手动下载ZIP压缩包解压到对应目录后执行# 以OpenFOAM为例 unzip OpenFOAM-5.x-master.zip -d ~/CFDEM/OpenFOAM-5.x版本匹配矩阵组件推荐版本关键依赖OpenFOAM5.xGCC 4.8~7LIGGGHTS3.8.0VTK 6.x/7.xCFDEM耦合接口PUBLIC版需匹配OpenFOAM版本3. OpenFOAM-5.x的编译艺术编译OpenFOAM是个考验耐心的过程正确的环境配置能事半功倍。编辑~/.bashrc加入# OpenFOAM环境配置 source $HOME/CFDEM/OpenFOAM-5.x/etc/bashrc export WM_NCOMPPROCS$(nproc) # 使用所有CPU核心编译前建议执行依赖检查# 检查关键依赖是否齐全 foamSystemCheck -all 21 | grep Not found编译优化技巧使用-j参数并行编译./Allwmake -j $(nproc)遇到错误时先执行./Allwmake -j 1定位问题内存不足时可添加export WM_COLLECTIVE注意编译ParaView时务必设置QT_SELECTqt4这是5.x版本的特殊要求。完整编译命令cd ThirdParty-5.x export QT_SELECTqt4 ./makeParaView -qmake $(which qmake-qt4)验证安装成功的关键命令icoFoam -help # 显示帮助信息即成功 paraFoam # 应启动可视化界面4. LIGGGHTS-3.8.0的定制化编译LIGGGHTS的编译比OpenFOAM更挑剔需要特别注意VTK支持。分步操作如下cd ~/CFDEM/LIGGGHTS-PUBLIC/src make auto # 生成初始Makefile.user编辑MAKE/Makefile.user确保包含USE_VTK ON AUTOINSTALL_VTK ON VTK_INC_USR -I/usr/include/vtk-6.3 VTK_LIB_USR -lvtkCommonCore-6.3 -lvtkIOCore-6.3常见编译问题解决报错mpi.h not found安装libopenmpi-dev报错cannot find -lvtk...确认VTK版本号匹配报错Python.h missing安装python3-dev编译成功后可通过简单案例验证cd ../examples/LIGGGHTS/Tutorials_public/chute_wear lmp_auto in.chute_wear5. CFDEM耦合环境的精密调试耦合环境的成功关键在于正确的环境变量配置。在~/.bashrc尾部添加# CFDEM环境配置 export CFDEM_VERSIONPUBLIC export CFDEM_PROJECT_DIR$HOME/CFDEM/CFDEMcoupling-$CFDEM_VERSION-$WM_PROJECT_VERSION export CFDEM_LIGGGHTS_SRC_DIR$HOME/CFDEM/LIGGGHTS-PUBLIC/src . $CFDEM_PROJECT_DIR/src/lagrangian/cfdemParticle/etc/bashrc执行系统测试验证环境cfdemSysTest # 应显示所有组件检测通过耦合编译的黄金命令cfdemCompCFDEMall 21 | tee compile.log # 保存编译日志验证安装的终极测试是运行示例案例cd $CFDEM_PROJECT_DIR/tutorials/cfdemSolverPiso/voidfractionTest ./Allrun.sh当看到终端输出流体与颗粒的迭代计算信息且ParaView能正确显示耦合场时恭喜您已成功搭建起CFD-DEM的科研利器
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2421835.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!