虽然说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. helloServlet

    创建第一个web程序 用myeclipse创建一个web项目,继而创建一个servlet 自动帮助你创建了一个web.xml文件 <servlet>....<servlet>指 ...

  2. ETLLib库走读

    以前从来也没想过要去看库里的代码,咱想,那怎么也是很底层的代码,居然发现库里的代码也可以这样写,那就先读懂这个ETLLib(跨windows与Linux平台,封装了一些基本的系统调用函数,然后实现定制 ...

  3. 在静态页面html中跳转传值

    在html中通过"?"传值--------<a href="index2.html?name=caoy">静态传值</a> 在跳转到的页 ...

  4. Become a Windows Insider and Test New Windows 10 Features

    SR: To write an Edge browser extension. Microsoft is releasing Windows 10 build 14291 with browser e ...

  5. angularJS中如何写自定义指令

    指令定义 对于指令,可以把它简单的理解成在特定DOM元素上运行的函数,指令可以扩展这个元素的功能 例如,ng-click可以让一个元素能够监听click事件,并在接收到事件的时候执行angularJS ...

  6. MySql数据库3【优化1】表的优化

    一.表结构的优化 1.标准化  标准化是在数据库中组织数据的过程.其中包括,根据设计规则创建表并在这些表间建立关系:通过取消冗余度与不一致相关性,该设计规则可以同时保护数据并提高数据的灵活性.通常数据 ...

  7. 《学习Opencv》第五章 习题6

    这是第五章 习题5.6的结合版,其中实现了摄像头抓拍功能,能够成功运行. #include "stdafx.h" #include "cv.h" #includ ...

  8. 在zend studio 9.* 中使用phpunit进行单元测试

    单元测试在用PHP开发大型项目时必备的减少测试难度和提高测试效率的利器,而PHPUnit是php做单元测试时使用范围最广的一个.如果在window系统中开发,就要调用控制台来运行phpunit,非常的 ...

  9. Node.js事件循环

    Node JS是单线程应用程序,但它通过事件和回调概念,支持并发. 由于Node JS每一个API是异步的,作为一个单独的线程,它使用异步函数调用,以保持并发性.Node JS使用观察者模式.Node ...

  10. SKYLINE

    uvalive4108:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&pag ...