【FLUENT案例】06:与EDEM耦合计算
折腾了很久才把耦合模块搞定,用的还是网上别人编译好的UDF,不完美。自己编译的时候,老是提示无法找到fluent中的一些头文件,个人怀疑是操作系统和visual studio的问题,有时间换个系统和VS再试试,其实也挺简单。
此测试案例是EDEM官方提供的。
软件设置分为两部分,其中包括在FLUENT设置和EDEM设置,计算模型可以采用同一模型,也可以采用不同的网格模型,这里采用同一套网格模型。(EDEM可以读入msh文件)。
1 案例描述
案例模型很简单,如下图所示的交叉管,流经模型的介质包括连续相的水和颗粒相。
2 FLUENT设置
2.1 导入网格文件
- 启动FLUENT,利用菜单File | Read | Mesh…导入网格文件intersection_vertical.msh
- 选择General面板中的Scale…按钮,确保网格模型尺寸,如下图所示。

2.2 General面板及Material
- 设置Time为Transient,采用瞬态计算
- 设置Z轴方向重力加速度-9.81
- 添加材料water-liquid




2.3 Cell Zone Conditions
- 设置Cell Zone Conditons里头的区域介质为water-liquid,如下图所示。
2.4 Boundary Conditions
- 设置inlet边界入口速度为5m/s,如下图所示
2.5 Models
- 采用标准k-epsilon模型计算
2.6 加载EDEM宏
- 打开user-defined > Functions > Manage…
- 在library Name中输入udf所在路径,点击load按钮加载udf宏
- 加载完毕后,在Models树节点下出现EDEM子节点,如下图所示
点开来看,设置对话框如下图所示。
此对话框一会儿再设置。现在转入EDEM设置。
3 EDEM设置
3.1 设置模型描述
- 启动EDEM,点击菜单**File > Save”,在弹出的文件保存对话框中保存工程文件,默认名称New EDEM input deck.dem
- Global标签页中,设置Title为2-phase Eulerian
3.2 设置材料
- 创建新的材料“Particle”,设置材料属性如图所示。

- 单击 Transfer 按钮打开 Material/Interactions Transfer 对话框.
- 从材料数据库中 Transfer steel 到 simulation。
- 设置 material interactions, particle – particle 和 particle – steel,使用默认值
3.3 定义颗粒
- 单击颗粒标签。
- 单击 + 按钮输入名字 „Eulerian particle‟。
- 设置半径 2mm。
- 设置 X 为-0.5 mm。
- 单击+创建一个新的表面。
- 设置半径为 2mm。
- 设置 X 为 0.5 mm。
- 颗粒的材料为’particle’。
- 点击 lculate Properties,自动计算出颗粒的质量、体积等属性。

