OpenFOAM+LIGGGHTS+CFDEM的安装
更新时间:2024-06-16 20:09:01 阅读量: 综合文库 文档下载
在Ubuntu上安装OpenFOAM + liggghts + CFDEM coupling
张祺 · 3 个月前
2016.03.28
OpenFOAM 是著名的计算流体力学(CFD)软件;liggghts 基于 lammps 进行大尺度颗粒模拟,可用于基于离散元法(DEM)的模拟;CFDEM coupling 则将前两者结合,耦合流体和固体颗粒的动力方程。
Ubuntu 是十分流行的 Linux 发行版,本文发表时已经发布 15.10 版,作为长期支持版 14.04 仍有巨大的市场份额,Ubuntu 社区也推荐个人用户使用长期支持版。所以,本文已 14.04 为例,介绍 OpenFOAM + liggghts + CFDEM coupling 的安装。
本文发表时,OpenFOAM 已推出 3.0.1 版,但由于 CFDEM coupling 基于 2.2.0开发,支持到 2.3.0 版,因而 OpenFOAM 应选择 2.3.0 版。(官网说明coupling3.0.0 与 OpenFOAM-3.0.1兼容,2016.03.28)
liggghts 的版本对 CFDEM coupling 的安装影响不大,可选最新版或笔者选用的3.3.0版。(注意liggghts关于按质量均匀分布和滚动刚度的源文件需要修改)
后处理软件为了与 OpenFOAM 2.3.0 匹配,选用 paraview 4.1;另选用 LPP 将 liggghts 生成的 dump 格式的文件转成 paraview 可识别的 vtk 格式。这一后处理方案也是官网推荐的,笔者认为较为易用。 并行计算选用 openmpi。
下面我们从新装的 Ubuntu 14.04 出发,安装上述软件。注意:在执行命令前请先搞懂命令的含义,并在下载、编译的同时,浏览相关的shell脚本,以便在出现问题时定位原因。 1 安装依赖包
安装依赖包之前更新系统。选用合适的软件源,速度会比较快。详情请搜索关键词:更新源 (附录1)。
1.1 从 github 下载、管理源代码的工具 git
sudo apt-get install git-core
1.2 OpenFOAM 和 paraview 的依赖包
sudo apt-get install build-essential flex bison cmake zlib1g-dev qt4-dev-tools libqt4-dev gnuplot libreadline-dev libncurses-dev libxt-dev
注:各个软件包的用处见附录2
1.3 安装 openmpi
sudo apt-get install libscotch-dev libopenmpi-dev libcgal-dev
1.4 安装 octave 用于 CFDEM coupling 的后处理
sudo apt-get install octave
1.5 安装 LPP 的依赖包
sudo apt-get install python-numpy
2 准备源代码
安装依赖包的同时可以另开一个终端,进行这一步。 2.1 新建目录
先在 home 文件夹下新建几个目录,目录的名称、结构很重要,否则无法用 CFDEM coupling 的脚本自动编译。
cd $HOME
mkdir OpenFOAM mkdir CFDEM mkdir LIGGGHTS
2.2 下载 OpenFOAM 及 ParaView 的源代码
官网下载页面openfoam.org/archive/2.,下载完后将压缩包移动到$HOME/OpenFOAM/文件夹,并解压。 cd $HOME/OpenFOAM/
tar xzf OpenFOAM-2.3.0.tgz tar xzf ThirdParty-2.3.0.tgz
cd $HOME/OpenFOAM/OpenFOAM-2.3.0/etc source ./bashrc
http://
3.0/download/source.php
2.3 用 git下载 liggghts 和 LPP 的源代码
cd $HOME/LIGGGHTS
git clone https://github.com/CFDEMproject/LIGGGHTS-PUBLIC.git LIGGGHTS-PUBLIC
git clone https://github.com/CFDEMproject/LPP.git mylpp
2.4 用 git 下载 CFDEM coupling 的源代码
cd $HOME/CFDEM
git clone https://github.com/CFDEMproject/CFDEMcoupling-PUBLIC.git CFDEMcoupling-PUBLIC-$WM_PROJECT_VERSION
3 配置环境变量
打开 .bashrc 文件,添加以下内容。如果有兴趣可以浏览 OpenFOAM 默认的配置文件 $HOME/OpenFOAM/OpenFOAM-2.3.0/etc/bashrc
#============================================================== #OpenFOAM
source $HOME/OpenFOAM/OpenFOAM-$WM_PROJECT_VERSION/etc/bashrc #============================================================== #CFDEM
export CFDEM_VERSION=PUBLIC export
CFDEM_PROJECT_DIR=$HOME/CFDEM/CFDEMcoupling-$CFDEM_VERSION-$WM_PROJECT_VERSION
export CFDEM_SRC_DIR=$CFDEM_PROJECT_DIR/src
export CFDEM_SOLVER_DIR=$CFDEM_PROJECT_DIR/applications/solvers export CFDEM_DOC_DIR=$CFDEM_PROJECT_DIR/doc
export CFDEM_UT_DIR=$CFDEM_PROJECT_DIR/applications/utilities export CFDEM_TUT_DIR=$CFDEM_PROJECT_DIR/tutorials export
CFDEM_PROJECT_USER_DIR=$HOME/CFDEM/$LOGNAME-$CFDEM_VERSION-$WM_PROJECT_VERSION export
CFDEM_bashrc=$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/bashrc export CFDEM_LIGGGHTS_SRC_DIR=$HOME/LIGGGHTS/LIGGGHTS-PUBLIC/src export CFDEM_LIGGGHTS_MAKEFILE_NAME=fedora_fpic export CFDEM_LPP_DIR=$HOME/LIGGGHTS/mylpp/src
export CFDEM_PIZZA_DIR=$HOME/LIGGGHTS/PIZZA/gran_pizza_17Aug10/src . $CFDEM_bashrc
#===============================================================
4 编译和安装
做完以上全部之后,重新打开一个终端,进行这一步。
4.1 编译 OpenFOAM
cd $HOME/OpenFOAM/OpenFOAM-2.3.0
./Allwmake (应该用sudo ./Allwmake,详细见
http://www.cfd-online.com/Forums/openfoam-installation/163592-openfoam-3-0-x-compilation-error-opensuse-13-1-a.html))
在编译之前可以通过修改~/OpenFOAM/OpenFOAM-2.3.1/wmake/wmakeScheduler文件来进行多核编译:
: ${WM_HOSTS:=$HOST:n} n即代表编译时用的核数;
执行OpenFOAM-2.3.0/Allwmake shell脚本:
首先判断当前文件夹是否为$WM_PROJECT_DIR(在~/OpenFOAM/OpenFOAM-version/etc/bashrc中定义,一般为 OpenFOAM/OpenFOAM-version;需要source ~/OpenFOAM/OpenFOAM-version/etc/bashrc);
然后检查$FOAM_EXT_LIBBIN是否定义(在~/OpenFOAM/OpenFOAM-version/etc/config/setting.sh中定义; ~/OpenFOAM/OpenFOAM-version/etc/bashrc 中会 source setting.sh:-foamSource $WM_PROJECT_DIR/etc/config/setting.sh)
第三步进入./wmake/src通过make编译wmake
第四步通过~/OpenFOAM/ThirdParty-version/Allwmake编译ThirdParty,如果判断没有~/OpenFOAM/ThirdParty-version文件夹的话则跳过这一步;
接下来就要编译OpenFOAM的src和application(通过src/Allwmake和applications/Allwmake)
如果OpenFOAM-2.3.0/Allwmake执行时第一个参数为 doc,则编译doc(通过doc/Allwmake).
OpenFOAM中环境变量的设置:
首先,需要在~/.bashrc中添加 ‘source ~/OpenFOAM/OpenFOAM-version/etc/bashrc’保证每次打开terminal后配置OpenFOAM的环境变量;
其次,~/OpenFOAM/OpenFOAM-version/etc/bashrc中会source其他配置文件: ~/OpenFOAM/OpenFOAM-version/bin/foamEtcFile
~/OpenFOAM/OpenFOAM-version/etc/config/settings.sh ~/OpenFOAM/OpenFOAM-version/config/aliases.sh ~/OpenFOAM/OpenFOAM-version/config/paraview.sh ~/OpenFOAM/OpenFOAM-version/config/ensight.sh ~/OpenFOAM/OpenFOAM-version/config/gperftools.sh ~/OpenFOAM/OpenFOAM-version/config/CGAL.sh
如果发生错误,请检查前面的步骤,并重新执行这一步。 4.2 编译 paraview
cd $WM_THIRD_PARTY_DIR ./makeParaView4
这一步完成后,编译 PV4Readers
cd $FOAM_UTILITIES/postProcessing/graphics/PV4Readers wmSET
./Allwclean ./Allwmake
4.3 检查 OpenFOAM 的安装是否正确
mkdir -p $FOAM_RUN
cp -r $FOAM_TUTORIALS $FOAM_RUN
cd $FOAM_RUN/tutorials/incompressible/icoFoam/cavity blockMesh icoFoam paraFoam
如果弹出 paraview 说明安装正确,否则检查以上步骤,并参阅 OpenFOAM 安装官方指南openfoam.org/archive/2.
http://
3.0/download/source.php
如果安装正确请进行下一步
4.4 编译 liggghts 和 cfdem coupling 4.4.1检查系统配置
利用 cfdem coupling 的系统检查脚本,检查系统配置
cfdemSysTest
如果这一步没有报错,进行下一步。如果有报错请按错误提示排错,笔者安装时,mpic++ 没有配置好,需要修改 mpic++ 的配置文件指定编译器。如果提示命令没有发现,说明 .bashrc 文件没有配置正确,参见前文或官方指南cfdem.com/system/files/
http://www.
githubaccess_public.pdf
4.4.2 编译 liggghts
利用 cfdem coupling 提供的脚本编译 liggghts
cfdemCompLIG
也可以根据 liggghts 的官方指南进行编译,建议使用脚本。编译结束后,新开一个终端输入 liggghts 命令,检查 liggghts 是否安装成功。如果提示命令没有找到,参见 liggghts 官方指南,或输入
cd $HOME/LIGGGHTS/LIGGGHTS-PUBLIC/src make clean-all make fedora
重试,看有没有 lmp_fedora 文件生成,若有则编译成功,尝试重新运行
正在阅读:
OpenFOAM+LIGGGHTS+CFDEM的安装06-16
【热门】军训日记10篇10-29
以琳生物 NI-NTA蛋白纯化方法06-03
民主生活会发言材料(路乡长)07-22
安全整改方案08-22
党组民主生活会发言提纲03-27
章腊、仙女居住的村庄05-21
财务工作年终总结20篇07-31
操作系统习题与解答(含答案)01-18
上半年民主生活会发言材料09-14
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- OpenFOAM
- LIGGGHTS
- 安装
- CFDEM
- 第五单元t图形的运动练习题
- 管理学院认知实践Ⅱ课程论文徐可
- 部编语文2二年级上册单元测试题及答案全套 - 图文
- 家庭居室装饰装修工程施工协议书
- 教师技能大赛新闻稿
- 中国电地暖行业市场前景分析预测年度报告(目录) - 图文
- 五、六年级科学下册实验教学计划
- 筏板基础计算书
- 怎样提高学生计算的正确率
- LTE系统消息详解
- 江苏省2014届高三英语(牛津版)一轮复习攻略训练:完形填空(3)
- 行政管理专业专升本入学测试
- 【西南●最新版】《现代广告学》网上作业及课程考试复习资
- 五年级奥数知识点
- 纪检组长2018年个人年终工作总结个人工作总结
- 村干部带头致富对策思考
- 2013银行从业资格考试《公共基础知识》历年真题库
- 呼天成人物形象分析1
- 心电信号的QRS波群检测:差分运算方法
- 汇宝花园 - 安立克停车场设计方案 - 图文