虽然说Fluent提供了很多方法用于处理颗粒在流体中的运动行为,然而这些方法都有其各自的适用性。DPM适用于稀薄颗粒的情况,欧拉模型、Mixture模型及DDPM模型虽然可以考虑稠密颗粒相,但并不能考虑颗粒之间的相互作用。DEM模型可以考虑颗粒之间的相互作用,但是FLUENT中的DEM模型仅能模拟最简单的颗粒之间相互作用(接触力模型很少),如果要考虑复杂的颗粒间相互作用,则需要考虑更专业的DEM软件。

EDEM是一款专业的DEM软件,特别适用于解决颗粒流问题。(注:这不是广告,因为适合解决颗粒流问题的DEM商用软件并不多,比较出名的就那么几款,如EDEM、PFC等,开源的DEM软件适合颗粒流计算的软件有LIGGGHTS)。DEM软件主要用于两个方向,一个专注于模拟如岩土之类的颗粒粘结固体,一类专注于颗粒流动。

本案例主要描述利用FLUENT与EDEM软件耦合解决颗粒在流体中的运动轨迹计算。其中EDEM软件负责颗粒的运行轨迹计算,FLUENT软件负责计算流体流场。

1 案例描述

本案例考虑气力分选问题。模型几何如图所示。



固体颗粒由上方进料口进入计算域,流体从左侧入口进入。划分计算网格如图所示。



受计算资源限制,这里网格划分得比较粗,如果是真实计算,网格要划分得密一些。

2 Fluent设置

  • step 1:采用3D并行启动Fluent
  • step 2:导入网格
  • step 3:采用瞬态计算,考虑重力加速度沿-y方向9.81 m/s2
  • step 4:采用realizable k-epsilon湍流模型
  • step 5:边界条件inlet为velocity,设置速度为8m/s;outlet边界为outflow,其他边界采用默认设置
  • step 6:Solution Methods中设置pressure-velocity Coupling Scheme为PISO

    保存cas文件。

3 EDEM设置

  • step 1:启动EDEM2017,保存文件为ex.dem
  • step 2:鼠标右键选择BulkMaterial,选择Add Bulk Material

  • ** step 3**:修改材料名称为weight,设置密度为500 kg/m3

  • step 4:同样的步骤创建另一材料light,修改其密度为120kg/m3

  • step 5:材料weight上点击右键,选择Add Particle

  • step 6:设置颗粒粒径为2mm,并计算颗粒属性,修改颗粒名称为weightParticle

  • step 7:相同步骤在light上创建颗粒,粒径为1mm,修改颗粒名称为lightParticle
  • step 8:添加颗粒间相互作用。鼠标选中weight,选中下方面板中Interaction下的添加相互作用按钮,添加weight-weight以及weight-light相间的相互作用,这里暂时采用默认参数

  • step 8:鼠标选中light,相同的步骤添加light-light相互作用,参数暂时采用默认
  • step 9:添加壁面材料。右键选择列表项Equipment Materials,选择Add Eauipment Materials,材料参数采用默认参数,修改材料名称为steel

  • step 10:在steel材料上添加相互作用steel-light以及steel-weight,参数采用默认
  • step 11:右键选择Geometries,选择菜单Import Geometry…,在打开的文件选择对话框中选择前面创建的msh文件,导入计算域,修改名称为domain。

  • step 12:创建几何用于释放颗粒。右键选择Geometries,选择菜单Add Geometry → Polygon



    修改名称为injector,并设置其Type为Virtual

  • step 13:修改Injector的Polygon属性,如下图所示

  • step 14:右键选择injector,选择弹出菜单Add Factor

  • step 15:选择Factory Type为Unlimited Number,设置parameters下的material为weight,设置速度为y方向-0.5m/s;
  • step 16:同样的步骤创建另外一个factory,只不过设置材料为light,速度仍然为y方向-0.5m/s

  • step 16:选择Environment,设置重力加速度为y方向-9.81m/s2



    保存工程文件。
  • step 17:进入Simulator功能,设置cell size10R,其他参数保持默认。这里不需要设置total time,因为后面设置耦合后仿真计算总时间由Fluent决定。

4 耦合设置

  • step 18:在EDEM中开启耦合

  • step 19:在Fluent中load加载EDEM-FLUENT Coupling耦合UDF

  • step 20:Fluent的Models中双击列表项EDEM Coupling,弹出的对话框中选择按钮connect

  • step 21:Fluent中启动计算

5 结果分析

  • 无耦合计算结果



    颗粒径直下落到底部。

  • 耦合计算结果

    轻相颗粒(蓝色)被分离。

