本案例演示利用STAR CCM+的粗颗粒(Coarse Grain Particle)模型模拟流化床问题。
注:本案例为STAR CCM+随机案例,相关文件可自行在官网下载。
1 问题描述
流化是指通过在气体或液体中悬浮,将固体颗粒转化为类似流体的状态的过程。颗粒流化是许多工业过程的一部分,包括生物质燃料生产、流体催化裂化(FCC)和流化床气化器。容纳流化床的容器称为流化床反应器。
本教程演示了使用DEM技术建模流化床的工作流程,该工作流程在结果的准确性和仿真速度之间达到了平衡。在这个仿真中,不考虑热量和质量传递。使用一个简单的圆柱形几何体来模拟流化床反应器。几何体的底部入口边界模拟了气体分配器(如喷射器)的行为,将反应器的鼓风室多孔区域与被流化颗粒占据的内部空间分开。
下图显示了本教程中使用的几何体:
空气以1.49 kg/s的指定流量通过质量流量入口流入反应器,从而提供恒定的表观速度,该速度高于最小流化速度。空气通过压力出口离开计算域。流入和流出边界对固体颗粒不透水。所有固体颗粒都在第一个时间步进入区域,从而减少了它们在反应器中沉降所需的时间。
对于涉及相对较少颗粒的流动,可以为每个颗粒制定并求解控制方程。但是,如果颗粒数量很大,则统计方法更实用。为此,STAR-CCM+提供了Parcel Contact Coarse Grain Particle模型,其中减少数量的计算包裹统计地代表多个较小的相同颗粒。这种方法减少了DEM仿真的计算时间,特别是那些具有高装载量的小固体颗粒(如流化床应用)的仿真。线性内聚模型也被应用于模拟颗粒之间的分子吸引力或湿颗粒之间的内聚作用。该模型与接触模型同时起作用,因此当颗粒附着时,Parcel Contact Coarse Grain和Linear Cohesion模型同时工作。双向耦合模型从仿真开始就被激活,允许颗粒相与连续相交换质量和动量。
2 加载及启动仿真文件
可以通过加载一个包含圆柱反应器几何体、预定义网格操作、区域和边界的仿真文件来开始本教程。仿真中的几何体和其他各种设置都是参数化的。基础参数已经包含在开始仿真文件中。要加载开始仿真文件,请按照以下步骤操作:
-
启动STAR-CCM+,然后选择File > Load…。 -
在 Load a File
对话框中: -
选择一个合适的Process Option。串行和并行进程都适合本教程。 -
点击Browse。 -
在Open对话框中,选择fluidizedBed.sim。 -
点击Open,然后点击OK。 -
要生成网格,请右键单击Geometry > Operations > Automated Mesh节点,然后选择Execute。 -
要查看网格,请创建一个新的网格场景。
-
展开Tools > Parameters节点,查看预定义的参数。下表列出了它们的定义:
Parameter | Value | Definition |
---|---|---|
Fluid Density | 1.18415 kg/m^3 | 流化床中流体的密度,本案例中流体为空气,密度指定为恒定值。 |
Fluid Mass Flow Rate | ${Fluid Density}*${Fluid Velocity}*acos(-1)*pow(${Reactor Radius},2) |
进入流化床的流体质量流量 |
Fluid Velocity | 2.5 m/s | 入口边界处流体速度的恒定设定值 |
Parcel Diameter | 20.0 mm | 颗粒包直径。每个颗粒包包含多个颗粒 |
Particle Count | floor(pow(${Parcel Diameter}/${Particle Diameter},3)) |
颗粒数量 |
Particle Diameter | 4.0 mm | 颗粒直径 |
Parcel Number | floor(0.6*6*${Reactor Radius}*${Reactor Radius}*${Reactor Fill Level}/pow(${Parcel Diameter},3)) |
颗粒包数量 |
Pi | 3.141592654 | 圆周率 |
Reactor Fill Level | 0.4 m | 反应器最初填充颗粒的高度 |
Reactor Height | 2.0 m | 反应器高度 |
Reactor Radius | 0.4 m | 反应器半径 |
其中流体质量流量:
其中,为流体密度;为流体速度;为反应器半径。
颗粒包数量:
其中,为平均颗粒包直径;为平均颗粒粒径。
颗粒包数量:
其中,其中0.6是假定的颗粒包随机包装量;为反应器初始充填高度。
3 选择模型
使用离散元模型来模拟空气和固体颗粒的非稳态双向耦合流动。使用空气的默认材料属性,但是将流体密度参数化,以便在需要时进行简单的修改。
-
对于物理连续体Continua > Physics 1,选择以下模型:
-
Three Dimensional -
Gas -
Coupled Flow -
Constant Density -
Implicit Unsteady -
Laminar -
Gravity -
Lagrangian Multiphase -
Discrete Element Model (DEM) -
选择模型树节点 Continua > Physics 1 > Models > Gas > Air > Material Properties > Density > Constant ,设置其值为**${Fluid Density}**
-
保存仿真模型
4 定义粗粒度颗粒
使用拉格朗日相来定义模拟中的固体颗粒。使用了Parcel Contact Coarse Grain颗粒形状模型,这个模型非常适合流化床应用,其中流体-颗粒相互作用的准确性很重要。在这个模型中,每个模拟的颗粒都是一个包裹,统计地代表多个较小的相同颗粒。该模型对单个代表性颗粒计算流体-颗粒相互作用,并将结果应用于包裹中的所有较小颗粒。每个粗粒包裹中的单个颗粒的数量取决于您稍后为喷射器指定的包裹和颗粒大小。
要定义粗粒颗粒,请按以下步骤操作:
-
右键单击Continua > Physics 1 > Models > Lagrangian Multiphase > Lagrangian Phases节点,选择New。 -
将新相重命名为Particle。 -
双击Particle > Models节点,按顺序选择以下模型: -
DEM Particles -
Parcel Contact Coarse Grain -
Solid -
Constant Density -
Drag Force -
Two-Way Coupling -
选择Particle > Models > Drag Force > Drag Coefficient节点,将Method设置为Gidaspow。 -
设置颗粒的材料属性。 -
设置 Density
为2200 kg/m3 -
设置 Young's Modulus
为100 MPa -
展开Models > Solid节点,将Rubber重命名为Catalyst。 -
展开Catalyst > Material Properties节点,设置以下属性: -
保存模拟。
5 指定边界条件
空气通过底部边界以2.5 m/s的入口速度进入圆柱形反应器,相当于1.49 kg/s的质量流量。空气通过顶部的压力出口边界离开反应器。这两个流动边界对固体颗粒都是不透水的。
要指定边界条件,请按以下步骤操作:
-
展开Regions > Domain > Boundaries节点。 -
选择Bottom并在Properties节点中将Type设置为Mass Flow Inlet。 -
选择Bottom > Phase Conditions > Particle节点,将Type设置为Phase Impermeable。 -
选择Bottom > Physics Values > Mass Flow Rate节点,将Value设置为${Fluid Mass Flow Rate}。 -
选择Boundaries > Top节点,将Type设置为Pressure Outlet。 -
选择Top > Phase Conditions > Particle节点,将Type设置为Phase Impermeable。 -
保存模拟
6 定义DEM颗粒相间作用
使用Hertz-Mindlin模型来模拟这些情况下的接触效应。为了考虑颗粒表面之间的分子间吸引力,例如范德华力或凝聚力,案例选择了线性凝聚模型。
要定义DEM颗粒相互作用,请按以下步骤操作:
-
定义粗粒颗粒之间的相互作用: -
指定 Static Friction Coefficient
为0.6 -
指定 Normal Restitution Coefficient
为0.1 -
指定 Tangential Restitution Coefficient
为0.1 -
指定 DEM Contact Model
为Hertz Mindlin -
指定 Optional Models
为Linear Cohesion -
右键单击Continua > Physics 1 > Models > Multiphase Interaction > Phase Interactions节点,选择New > Particle > Particle。 -
将Phase Interaction 1节点重命名为Particle-Particle。 -
双击Particle-Particle > Models节点,按顺序选择以下模型: -
在Particle-Particle Model Selection对话框中,取消选择Rolling Resistance。 -
选择Particle-Particle > Models > Hertz Mindlin节点,设置以下属性: -
选择Models > Linear Cohesion > Work of Cohesion节点,将Value设置为1.0 N/m。 -
定义颗粒与墙壁之间的相互作用: -
指定 Static Friction Coefficient
为0.15 -
指定 Normal Restitution Coefficient
为0.1 -
指定 Tangential Restitution Coefficient
为0.1 -
右键单击Continua > Physics 1 > Models > Multiphase Interaction > Phase Interactions节点,选择New > Particle > Wall。 -
将Phase Interaction 1节点重命名为Particle-Wall。 -
双击Particle-Wall > Models节点,在DEM Contact Model组中选择Hertz Mindlin。在Enabled Models组框中,取消选择Rolling Resistance。 -
选择Particle-Wall > Models > Hertz Mindlin节点,设置以下属性: -
定义颗粒与对颗粒不透水的流动边界之间的相互作用。 -
复制并粘贴Particle-Wall节点到Phase Interactions节点上,并将副本重命名为Particle-Phase Impermeable。 -
选择Particle-Phase Impermeable > Models > DEM Phase Interaction节点,将Second Phase设置为Phase Impermeable。 -
保存模拟。
7 定义颗粒入射
创建一个喷射器,用于将颗粒随机注入反应器。喷射器输入所选的部件是初始文件中创建的Injection Volume几何部件。这将注入限制在反应器的那个区域内。喷射器将包裹注入到Injection Volume中,分布接近真实反应器中颗粒的随机堆积。包裹以-0.1 m/s的速度沿负Z方向注入。
要设置喷射器,请按以下步骤操作:
-
右键单击Injectors节点,选择New。
-
选择Injectors > Injector 1节点,设置以下值:
-
指定Lagrangian Phase为Particle -
指定Type为Random Injector -
指定Inputs为Parts > Injection Volume -
选择Injector 1 > Conditions > Particle Packing Specification节点,将Method设置为Particle Count。
-
选择Injector 1 > Values节点,设置以下值:
-
指定Number of Seeds为 ${Parcel Number}*12
-
指定Number of Particles为 ${Parcel Number}
-
指定Particle Count为 ${Particle Count}
-
指定Particle Diameter为 ${Particle Diameter}
-
指定Velocity为 [0.0, 0.0, -0.1] m/s
-
保存模拟。
8 可视化运动中的 DEM颗粒
创建一个可视化场景,用于显示DEM颗粒的速度大小,并在圆柱形反应器的横截面上显示空气的速度大小。为了能够创建流化床的动画,需要设置一个求解历史文件。可视化场景和解决方案历史文件都已经在初始文件中创建,以方便您使用,但您需要完成设置。
要可视化DEM颗粒,请按以下步骤操作:
-
创建包裹和颗粒计数报告 -
指定 Field Function
为Particle > Particle Count -
指定 Parts
为Lagrangian Phases > Particle -
右键单击Reports节点,选择New > User > Element Count,并将新报告重命名为Element Count Parcels。 -
选择Element Count Parcels节点,并将Parts设置为Lagrangian Phases > Particle。 -
右键单击Reports节点,选择New > User > Sum,并将新报告重命名为Sum Particle Count。 -
选择Sum Particle Count节点,并设置以下属性: -
设置DEM场景 -
指定 Parts
为Derived Parts > Particle -
指定 Scalar Field > Function
为Velocity > Lab Reference Frame > Magnitude -
指定 Scalar Field > Auto Range
为Off -
指定 Parts
为Derived Parts > Plane Section -
指定 Scalar Field > Function
为Velocity > Lab Reference Frame > Magnitude -
指定 Scalar Field > Auto Range
为Off -
打开Scenes > DEM Scene并选择Scene/Plot选项卡。 -
在工具栏中单击Save-Restore-Select Views,并选择Standard Views > (-Y) left。 -
在工具栏中单击Reset View以调整反应器的位置,使其完全适应场景。 -
展开Scalar Fluid节点,并设置以下属性: -
展开Scalar Particles节点,并设置以下属性: -
使用报告为场景创建注释 -
指定 Text
为Particles: $SumParticleCountReport Parcels: $ElementCountParcelsReport
-
指定 Default Height
为 0.1 -
在Simulation选项卡中,右键单击Tools > Annotations节点,选择New > Simple Text。 -
将User节点重命名为Particle Data。 -
选择Particle Data节点,并设置以下属性: -
将Particle Data节点拖到DEM场景的左上角。 -
将Solution Time节点拖到场景的左下角。
-
设置解决方案历史文件,以便在模拟运行后能够对结果进行动画处理: -
选择 Solution Histories > fluidizedBed_start节点并设置以下属性:
Property | Value |
---|---|
Functions | Parcel > Parcel Index |
Particle > Particle Velocity > Magnitude | |
Velocity > Lab Reference Frame > Magnitude | |
Inputs | Derived Parts > Plane Section |
Lagrangian Phases > Particle |
5.保存模拟。
9 仿真求解
设置物理时间为4.0 s,时间步长为0.01 s。为了稳定模拟,将耦合隐式求解器的CFL值线性地增加。
要定义求解器参数,请按以下步骤操作:
-
选择Solvers > Implicit Unsteady节点,将Time-Step设置为0.01 s。 -
编辑Solvers > Lagrangian Multiphase节点,设置以下属性:
Node | Property | Setting |
---|---|---|
Load Balancing | Enabled | Activated |
Implicit Unsteady | Maximum Sub-Steps | 2000000 |
Update Frequency | Once per Time Step | |
Two-Way Coupling > Volume Source Smoothing Method | Method | Cell Cluster |
Volume Source Smoothing Method > Cell Cluster > Cluster Length | Method | Absolute |
Cluster Length > Absolute | Length | ${Parcel Diameter}*1.3 |
-
选择Partitioning > Load Balancing Options并在Properties中将Rebalance Frequency设置为5。 -
选择Solvers > DEM Solver节点,将Reordering Frequency设置为100。 -
编辑Solvers > Coupled Implicit节点,设置以下属性:
Node | Property | Setting |
---|---|---|
Coupled Implicit | CFL Control Method | Linear Ramp |
Coupled Implicit > Linear Ramp CFL | Target CFL | 1000.0 |
End Iteration | 20 |
要设置停止条件,请按以下步骤操作:
-
选择Stopping Criteria节点,设置以下值:
Node | Property | Setting |
---|---|---|
Maximum Inner Iterations | Maximum Inner Iterations | 3 |
Maximum Physical Time | Maximum Physical Time | 4.0 s |
Maximum Steps | Enabled | Deactivated |
-
单击Run。 -
当模拟运行完成后,保存文件。
10 计算结果
按照以下步骤操作创建动画:
-
在Scene/Plot选项卡中打开DEM Scene场景。 -
选择Scalar Fluid节点,并将Representation设置为fluidizedBed_start。 -
选择Scalar Particles节点,并将Representation设置为fluidizedBed_start。 -
选择DEM Scene > Attributes > Annotations > Solution Time节点,并将Representation设置为fluidizedBed_start。 -
创建粒子的动画: -
点击Animation工具栏中的 (Write Movie) 图标。 -
在Write animation对话框中,将File Name设置为fluidizedBed.mp4。 -
点击Save。
可以在标准的媒体播放器中查看fluidizedBed.mp4文件。
(完)
本篇文章来源于微信公众号: CFD之道
评论前必须登录!
注册