3.4 定义几何
- 定义几何材料
- 打开 Geometry 标签。点击Import…按钮,导入网格文件intersection_vertical.msh
在 Details 标签中,选择材料为 steel。
创建颗粒工厂几何
- 单击+按钮选择 polygon,命名 “factory”。
- 在 Details 中选择 Virtual。
- 选择 Polygon 按钮,设置如下:
3.5 创建颗粒工厂
- 创建颗粒工厂、设置颗粒工厂类型
- 点击 Fcatories 标签。
- 点击+按钮,添加一个新的颗粒工厂。
- 设置工厂类型为 Dynamic。
- 选择 Unlimited Particles。
选择速率 to 2.5e3 particles/s。
设置初始条件
- 在下拉菜单中确定选择„factory‟ 。
- 选择速度为 linear 或者 spray 点击设置按钮。
- 设置速度大大小 z=5m/s。
固相的设置已经完成。
3.6 求解器
- 设置时间步长
- 点击 Simulator 标签。
- 设置时间步长为 39%。
调整时间步长为 8e-5s。 EDEM 里面的时间步长与 Fluent 里面的时间步长比例一般在 1:1 到 100:1 之间。 EDEM 时间步长不能大于 Fluent 的时间步长。
- 设置 data write-out frequency
- 设置 write out frequency 为 0.01s。
如果有必要按时返回,从一点重新进行模拟,自动保存 case 和 data 必须在 fluent 选
择。
- 设置网格
- 设置网格尺寸为 3.5 Rmin。这将生成约 60,000 网格。
- 跟踪碰撞
- 标记 Track Collisions 。
3.7 启动耦合器
- 选择菜单Tools > EDEM Coupling Options > Show Coupling Server
- 在右下角对话框中点击按钮Start,之后EDEM处于监听状态
4 fluent其他设置
返回到FLUENT中继续设置
- 设置 2-phase 模拟
- 选择 Eulerian 作为耦合方法。
- 选择”fluid‟ 。
- 设置 sample points 为 10。
如果 sample points 为 10, 一个大的颗粒可以在 10 个网格中传输。增加 samplepoints 的大小,增加了模拟的稳定性但是减少了速度。 - 设置 momentum („MTM‟) under-relaxation 为 0.7。
减少松弛因子增加了模拟的稳定并且更加容易收敛。然而可能会使用到更多的迭代来实现收敛 。 - 设置 volume under-relaxation 为 0.6。
- 点击Open按钮,选择New EDEM input deck.dem文件
- 点击 OK。
此时看TUI输出窗口信息如下图所示,表示已经成功耦合。
此时看EDEM中耦合服务器状态,如下图所示。已经成功耦合。
- 初始化、设置文件选项
- 初始化。
a) 选择 Solve > Initialize > Initialize。
b) 选择 Compute from Inlet, 单击 Init t。 - 设置 autosave case and data option 为 25。
a) 选择 File > Write > autosave。
b) 设置为 25。时间步长为 2e-3 s,即数据文件每隔 0.05s 保存一次。 点击 File > Write > Case & Data 保存 case(.cas)和 data (.dat)文件。
.dat 文件包含了在 0s 点的几何、边界条件和其他液相(固相)信息。这个文件包含了几何、边界条件和其他仿真参数。
在仿真过程中, case 和 data 自动保存, EDEM 的文件也自动保存。
在 Fluent 设置时间
- 选择 Solve > Iterate,设置时间步长为 2e-3. 。这个味 EDEM 的时间步长的 25 倍。
- 设置时间步数为 500 步。也就是说仿真一共进行 1s。
- 设置每个时间步长的迭代步数为 60.对于 Eulerian-Eulerian 仿真,步数为 50-200。
- 选择 Iterate 开始模拟仿真。 EDEM 将会自动运行。
5 后处理
附件列表
【FLUENT案例】06:与EDEM耦合计算的更多相关文章
- Fluent-EDEM耦合计算颗粒流动
虽然说Fluent提供了很多方法用于处理颗粒在流体中的运动行为,然而这些方法都有其各自的适用性.DPM适用于稀薄颗粒的情况,欧拉模型.Mixture模型及DDPM模型虽然可以考虑稠密颗粒相,但并不能考 ...
- 【FLUENT案例】02:DPM模型
1 引子1.1 案例描述1.2 学习目标1.3 模拟内容2 启动FLUENT并导入网格3 材料设置4 Cell Zones Conditions5 Calculate6 定义Injecions7 定义 ...
- arcpy地理处理工具案例教程-景观形状指数计算
arcpy地理处理工具案例教程-景观形状指数计算 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 使用方法:输入要素类即可,其余参数均默认. 商务 ...
- 【FLUENT案例】05:DDPM模型
本例利用FLUENT的DDPM模型对提升管进行模拟. 1 介绍 本案例演示在FLUENT中利用稠密离散相模型(Dense discrete phase model,DDPM)模拟2D提升管.DDPM模 ...
- 【FLUENT案例】04:利用DDPM+DEM模拟鼓泡流化床
1 引言2 问题描述3 准备4 FLUENT前处理 1 引言 DEM碰撞模型扩展了DPM模型的功能,能够用于稠密颗粒流动的模拟.该模型可以与DDPM(Dense DPM)模型何用以模拟颗粒对主相的阻碍 ...
- 【FLUENT案例】03:冲蚀
1 引子2 问题描述3 模型准备4网格5模型设置6 材料设置7 设定注入器8 修改材料9 Cell zone Conditions设置10 边界条件设置10.1 inlet入口设置10.2 出口设置1 ...
- 【FLUENT案例】01:T型管混合器中的流动与传热
案例目录 1 引子1.1 案例描述1.2 案例学习目标2 计算仿真目标3 启动FLUENT并读入网格4 FLUENT工作界面5 网格缩放及检查6 修改单位7 设置模型8 定义新材料9 计算域设置10 ...
- 基于案例贯通 Spark Streaming 流计算框架的运行源码
本期内容 : Spark Streaming+Spark SQL案例展示 基于案例贯穿Spark Streaming的运行源码 一. 案例代码阐述 : 在线动态计算电商中不同类别中最热门的商品排名,例 ...
- Vue框架(二)——Vue指令(v-once指令、v-cloak指令、条件指令、v-pre指令、循环指令)、todolist案例、Vue实例(计算、监听)、组件、组件数据交互
Vue指令 1.v-once指令 单独使用,限制的标签内容一旦赋值,便不可被动更改(如果是输入框,可以主动修改) <!DOCTYPE html> <html lang=" ...
随机推荐
- linux poll函数
poll函数与select函数差不多 函数原型: #include <poll.h> int poll(struct pollfd fd[], nfds_t nfds, int timeo ...
- java跳出多重嵌套循环
public class BreaklFor { public static void main(String args[]){ OK: //设置一个标记 使用带此标记的break语句跳出多重循环体 ...
- webpack+react+es6开发模式
一.前言 实习了两个月,把在公司用到的前端开发模式做个简单的整理.公司里前端开发模式webpack+react+redux+es6,这里去掉了redux. webpack, react, redux等 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(60)-系统总结
系列目录 前言: 起初写这个框架的时候,可以说在当时来说并不是很流行的设计模式,那是在2012年,面向对象的编程大家都很熟悉, 但是“注入.控制反转(DI,IOC,依赖注入).AOP切面编程”新兴名词 ...
- ORACLE 11gR2 DG(Physical Standby)日常维护02
环境:RHEL 6.5 + Oracle 11.2.0.4 三.监控DG的状态 3.1监控DG备库的状态 3.2监控主库传输日志链路的状态 四.备库切换为snapshot standby 4.1备库切 ...
- redis成长之路——(三)
redis连接封装 StackExchange.Redis中有一些常功能是不在database对中,例如发布订阅.获取全部key(本代码中已封装到operation中了)等,而且StackExchan ...
- Entity Framework Extended Library
扩展了实体框架的功能类库. https://github.com/loresoft/EntityFramework.Extended 1批量更新/删除 1)删除 //delete all users ...
- 原生js可爱糖果数字时间特效
效果展示:http://hovertree.com/texiao/js/35/ 数字采用漂亮的糖果皮肤设计 效果图: 代码如下: <!DOCTYPE html> <html> ...
- 明显调用的表达式前的括号必须具有(指针)函数类型 编译器错误 C2064
看到“明显调用的表达式前的括号必须具有(指针)函数类型”这句时我才发现我的语文水平有多烂,怎么看都看不懂,折腾了半天才知道是哪里出了问题. 举个简单的例子 class CTest { void (CT ...
- Java之多态(一)
package test05; public class DuoTai_Test { /** * 一个对象,多种形态 * WQQ → Student.Worker.Friend 1).一个对象,多种形 ...