FLUENT操作过程及参数选择.docx
- 文档编号:11761832
- 上传时间:2023-03-31
- 格式:DOCX
- 页数:28
- 大小:352.55KB
FLUENT操作过程及参数选择.docx
《FLUENT操作过程及参数选择.docx》由会员分享,可在线阅读,更多相关《FLUENT操作过程及参数选择.docx(28页珍藏版)》请在冰豆网上搜索。
FLUENT操作过程及参数选择
振动流化床仿真操作过程及参数选择
1创建流化床模型。
根据靳海波论文提供的试验机参数,创建流化床模型。
流化床直148mm,高1m,开孔率9%,孔径2mm。
在筛板上铺两层帆布保证气流均布。
因为实验机为一个圆形的流化床,所以可简化为仅二维模型。
而实际实验中流化高度远小于1m,甚至500mm,所以为提高计算时间,可将模型高度缩为500mm。
由于筛板上铺设两层帆布以达到气流均分的目的,所以认为沿整个筛板的进口风速为均匀的。
最终简化模型如下图所示:
上图为流化后的流化床模型,可以看出流化床下端的网格相对上端较密,因为流化行为主要发生的流化床下端,为了加快计算时间,所以采用这种下密上疏的划分方式。
其中进口设置为velocityinlet;出口设置为outflow;左右两边分为设置为wall。
在GAMBIT中设置完毕后,输出二维模型vfb.msh。
outflow边界条件不需要给定任何入口的物理条件,但是应用也会有限制,大致为以下四点:
1.只能用于不可压缩流动
2.出口处流动充分发展
3.不能与任何压力边界条件搭配使用(压力入口、压力出口)
4.不能用于计算流量分配问题(比如有多个出口的问题)
2打开FLUENT6.3.26,导入模型vfb.msh
点击GRID—CHECK,检查网格信息及模型中设置的信息,核对是否正确,尤其查看是否出现负体积和负面积,如出现马上修改。
核对完毕后,点击GRID-SCALE弹出SCALEGRID窗口,设置单位为mm,并点击changelengthunit按钮。
具体设置如下:
3设置求解器
保持其他设置为默认,更改TIME为unsteady,因为实际流化的过程是随时间变化的。
(1)pressurebased求解方法在求解不可压流体时,如果我们联立求解从动量方程和连续性方程离散得到的代数方程组,可以直接得到各速度分量及相应的压力值,但是要占用大量的计算内存,这一方法已可以在Fluent6.3中实现,所需内存为分离算法的1.5-2倍。
densitybased求解方法是针对可压流体设计的,因而更适合于可压流场的计算,以速度分量、密度(密度基)作为基本变量,压力则由状态方程求解。
Pressure-BasedSolver它是基于压力法的求解器,使用的是压力修正算法,求解的控制方程是标量形式的,擅长求解不可压缩流动,对于可压流动也可以求解;Fluent6.3以前的版本求解器,只有SegregatedSolver和CoupledSolver,其实也就是Pressure-BasedSolver的两种处理方法;Density-BasedSolver是Fluent6.3新发展出来的,它是基于密度法的求解器,求解的控制方程是矢量形式的,主要离散格式有Roe,AUSM+,该方法的初衷是让Fluent具有比较好的求解可压缩流动能力,但目前格式没有添加任何限制器,因此还不太完善;它只有Coupled的算法;对于低速问题,他们是使用Preconditioning方法来处理,使之也能够计算低速问题。
Density-BasedSolver下肯定是没有SIMPLEC,PISO这些选项的,因为这些都是压力修正算法,不会在这种类型的求解器中出现的;一般还是使用Pressure-BasedSolver解决问题。
(2)再GRADIENTOPTION选项组中,指定通过哪种压力梯度来计算控制方程中的导数项。
CELL-BASED(按单元中的压力梯度计算)和NODE-BASED(按节点的案例梯度计算)。
Porousformulation选项组用于制定多孔介质速度的方法。
(3)当选择UNSTEADY时,会出现UNSTEASDYFORMULATION选项组,让用户据顶时间相关项的计算公式及方法。
对于巨大多数问题选一阶隐式就足够了。
只有对精度有特别要求时才选二阶隐式。
4设置多相流模型。
设置为欧拉模型,相数设置为2即为两相流,具体设置如下:
在Fluent中,共有三种欧拉-欧拉多相流模型,即VOF(VolumeOfFluid)模型、混合物(Mixture)模型和欧拉(Eulerian)模型。
(1)VOF模型。
VOF模型是一种在固定的欧拉网格下的表面跟踪方法。
当需要得到一种或多种互不相融流体间的交界面时,可以采用这种模型。
在VOF模型中,不同的流体组分共用着一套动量方程,计算时在整个流场的每个计算单元内,都记录下各流体组分所占有的体积率。
VOF模型的应用例子包括分层流、自由面流动、灌注、晃动、液体中大气泡的流动、水坝决堤时的水流以及求得任意液-气分界面的稳态或瞬时分界面。
(2)混合物模型。
混合物模型可用于两相流或多相流(流体或颗粒)。
因为在欧拉模型中,各相被处理为互相贯通的连续体,混合物模型求解的是混合物的动量方程,并通过相对速度来描述离散相。
混合物模型的应用包括低负载的粒子负载流、气泡流、沉降和旋风分离器。
混合物模型也可用于没有离散相相对速度的均匀多相流。
(3)Eulerian模型。
Fluent中最复杂的多相流模型。
它建立了一套包含有n个的动量方程和连续方程来求解每一相,压力项和各界面交换系数是耦合在一起的。
耦合的方式则依赖于所含相的情况,颗粒流(流-固)的处理与非颗粒流(流-流)是不同的。
欧拉模型的应用包括气泡柱、上浮、颗粒悬浮和流化床。
根据振动流化床的实际情况,本论文采用欧拉模型进行模拟。
5设置粘性模型。
第一步,DEFINE-MODELS-VISCOUS,弹出VISCOUSMODEL对话框,选择K-EPSILO模型,点击确定。
第二步,在操作窗口内键入下面的命令:
define/models/viscous/turbulence-expert/low-re-k
屏幕显示:
/define/models/viscous/turbulence-expert>low-re-k
Enablethelow-Rek-epsilonturbulencemodel?
[no]
输入y,在模型选择面板中我们就可以看见低雷模型low-re-kemodel了。
默认使用第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模型使用与湍流发展非常充分的湍流流动建立的,它是一种针对高雷诺数的湍流计算模型,它比零方程模型和一方程模型有了很大的改进,但是在用于强旋流、弯曲壁面流动或弯曲流线流动时会产生失真。
而相较标准模型,RNGk-ε模型修正了湍动粘度,考虑了平均流动的旋转及旋流流动情况,可以更好地处理高应变率及流线弯曲成都较大的流动,它还是针对充分发展的湍流,即还是高雷诺数模型。
Realizablek-ε模型一般被应用在包含有射流和混合流的自由流动、管道内流动、边界层流动等。
由于实际计算出的雷诺数较小,和上述三种湍流模型都不是很匹配。
而在FLUENT提供了数种专家模型,他们针对标准K-ε进行部分修正,使其能够适合低雷诺数使用,即为低雷诺数k-epsilo模型。
6定义材料属性。
DEFINE-MATERIALS,弹出材料对话框,点CREAT按钮,首先选择空气作为气相。
然后点击FLUENTDATABASEMATERIALS按钮,在材料库中任意选择一种流体,点击COPY按钮。
再将该材料的密度及名称改为所需材料的材料属性,设置如下,最后点击CHANGE。
7定义相。
DEFINE-PHASE。
首先定义空气为主相,操作如下:
接着设置次相为固相MILLET。
点millet后点击SET按钮,弹出secondaryphase对话框,进下如下设置。
首先定义材料为GRANULAR,即为颗粒,定义颗粒粒径。
Packedbed为填充床,与实际不符合,故不选择。
颗粒温度模型选择PHASEPROPERTY相属性。
particaldifferentialequation为偏微分方程。
固体剪切粘度包括碰撞和动力部分,摩擦部分。
其中动力部分提供两种表达,默认的是SYAMLALETAL表达,和GIDASPOWETAL表达,通过实验一对比后选择SYAMLALETAL表达式。
固体体积粘度解释为颗粒压缩和扩张的抵抗力,对该项一般不存在争议,目前学术界普遍采用Lunetal的表达式。
本论文的仿真忽略摩擦粘度。
填充限制设置为0.6,即初始固相的体积分数最大为0.6。
设置气固封闭关系:
再PHASE对话框点击INTERACTION,设置气固相相互作用的曳力函数一般为WEN-YU,GIDASPOW,SYAMLAL-OBRIEN三种,实验一得出结论SYAMLAL-OBRIEN更符合实际。
所以选择Syamlal-Obrien曳力函数模型。
(1)Syamlal-O’Brien模型[234]
(20.4.31)
这里曳力函数采用由DallaValle[47]给出的形式:
(20.4.32)
这个模型是基于流化床或沉淀床颗粒的末端速度的测量,并使用了体积分数和相对雷诺数的函数关系式[193]:
(20.4.33)
这里下标
是第
液体相,
是第
固体相,
是第
固体相颗粒的直径。
液体-固体交换系数有如下形式
(20.4.34)
这里
是与固体相相关的末端速度[73]:
(20.4.35)
其中
(20.4.36)
对
,
(20.4.37)
对
,
(20.4.38)
当固体相的剪切应力根据Syamlaletal定义时[235](方程20.4.52),这个模型是合适的。
(2)对WenandYu模型[262],液体-固体交换系数有如下形式:
(20.4.39)
这里,
(20.4.40)
数由方程20.4.33定义。
这个模型适合于稀释系统。
(3)Gidaspow模型[76]是WenandYu模型[262]和Ergun方程[62]的联合。
当
时,液体-固体交换系数
有如下形式:
(20.4.41)
这里
(20.4.42)
当
时,
(20.4.43)
对密集的流化床,建议使用这个模型。
由于本流化床内的粒子直径远大于粒子间的距离,这样对接近充满的颗粒包含升力是不合适,所以忽略升力的影响,在LIFT选项选择NONE。
在恢复系数选项下保持默认的设置值0.9。
由于第二相密度远大于第一相,所以可以忽略虚拟质量力。
具体设置如下。
8编译UDF程序。
Define-user-defined-function-compiled,导入程序。
1)voidDEFINE_CG_MOTION(UDFname,Dynamic_Thread*dt,realvel[],realomega[],realtime,realdtime)。
此函数接口用于控制刚体的运动,用户把刚体质心运动速度和角速度分别赋值给vel和omega,FLUENT根据它们的值来自动计算出边界下一步的位置,从而实现动边界的控制; 刚体质心的位置可以在函数接口界面对话框中定义。
DynamicZones中的dwall就是要控制的动边界,MotionUDF/Profile中的stc1sta010a0ph0就是UDFname,从中可看出它已被制定成用于控制dwall,理论上 FLUENT可以通过这种方式实现无穷多个动边界的控制;C.G.Location用于设定初始位置的质心,C.G.Orientation用于设定刚体的初始角度。
一般适用于刚体本身不变形的运动。
2)voidDEFINE_GEOM(charname,Domain*d,Dynamic_Thread*dt,real*position)。
此函数接口用于控制变形体的边界运动,position就是运动边界上某网格节点的位置值,用户可以通过对其赋值达到控制效果,position[0]对应边界节点的x坐标,position[1]对应y 坐标,position[2]对应z坐标;FLUENT自动遍历所有的边界节点,因此适用于有规律的可以用函数描述的运动边界。
3)voidDEFINE_GRID_MOTION(name,d,dt,time,dtime)。
此函数接口也用于控制形体的边界运动。
主要用于更加复杂的控制,用户需要自己利用 FLUENT提供的其他函数来遍历运动边界上的节点,并对其位置进行控制,因此 UDF编程比前面两种复杂得多。
它甚至可以事先生成好边界数据,在计算中把数据读入,完成复杂形体控制。
将振动处理为做正弦运动,即编写UDF程序使进口做正弦运动。
而通过上述三种动边界控制实现方法的比较,可以看出第一种voidDEFINE_CG_MOTION方法更适合振动流化床的模拟,改变进口边界的运动速度,从而完成正弦运动。
9定义动网格。
在FLUENT中,动网格模型可以用来模拟由于流域边界运动引起流域形状随时间变化的流动情况。
这种流动情况即可以使一种指定的运动(随时间变化)也可以使未确定的运动(随某变化的参数变化),即边界的运动要由前一步的计算结果决定。
各个时间不的体网格的更新基于边界条件新的位置,有FLUENT自动完成。
动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-basedsmoothing)、动态分层模型(dynamiclayering)和局部重划模型(localremeshing)。
弹簧近似光滑模型
在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。
移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。
在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。
边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。
从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。
原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法:
(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为合并因子。 在紧邻动边界的网格层高度满足这个条件时,则将这一层网格与外面一层网格相合并。 动网格模型的应用有如下限制: (1)与运动边界相邻的网格必须为楔形或者六面体(二维四边形)网格。 (2)在滑动网格交界面以外的区域,网格必须被单面网格区域包围。 (3)如果网格周围区域中有双侧壁面区域,则必须首先将壁面和阴影区分割开,再用 滑动交界面将二者耦合起来。 (4)如果动态网格附近包含周期性区域,则只能用FLUENT的串行版求解,但是如果周期性区域被设置为周期性非正则交界面,则可以用FLUENT的并行版求解。 如果移动边界为内部边界,则边界两侧的网格都将作为动态层参与计算。 如果在壁面上只有一部分是运动边界,其他部分保持静止,则只需在运动边界上应用动网格技术,但是动网格区与静止网格区之间应该用滑动网格交界面进行连接。 局部重划模型 在使用非结构网格的区域上一般采用弹簧光顺模型进行动网格划分,但是如果运动边界的位移远远大于网格尺寸,则采用弹簧光顺模型可能导致网格质量下降,甚至出现体积为负值的网格,或因网格畸变过大导致计算不收敛。 为了解决这个问题,FLUENT在计算过程中将畸变率过大,或尺寸变化过于剧烈的网格集中在一起进行局部网格的重新划分,如果重新划分后的网格可以满足畸变率要求和尺寸要求,则用新的网格代替原来的网格,如果新的网格仍然无法满足要求,则放弃重新划分的结果。 在重新划分局部网格之前,首先要将需要重新划分的网格识别出来。 FLUENT中识别不合乎要求网格的判据有二个,一个是网格畸变率,一个是网格尺寸,其中网格尺寸又分最大尺寸和最小尺寸。 在计算过程中,如果一个网格的尺寸大于最大尺寸,或者小于最小尺寸,或者网格畸变率大于系统畸变率标准,则这个网格就被标志为需要重新划分的网格。 在遍历所有动网格之后,再开始重新划分的过程。 局部重划模型不仅可以调整体网格,也可以调整动边界上的表面网格。 需要注意的是,局部重划模型仅能用于四面体网格和三角形网格。 在定义了动边界面以后,如果在动边界面附近同时定义了局部重划模型,则动边界上的表面网格必须满足下列条件: (1)需要进行局部调整的表面网格是三角形(三维)或直线(二维)。 (2)将被重新划分的面网格单元必须紧邻动网格节点。 (3)表面网格单元必须处于同一个面上并构成一个循环。 (4)被调整单元不能是对称面(线)或正则周期性边界的一部分。 动网格的实现在FLUENT中是由系统自动完成的。 如果在计算中设置了动边界,则FLUENT会根据动边界附近的网格类型,自动选择动网格计算模型。 如果动边界附近采用的是四面体网格(三维)或三角形网格(二维),则FLUENT会自动选择弹簧光顺模型和局部重划模型对网格进行调整。 如果是棱柱型网格,则会自动选择动态层模型进行网格调整。 在静止网格区域则不进行网格调整。 动网格问题中对于固体运动的描述,是以固体相对于重心的线速度和角速度为基本参数加以定义的。 既可以用型函数定义固体的线速度和角速度,也可以用UDF来定义这两个参数。 同时需要定义的是固体在初始时刻的位置。 使用弹簧近似光滑法网格拓扑始终不变,无需插值,保证了计算精度。 但弹簧近似光滑法不适用于大变形情况,当计算区域变形较大时,变形后的网格会产生较大的倾斜变形,从而使网格质量变差,严重影响计算精度。 动态分层法在生成网格方面具有快速的优势,同时它的应用也受到了一些限制。 它要求运动边界附近的网格为六面体或楔形,这对于复杂外形的流场区域是不适合的。 使用局部网格重划法要求网格为三角形(二维)或四面体(三维),这对于适应复杂外形是有好处的,局部网格重划法只会对运动边界附近区域的网格起作用。 设置动网格问题的步骤如下: (1)激活动网格模型,并设定相应参数,菜单操作如下: Define->DynamicMesh->Parameters... (2)指定移动网格区域的运动参数,菜单操作如下: Define->DynamicMesh->Zones... (3)保存算例文件和数据文件。 (4)预览动网格设置,菜单操作为: Solve->MeshMotion... Remeshing中的参数Minimumlengthscale和MaximumLengthScale,这两个参数你可以参考meshscaleinfo中的值,仅是参考,因为meshscaleinfo中的值是整个网格的评价值,设置的时候看一下动网格附近的网格和整个网格区域的大小比较,然后确定这两个参数,一般来讲,动网格附近的网格较密,这些值都比整体的小,所以在设置时通常设置为比meshscaleinfo中的Minimumlengthscale大一点,比MaximumLengthScale小一点。 10.设置边界条件 自然界流体按流体形态分为两种形式层流和湍流,在气固流化中,雷诺数为 k-ε湍流模型,湍动能k和湍动耗散率值ε的初定。 湍流强度I(turbulenceintensity)按下式计算: 其中, 和 分别为湍流脉动速度和平均速度, 为按水里直径 计算得到的雷诺数,对于圆管,水力直径 等于圆管直径,对于其他的几何形状,按等效水力直径确定。 湍流程度尺度l(turbulenceviscosity)按下式计算: l=0.07L 这里,L为关联尺寸。 对于充分发展的湍流,可取L等于水力直径。 湍流粘度比 正比于湍动雷诺数,一般可取1到10之间。 修正的湍流粘度按下式计算: 湍动能k(turbulencekineticenergy)按下式计算 如果一直湍流长度尺度l,则湍动耗散率ε(turbulencedissipationrate)按下式计算: 式中,取0.09。 如果已知湍动粘度比,则湍动耗散率按下式计算: 11.设置SOLUTIONCONTROL SIMPLE SIMPLE算法使用压力和速度之间的相互校正关系来强制质量守恒并获取压力场。 如果用猜测压力场p^*来解动量方程,从连续性方程离散一节中的方程5所得到的表面流量J^*_f为: 它并不满足连续性方程。 因此将校正项J^'_f加入到表面流速J^*_f中来校正质量流速J_f: 此时满足了连续性方程。 SIMPLE假定J^'_f写成如下形式: 其中p^'是单元压力校正。 SIMPLE算法将流量校正方程(方程3和5)代入到离散连续性方程(连续性方程的离散一节中的方程3)从而得到单元内压力校正p^'的离散方程。 其中,源项b是流入单元的净流速。 压力校正方程(方程7)可以用代数多重网格一节中所介绍的代数多重网格方法来解。 一旦得到解,使用下面的方程校正单元压力和表面流动速度: 在这里,a_p是压力亚松驰因子(请参阅亚松驰方面的介绍)。 校正后的表面流速J_f在每一部迭代中同一地满足离散连续性方程。 欠松弛因子 由于流体力学中要求解非线性的方程,在求解过程中,控制变量的变化是很必要的,这就通过松弛因子来实现的.它控制变量在每次迭代中的变化.也就是说,变量的新值为原值加上变化量乘以松弛因子. 如: A1=A0+B*DETA A1新值A0原值B松弛因子DETA变化量 松弛因子可控制收敛的速度和改善收敛的状况! 为1,相当于不用松弛因子 大于1,为超松弛因子,加快收敛速度 小于1,欠松弛因子,改善收敛的条件 一般来讲,大家都是在收敛不好的时候,采用一个较小的欠松弛因子。 Fluent里面用的是欠松弛,主要防止两次迭代值相差太大
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FLUENT 操作过程 参数 选择
![提示](https://static.bdocx.com/images/bang_tan.gif)