案例文件

Fluent-EDEM耦合计算颗粒流动的更多相关文章

  1. 【FLUENT案例】06:与EDEM耦合计算

    折腾了很久才把耦合模块搞定,用的还是网上别人编译好的UDF,不完美.自己编译的时候,老是提示无法找到fluent中的一些头文件,个人怀疑是操作系统和visual studio的问题,有时间换个系统和V ...

  2. 【FLUENT案例】02:DPM模型

    1 引子1.1 案例描述1.2 学习目标1.3 模拟内容2 启动FLUENT并导入网格3 材料设置4 Cell Zones Conditions5 Calculate6 定义Injecions7 定义 ...

  3. 【FLUENT案例】04:利用DDPM+DEM模拟鼓泡流化床

    1 引言2 问题描述3 准备4 FLUENT前处理 1 引言 DEM碰撞模型扩展了DPM模型的功能,能够用于稠密颗粒流动的模拟.该模型可以与DDPM(Dense DPM)模型何用以模拟颗粒对主相的阻碍 ...

  4. CFD计算

    47 求解器为flunet5/6在设置边界条件时,specify boundary types下的types中有三项关于interior,interface,internal设置,在什么情况下设置相应 ...

  5. 【FLUENT案例】03:冲蚀

    1 引子2 问题描述3 模型准备4网格5模型设置6 材料设置7 设定注入器8 修改材料9 Cell zone Conditions设置10 边界条件设置10.1 inlet入口设置10.2 出口设置1 ...

  6. CFD计算过程发散诸多原因分析【转载】

    转载自: http://blog.sina.com.cn/s/blog_5fdfa7e601010rkx.html 今天探讨引起CFD计算过程中发散的一些原因.cfd计算是将描述物理问题的偏微分方程转 ...

  7. tecplot无法处理高版本fluent导出的Ensight格式

    高版本的Fluent完成计算,将计算结果导出为Ensight格式,然后再导入tecplot当中进行后处理的时候会遇见如下的错误: 但是将低版本的Fluent计算结果导出为Ensight格式,却可以顺利 ...

  8. Ubuntu1604下安装Liggghts及CFDEM Coupling

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

  9. 【CFD之道】2017年原创文章汇总

    1 Fluent案例(21篇) [Fluent案例]01 空气流经障碍物 [Fluent案例]02:Tesla阀 [Fluent案例]03:RAE2822翼型外流场计算 [Fluent案例]04:多孔 ...

随机推荐

  1. TextField的文字距左边框的距离偏移

    默认情况下,当向textField输入文字时,文字会紧贴在textField左边框上. 我们可以通过设置textField的leftView,设置一个只有宽度的leftView. 这样还不够,因为默认 ...

  2. php文件粘贴上传

    <?php header("Access-Control-Allow-Origin:*"); $url = 'http://'.$_SERVER['HTTP_HOST']; ...

  3. Javascript基础(2)

    开始更咯~~~嘻嘻. ---------------------------------------------------------------------------------- 异常捕获:即 ...

  4. 为什么我们不喜欢用富UI控件

    我们对于理解一般意义的抽象关系并没有问题,但如第一部分使用Entity Framework 时说明的,事实恰好相反.我们还喜欢在交付应用程序时利用抽象关系,比如使用Azure等云服务.在这两种情况下, ...

  5. List<String^>^ 引用空间

    莫名其妙报错 需要在.h和.cpp文件中都引用: using namespace System::Collections;using namespace System::Collections::Ge ...

  6. java学习之 垃圾回收

    垃圾回收器始终以一个较低优先级的后台进程进行垃圾的回收工作,这样不会影响程序的正常工作. 通常只有当内存到达用尽的边缘而程序需要分配新的内存空间时,垃圾回收器才会执行. 垃圾回收的条件:1,垃圾回收器 ...

  7. IOS QuartzCore核心动画框架

    IOS QuartzCore核心动画框架 核心动画框架 使用核心动画需要引入的框架:#import CALayer: CoreAnimation CALayer就是UIView上的图层,很多的CALa ...

  8. IOS--UITextFiled的使用方法

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for ...

  9. block 数组排序

    #import <Foundation/Foundation.h> //定义⼀一个block,返回值为BOOL,有两个NSString参数.实现:判 //断字符串是否相等. BOOL (^ ...

  10. Windows开发技术的历史

    原文地址:http://www.kuqin.com/windows/20090315/40172.html Windows已经有22年的历史,这22年来,微软官方主力推行的编程语言与API有四个分水岭 ...