Professional Documents
Culture Documents
振动流化床仿真操作过程及参数选择
振动流化床仿真操作过程及参数选择
振动流化床仿真操作过程及参数选择
振动流化床仿真操作过程及参数选择
1 创建流化床模型。
根据靳海波论文提供的试验机参数,创建流化床模型。流化床直
148mm,高 1m,开孔率 9%,孔径 2mm。在筛板上铺两层帆布保证气流均布。
因为实验机为一个圆形的流化床,所以可简化为仅二维模型。而实际实
验中流化高度远小于 1m,甚至 500mm,所以为提高计算时间,可将模型高度
缩为 500mm。由于筛板上铺设两层帆布以达到气流均分的目的,所以认为沿
整个筛板的进口风速为均匀的。最终简化模型如下图所示:
上图为流化后的流化床模型,可以看出流化床下端的网格相对上端较密,
因为流化行为主要发生的流化床下端,为了加快计算时间,所以采用这种下
密 上 疏 的 划 分 方 式 。 其 中 进 口 设 置 为 velocity inlet ; 出 口 设 置 为
outflow;左右两边分为设置为 wall。在 GAMBIT 中设置完毕后,输出二维模
型 vfb.msh。
outflow 边界条件不需要给定任何入口的物理条件,但是应用也会有限
文案大全
实用文案
制,大致为以下四点:
1.只能用于不可压缩流动
2.出口处流动充分发展
3.不能与任何压力边界条件搭配使用(压力入口、压力出口)
4.不能用于计算流量分配问题(比如有多个出口的问题)
点击 GRID—CHECK,检查网格信息及模型中设置的信息,核对是否正确,
尤其查看是否出现负体积和负面积,如出现马上修改。核对完毕后,点击
GRID-SCALE 弹 出 SCALE GRID 窗 口 , 设 置 单 位 为 mm , 并 点 击 change length
unit 按钮。具体设置如下:
3 设置求解器
文案大全
实用文案
文案大全
实用文案
4 设置多相流模型。
设置为欧拉模型,相数设置为 2 即为两相流,具体设置如下:
5 设置粘性模型。
文案大全
实用文案
使用第 0 种低雷诺数模型。
第三步,Fluent 中提供 6 种低雷诺数模型,使用 low-re-ke-index 命令设定一
种。
low-re-ke-index
Index Model
0 Abid
1 Lam-Bremhorst
2 Launder-Sharma
3 Yang-Shih
4 Abe-Kondoh-Nagano
5 Chang-Hsieh-Chen
本仿真中默认使用第 0 种低雷诺数模型。
标准 k-epsilo 模型使用与湍流发展非常充分的湍流流动建立的,它是一种
针对高雷诺数的湍流计算模型,它比零方程模型和一方程模型有了很大的改进,
但是在用于强旋流、弯曲壁面流动或弯曲流线流动时会产生失真。而相较标准
模型,RNG k-ε 模型修正了湍动粘度,考虑了平均流动的旋转及旋流流动情况,
可以更好地处理高应变率及流线弯曲成都较大的流动,它还是针对充分发展的
湍流,即还是高雷诺数模型。Realizable k-ε 模型一般被应用在包含有射流
和混合流的自由流动、管道内流动、边界层流动等。由于实际计算出的雷诺数
较小,和上述三种湍流模型都不是很匹配。而在 FLUENT 提供了数种专家模型,
他们针对标准 K-ε 进行部分修正,使其能够适合低雷诺数使用,即为低雷诺数
k-epsilo 模型。
6 定义材料属性。
文案大全
实用文案
7 定义相。
DEFINE-PHASE。首先定义空气为主相,操作如下:
文案大全
实用文案
(20.4.31)
这里曳力函数采用由 Dalla Valle[47]给出的形式:
(20.4.32)
这个模型是基于流化床或沉淀床颗粒的末端速度的测量,并使用了体积分数
和相对雷诺数的函数关系式[193]:
(20.4.33)
文案大全
实用文案
d
这里下标l 是第l 液体相, s 是第 s 固体相, s 是第 s 固体相颗粒的直径。
液体-固体交换系数有如下形式
(20.4.34)
这里
v r , s 是与固体相相关的末端速度[73]:
(20.4.35)
其中
(20.4.36)
对
α l≤0. 85 , (20.4.37)
对α >0 . 85 , (20.4.38)
当固体相的剪切应力根据 Syamlal et al 定义时[235](方程 20.4.52),这
个模型是合适的。
(2)对 Wen and Yu 模型[262],液体-固体交换系数有如下形式:
(20.4.39)
这里,
(20.4.40)
Re 数由方程 20.4.33 定义。
这个模型适合于稀释系统。
(3)Gidaspow 模型[76]是 Wen and Yu 模型[262]和 Ergun 方程[62]的联合。
当
α l >0 . 8 时,液体-固体交换系数 K sl 有如下形式:
(20.4.41)
这里 (20.4.42)
当
α l≤0. 8 时,
文案大全
实用文案
(20.4.43)
对密集的流化床,建议使用这个模型。
由于本流化床内的粒子直径远大于粒子间的距离,这样对接近充满的颗粒
包含升力是不合适,所以忽略升力的影响,在 LIFT 选项选择 NONE。在恢复系数
选项下保持默认的设置值 0.9。由于第二相密度远大于第一相,所以可以忽略
虚拟质量力。具体设置如下。
8 编译 UDF 程序。
Define-user-defined-function-compiled,导入程序。
文案大全
实用文案
9 定义动网格。
在 FLUENT 中,动网格模型可以用来模拟由于流域边界运动引起流域形状随
时间变化的流动情况。这种流动情况即可以使一种指定的运动(随时间变化)
也可以使未确定的运动(随某变化的参数变化),即边界的运动要由前一步的
计算结果决定。各个时间不的体网格的更新基于边界条件新的位置,有 FLUENT
自动完成。
动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似
光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和
局部重划模型(local remeshing)。
弹簧近似光滑模型
在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移
动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边
界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。
边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,
文案大全
实用文案
弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在
新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,
采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新
的网格节点位置,这就是弹簧光顺法的核心思想。
原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区
域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法:
(1)移动为单方向。
(2)移动方向垂直于边界。
如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,
只有四面体网格(三维)和三角形网格(二维)可以使用弹簧光顺法,如果想
在其他网格类型中激活该模型,需要在 dynamic-mesh-menu 下使用文字命令
spring-on-all-shapes?,然后激活该选项即可。
动态层模型
对于棱柱型网格区域(六面体和或者楔形),可以应用动态层模型。动态
层模型的中心思想是根据紧邻运动边界网格层高度的变化,添加或者减少动态
层,即在边界发生运动时,如果紧邻边界的网格层高度增大到一定程度,就将
其划分为两个网格层;如果网格层高度降低到一定程度,就将紧邻边界的两个
网格层合并为一个层:
如果网格层 j 扩大,单元高度的变化有一临界值:
H_min>(1+alpha_s)*h_0
式中 h_min 为单元的最小高度,h_0 为理想单元高度,alpha_s 为层的分割
因子。在满足上述条件的情况下,就可以对网格单元进行分割,分割网格层可
以用常值高度法或常值比例法。在使用常值高度法时,单元分割的结果是产生
相同高度的网格。在采用常值比例法时,网格单元分割的结果是产生是比例为
alpha_s 的网格。
若对第 j 层进行压缩,压缩极限为:
H_min<alpha_c*h_0
式中 alpha_c 为合并因子。在紧邻动边界的网格层高度满足这个条件时,
则将这一层网格与外面一层网格相合并。
动网格模型的应用有如下限制:
(1)与运动边界相邻的网格必须为楔形或者六面体(二维四边形)网格。
(2)在滑动网格交界面以外的区域,网格必须被单面网格区域包围。
(3)如果网格周围区域中有双侧壁面区域,则必须首先将壁面和阴影区分割开,
再用
滑动交界面将二者耦合起来。
文案大全
实用文案
文案大全
实用文案
使用弹簧近似光滑法网格拓扑始终不变,无需插值,保证了计算精度。但
弹簧近似光滑法不适用于大变形情况,当计算区域变形较大时,变形后的网格
会产生较大的倾斜变形,从而使网格质量变差,严重影响计算精度。动态分层
法在生成网格方面具有快速的优势,同时它的应用也受到了一些限制。它要求
运动边界附近的网格为六面体或楔形,这对于复杂外形的流场区域是不适合的。
使用局部网格重划法要求网格为三角形(二维)或四面体(三维),这对于适
应复杂外形是有好处的,局部网格重划法只会对运动边界附近区域的网格起作
用。
设置动网格问题的步骤如下:
(1)激活动网格模型,并设定相应参数,菜单操作如下:
Define -> Dynamic Mesh -> Parameters...
(2)指定移动网格区域的运动参数,菜单操作如下:
Define -> Dynamic Mesh -> Zones...
(3)保存算例文件和数据文件。
(4)预览动网格设置,菜单操作为:
Solve -> Mesh Motion...
文案大全
实用文案
文案大全
实用文案
info 中的值是整个网格的评价值,设置的时候看一下动网格附近的网格和整个
网格区域的大小比较,然后确定这两个参数,一般来讲,动网格附近的网格较
密,这些值都比整体的小,所以在设置时通常设置为比 mesh scale info 中的
Minimum length scale 大一点,比 Maximum Length Scale 小一点。
10.设置边界条件
文案大全
实用文案
自然界流体按流体形态分为两种形式层流和湍流,在气固流化中,雷诺数为
d p uρg
Re p=
μg
Re DH
为按水里直径 DH 计算得
'
其中, u 和 u 分别为湍流脉动速度和平均速度,
到的雷诺数,对于圆管,水力直径 DH 等于圆管直径,对于其他的几何形状,按
~
√
3
v = u Il
2
式中,取 0.09。如果已知湍动粘度比,则湍动耗散率按下式计算:
( )
−1
k 2 μt
ε =ρC μ
μ μ
文案大全
实用文案
SIMPLE
SIMPLE 算法使用压力和速度之间的相互校正关系来强制质量守恒并获取压力场。
如果用猜测压力场 p^*来解动量方程,从连续性方程离散一节中的方程 5 所
得到的表面流量 J^*_f 为:
J ¿f =J^ ¿f +d f ( p¿c 0 −p ¿c 1 )
其中 p^'是单元压力校正。
SIMPLE 算法将流量校正方程(方程 3 和 5)代入到离散连续性方程(连续性
方程的离散一节中的方程 3)从而得到单元内压力校正 p^'的离散方程。
a P p =∑ a nb pnb +b
' '
nb
其中,源项 b 是流入单元的净流速。
N faces
b= ∑ J ¿f
f
压力校正方程(方程 7)可以用代数多重网格一节中所介绍的代数多重网格方
法来解。一旦得到解,使用下面的方程校正单元压力和表面流动速度:
文案大全
实用文案
¿ '
p= p +α p p
J f =J ¿f +d f ( p'c 0 − p'c 1 )
在这里,a_p 是压力亚松驰因子(请参阅亚松驰方面的介绍)。校正后的表面
流速 J_f 在每一部迭代中同一地满足离散连续性方程。
欠松弛因子
由于流体力学中要求解非线性的方程,在求解过程中,控制变量的变化是很
必要的,这就通过松弛因子来实现的.它控制变量在每次迭代中的变化.也就是说,
变量的新值为原值加上变化量乘以松弛因子.
如:A1=A0+B*DETA
A1 新值 A0 原值 B 松弛因子 DETA 变化量
松弛因子可控制收敛的速度和改善收敛的状况!
为 1,相当于不用松弛因子
大于 1,为超松弛因子,加快收敛速度
小于 1,欠松弛因子,改善收敛的条件
一般来讲,大家都是在收敛不好的时候,采用一个较小的欠松弛因子。
Fluent 里面用的是欠松弛,主要防止两次迭代值相差太大引起发散。
松弛因子的值在 0~1 之间,越小表示两次迭代值之间变化越小,也就越稳
定,但收敛也就越慢。
在 FLUENT 中,所有变量的默认亚松驰因子都是对大多数问题的最优值。这
个值适合于很多问题,但是对于一些特殊的非线性问题(如:某些湍流或者高
Rayleigh 数自然对流问题),在计算开始时要慎重减小亚松驰因子。
使用默认的亚松驰因子开始计算是很好的习惯。如果经过 4 到 5 步的迭代
残差仍然增长,你就需要减小亚松驰因子。
有时候,如果发现残差开始增加,你可以改变亚松驰因子重新计算。在亚
松驰因子过大时通常会出现这种情况。最为安全的方法就是在对亚松驰因子做
任何修改之前先保存数据文件,并对解的算法做几步迭代以调节到新的参数。
最典型的情况是,亚松驰因子的增加会使残差有少量的增加,但是随着解的进
行残差的增加又消失了。如果残差变化有几个量级你就需要考虑停止计算并回
到最后保存的较好的数据文件。
三种判断收敛的方法:
1.残差达到一个可以接受的程度:默认出了能量是 10^-6 以外,其余的
全是 10^-3。
2.求解值不再随迭代发生改变:有时候,残差还在下降,但是某些监视
的流动变量不再发生明显变化即可停止迭代。
文案大全
实用文案
型的格式[95]是通过变量的二阶迎风与中心插值加上适当的权因子得到的;
12.初始化
1、为什么需要进行初始化
我们知道,在数值计算中,初始化通常发生在需要迭代计算的情况下。CFD
求解大致分为以下几步:(1)建立物理现象的数学模型。通常是 N-S 方程,包
括瞬态项、对流项、扩散项和源项。(2)对方程进行离散。通常是建立微元控
制体,利用有限体积法进行离散,在每一个控制体上应用 N-S 方程,最终可获
得一系列代数方程。(3)对代数方程的求解。迭代计算主要发生在(2)和
(3)上。由于对流项的非线性,无法直接建立代数方程,需要采用压力-速度
耦合方程进行迭代计算。而对代数方程组进行迭代计算则有助于降低内存开销。
2、初始值对计算结果的影响
文案大全
实用文案
对于稳态问题,由于不求解瞬态项,因此初始值不会对计算结果产生影响。
当然一个好的初始值能加快迭代求解收敛速度。而对于非稳态问题,我们可以
将每一个时间步的求解当做是一个稳态计算过程,因此,一个收敛的时间步对
于初始值是不敏感的。但是非稳态计算存在这样的一个问题:下一个时间步是
以上一个时间步的计算结果作为初始值进行计算的,因此,如果一个时间步内
计算未达到收敛,则该时间点上的计算结果是不可信或无效的,且会影响到下
一时间步计算收敛速度。此时可以考虑加大内循环次数。
3、数学上的解释
所有的非稳态流动及波动现象、非稳态传热均属于步进问题,这类问题的
控制方程为双曲型或抛物型,他们的最大特点在于:计算域中的物理量依赖于
边界上的初始值。
4、FLUENT 中的初始化
13. 设置监视器
首先设置残差监视器。设置残差收敛标准为 0.001,即为在每一个时间步
内迭代,当残差达到这个标准时,便进入下一时间步继续迭代。残差是 cell 各
个 face 的通量之和,当收敛后,理论上当单元内没有源项使各个面流入的通量
也就是对物理量的输运之和应该为零。最大残差或者 RSM 残差反映流场与所要
模拟流场(只收敛后应该得到的流场,当然收敛后得到的流场与真实流场之间
还是存在一定的差距)的残差,残差越小越好,由于存在数值精度问题,不可
能得到 0 残差,对于单精度计算一般应该低于初始残差 1e-03 以下才好,当注
文案大全
实用文案
意具体情况,看各个项的收敛情况(比方说连续项不易收敛而能量项容易)。
一般在 FLUENT 中可以进行进出口流量监控,当残差收敛到一定程度后,还要看
进出口流量是否稳定平衡,才可确定收敛与否(翼型计算时要监控升阻力的平
衡)。残差在较高位震荡,需要检查边界条件是否合理,其次检查初始条件是
否合理,必如激波的流场,初始条件的不合适会造成流场的振荡。有时流场可
能有分离或者回流,这本身是非定常现象,计算时残差会在一定程度上发生振
荡,这是如果进出口流量是否达到稳定平衡,也可以认为流场收敛。另外
fluent 缺省采用多重网格,在计算后期将多从网格设置为 0 可以避免一些波长
的残差在细网格上发生震荡。
其次设置面监视器。监视各个面上的所需数据随时间的变化,在本论文的
仿真中,需要检测各个高度层的体积分数变化。故设置相应的面监视器。
14 初始化物料
文案大全
实用文案
其次初始化后,DEFINE-INITIALIZE-PATCH….在设置在上步设置的区域内的 MILLET 的
体积分数为 0.6,后点 PATCH。可点 GRID-DISPLAY-CONTOURS 查看体积分数图,确认初始化
成功。具体设置如下图所示。
15.设置动画
实际仿真时的数据是分一定时间步自动存储的,为能及时看到所仿真现象以便做出初
步判断,仿真是否和实际相近,以便修改边界条件及模型。
步骤 DEFINE-ANIMATE-DEFINE….
文案大全
实用文案
在设置中可以自己选择所需路径,注意设置动画时,必须先打开一个监视窗口才
能进行监视。如上图就应先点击 SET 按钮,打开监视窗口[1]。
文案大全