这里安装的时间节点为:2018.10.29,安装的是目前的最新版本CFDEM,支持到与OpenFoam-5.x的耦合。

1. 先安装openfoam:
https://openfoam.org/download/source/
不算很难,安装这个官网程序走就行,主要需要注意的是源码一定要放在~目录下编译,如下

2. 再安装Liggghts:
https://www.cfdem.com/media/DEM/docu/Section_start.html
主要也是按照官网教程,下载完后直接make auto
这里需要注意两点,一是要在~目录下建立名为LIGGGHTS文件夹,然后把源码放在这个文件夹里编译(这一步最关键),
再一个是需要建立一个软链接:sudo ln -s $HOME/LIGGGHTS-PUBLIC/src/lmp_auto /usr/local/bin/liggghts(这一步不确定是否必要,但最好加上)

3. 安装CFDEM:
https://www.cfdem.com/media/CFDEM/docu/CFDEMcoupling_Manual.html#
一直到cfdemSysTest这一步都不难,测试这一步的时候看看几个critical的路径能不能找到,容易出问题的就是Liggghts没有放在上面说的LIGGGHTS文件夹里,如下:

还得下载lpp: sudo git clone https://github.com/CFDEMproject/LPP.git mylpp,注意下载到$HOME/LIGGGHTS文件夹下,因为bashrc中设置了这个路径,其实只要放置位置和bashrc中对应即可

然后开始编译CFDEM,可以直接cfdemCompCFDEMall,或者step by step编译:
cfdemCompLIG
cfdemCompCFDEMsrc
cfdemCompCFDEMsol
cfdemCompCFDEMuti
千万注意官网这里,后两个命令又typo,他们写成了:
cfdemCompCFDEmsol
cfdenCompCFDEMuti
按照官网写的会出现找不到命令的问题。见:https://www.cfdem.com/forums/cfdemcompcfdemsol-cfdencompcfdemuti

4. 运行测试
全部编译好以后可以测试一下,把~/CFDEM/CFDEMcoupling-PUBLIC-5.x/tutorials文件夹里拷贝一个案例文件夹到任意工作目录,例如cfdemSolverPiso这个案例
然后运行下面所示目录下的./Allrun.sh就能开始计算了。

ywj@DESKTOP-OD3RNEO:/mnt/e/CFD_wkdir/openfoam/CFDEM/cfdemSolverPiso/ErgunTestMPI$ ls
Allrun.sh DEM log_run_parallel_cfdemSolverPiso_ErgunTestMPI_CFDDEM parDEMrun.sh
CFD log_run_liggghts_init_DEM parCFDDEMrun.sh

5. 后处理
运行后生成CFD和DEM两个文件夹,一个放流场信息,一个放颗粒信息

由于这里是并行,所以CFD文件夹下有四个processor文件夹(processor0~processor3),每个文件夹下只存了四分之一网格信息,所以要把它们合并:
修改CFD\constant下couplingProperties文件关键字IOModel basicIO为IOModel off
然后命令行分别输入:
reconstructPar
foamToVTK
然后就能在CFD文件夹下生成对应时间的文件夹了,导入case.foam(手动创建的空文件)到paraview中,就能看到完整网格信息了

然后处理DEM下的文件,需要把dump文件转换为vtk格式,要用到lpp,这是一个python写的脚本,通过git clone到某个文件夹(这个步骤在3. 安装CFDEM中提到过),我这里直接放在~目录下
然后做一个alias:

alias lpp="python2 $HOME/mylpp/src/lpp.py"

这样,在DEM/post文件夹下运行lpp dump*.liggghts_run就把所有dump文件都转化为vtk了。如果出问题,接着下面步骤。

由于我的默认python版本为3.6,而此脚本文件为python2.7,所以我需要做一些修改:
安装pip

# . 更新系统包
sudo apt-get update
sudo apt-get upgrade
# . 安装Pip
sudo apt-get install python-pip
# . 检查 pip 是否安装成功
pip -V

安装python2版本的numpy

python2 -m pip list 查看
python2 -m pip install --upgrade pip 更新
python2 -m pip install numpy 安装

然后修改
$HOME/mylpp/src/lpp.py脚本文件第一行为:

#!/usr/bin/env python2

改完之后再在DEM/post文件夹下运行命令:

lpp dump*.liggghts_run

就能把dump文件都转换为VTK格式了,然后导入paraview中即可,效果图:

OpenFoam+CFDEM+Liggghts安装耦合的更多相关文章

  1. openfoam耦合liggghts安装

    本次安装基于新安装的ubuntu18.04LTS桌面版系统,用户名为ubuntu,此前未安装其他软件(进行了系统提醒的更新),安装时间为2019年9月. 安装前需确认需要安装的OpenFOAM版本,C ...

  2. Ubuntu1604下安装Liggghts及CFDEM Coupling

    部分内容参考http://www.linuxdiyf.com/linux/16315.html LIGGGHTS是一款开源的DEM软件,来自于著名的分子动力学软件LAMMPS,目前借助于CFDEM C ...

  3. OpenSUSE下编译安装OpenFoam

    在不是Ubuntu系统下安装OpenFoam,需要采用编译安装的方式.以下以OpenSuSE为例进行编译安装. 1 软件包准备 需要下载两个程序包: OpenFOAM-4.x-version-4.1. ...

  4. 【OpenFOAM案例】03 Docker安装OpenFOAM

    "工欲善其事必先利其器",软件装不上,讲再多的使用技巧也是白搭.近期不少留言说OpenFOAM不容易安装,今天来谈谈如何在Linux下利用Docker安装OpenFOAM. Lin ...

  5. Windows下OpenFOAM开发及使用环境配置指南 (2)【转载】

    转载自:http://openfoam.blog.sohu.com/158751915.html *************************************************** ...

  6. 深入理解 OpenFOAM 环境变量与编译

    操作系统选择 由于 OpenFOAM 在 Linux 平台开发和测试,在非 Linux 平台无法直接对软件进行编译和安装,所以在非 Linux 平台上最简便方法是使用 docker 容器运行 Open ...

  7. openfoam 的安装【转载】

    原文地址: http://blog.sina.com.cn/s/blog_14bf001d10102wifw.html OpenFOAM安装 OpenFOAM基于Linux系统下运行,由于对Linux ...

  8. Microsoft Prism安装使用教程 搭建WPF松耦合架构框架

    Microsoft Prism安装使用教程 搭建WPF松耦合架构框架 Prism是由微软Patterns & Practices团队开发的项目,目的在于帮助开发人员构建松散耦合的.更灵活.更易 ...

  9. 面系那个对象开发原则.高内聚.低耦合+Python安装详细教程+print输出带颜色的方法

    面系那个对象开发原则.高内聚.低耦合 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计, ...

随机推荐

  1. python多版本共存问题

    1.环境变量配置,pip路径别忘记加入,否则pip不好使. 2.如果改名python.exe为其他名字,复制一份保留,否则pip容易无法启动进程 参见爆栈: http://stackoverflow. ...

  2. windows下 git+tortoiseGit的使用【转】

    一定要自己写出来才能牢记,所以我来写一下 git确实比svn好用的多了,最起码只有一个文件夹用来标记版本信息比svn所有文件夹下都要放一个文件夹来标记版本信息先进多了,不然你不想要版本管理这些文件的时 ...

  3. ZSTU4270 同源数 2017-03-22 14:34 82人阅读 评论(0) 收藏

    4270: 同源数 Time Limit: 3 Sec  Memory Limit: 128 MB Submit: 1284  Solved: 224 Description 如果x和y的质因子集合完 ...

  4. 基于jCOM搭建Java-微软信息桥梁(下)

    第一部分析了BEA提供的Java/COM互操作解决方案—jCOM的实现原理:本文是第二部分,比较全面地分析了Weblogic Server的jCOM实现技术之后,通过一个具体实例来说明了jCOM的具体 ...

  5. EBS单实例上所有正在运行的并发请求以及请求目前的状态

    --EBS单实例上所有正在运行的并发请求以及请求目前的状态---一个实例上运行的所有并发请求的总结和他们目前的状态以及等待状态    select w.seconds_in_wait "Se ...

  6. IntentService介绍

    1.IntentService 是什么 一个封装了HandlerThread和Handler的异步框架. 是一种特殊Service,继承自Service,是抽象类,必须创建子类才可以使用. 可用于执行 ...

  7. 代码修改之后MSbuild编译不出最新的dll解决方法

    问题: 使用jenkins发布的时候,开发不断反馈自己修改的文件使用jenkins没有发布到测试环境.经过查证发现使用MSBUILD编译的时出现修改的文件编译出的日期不是最新日期,但是使用VS编译就不 ...

  8. SQL多行字符串按条件合并

    USE [ARTEA.MES]GO /****** Object: UserDefinedFunction [dbo].[UnionPart] Script Date: 11/18/2015 15:3 ...

  9. Caffe任务池GPU模型图像识别

    一开始我在网上找demo没有找到,在群里寻求帮助也没有得到结果,索性将网上的易语言模块反编译之后,提取出对应的dll以及代码,然后对照官方的c++代码,写出了下面的c#版本 /*** * @pName ...

  10. 开源应用框架BitAdminCore重构再思考

    索引 NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:https://www.bitadmincore.com 框架源码:https://github.com/chenyi ...