首页/文章/ 详情

Fluent采用Lee模型模拟蒸发现象

7天前浏览418

正文共: 3592字 19图     预计阅读时间: 9分钟


1 前言

我们知道,蒸发和沸腾的区别之一是前者发生在气液界面处,后者通常发生在固液界面。在模拟相变时,最为经典的是Lee模型,也是FLUENT默认的蒸发/冷凝模型。其实我们在使用这个模型时常忽略了一点,这个模型其实本质是从蒸发模型推导而来的(软件的命名也是evaporation/condensation),但是我们常常用在沸腾模拟中。Lee模型根据当地的温度和饱和温度的对比来判断发生蒸发或者冷凝,其判据只有温度而没有其他,所以这事挺诡异的。当然,如果我们加入一些其他的约束,比如让其只在气液界面处作温度判断,就可以模拟蒸发现象了。今天我们来做一个这样的案例。

2 建模与网格

创建如下二维平面模型,划分四边形结构化网格,节点数60300,最小正交质量1.0。

3 边界条件与求解设置

启用VOF两相流模型,主相为液态水,次相为水蒸气,不考虑表面张力。

我们采用改造后的Lee模型模拟相变过程,核心思想是调用主相的体积分数梯度并计算它的模,采用一个梯度模阈值判断气液界面位置,让Lee模型只在这个区域起作用,本案例我们取2000,这个阈值可以根据网格粗细主观设定。UDF代码在文末,编译使用,有偿获取。

分别对主相、次相和混合相施加源项,并挂载adjust宏,该宏用于计算体积分数梯度的模。

创建4个用户存储器,分别存储体积分数梯度的模、水的质量源项、蒸汽的质量源项以及能量源项。注意一定要设置,因为UDF使用了这些存储器。

启用重力项。

用于UDF代码用到了梯度宏,因此我们要在内存进行释放,输入以下TUI语句。

/solve/set> expert

Linearized Mass Transfer UDF? [yes]

use alternate formulation for wall temperatures? [no]

Save cell residuals for post-processing? [no]

Keep temporary solver memory from being freed? [no] y

Allow selection of all applicable discretization schemes? [no]

底部设置为恒温壁面,温度374K

两侧为对称面。

顶部为压力出口,压力0Pa,即标准大气压。回流相为100%水蒸气,回流温度373.15K。注意本案例液态水的饱和温度373.15K。

采用如下值进行初始化,并用patch方式设置初始液位,同时使得液体温度略高于饱和温度(373.3K),使得蒸发发生的温度条件得以满足。

瞬态求解,时间步长0.0001s。

4 计算结果

我们先计算一个时间步,使得体积分数梯度模等四个用户存储器都初始化。我们看一下 体积分数梯度的模,显然只有在气液界面处的模才足够大,其他地方均为0。

我们再看一下计算至某个时刻的其他几个用户存储器值,首先是液体源项,在界面处为负值,往上和往下都为0,也就是说这个位置液体质量减少(蒸发失去质量)

显然,蒸汽源项的值应该与液体源项的值相反,如下

最后,看一下能量源项的值,界面处为负值,也就是蒸发吸热。

本案例UDF代码如下


来源:仿真与工程
FluentUDF
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-05-07
最近编辑:7天前
余花生
签名征集中
获赞 218粉丝 476文章 327课程 0
点赞
收藏
作者推荐

FLUENT液态水闪蒸模拟

正文共: 1376字 9图 预计阅读时间: 4分钟1 前言有一个经典的热力学实验,当对一个盛有水的活塞进行抽拉时,里面的液态水可能发生沸腾。这就是著名的闪蒸(flash evaporation)现象,闪蒸指的是液体在压力骤降时,因沸点降低而瞬间部分汽化的过程,其本质是系统从非平衡态向气液两相平衡态的快速转变。闪蒸发生的根本条件是压力骤降,因为压力降低时,饱和温度降低,当液体温度高于饱和温度时,就会发生相变。因此,我们可以知道,当压力降低越大,同时液体初始温度越高时,闪蒸越容易发生。今天,我们用一个简单的案例来演示一下这个闪蒸现象。2 建模与网格创建一个100mm×100mm的二维平面模型,划分四边形结构化网格,单元边长1mm。3 边界条件与求解设置这个案例的核心在于动网格技术,我们将顶部壁面设置为刚体运动面,表征活塞的运动,两侧设置为变形面,变形方向为y向,底部为静止壁面。由于该运动符合铺层网格特点,因此采用铺层动网格(layering),用DEFINE_CG_MOTION宏定义运动速度,UDF代码如下。DEFINE_CG_MOTION(moving,dt,vel,omega,time,dtime){if(time<=0.2)vel[1]=0.;else if(time<=1.0)vel[1]=(time-0.2)*0.02/0.8;else vel[1]=0.;} 介质为液态水和水蒸气,采用VOF和Lee模拟气液相变过程,液态水为主相,水蒸气为次相,该相变模拟的核心是随压力变化的饱和温度以及气体的可压缩性,我们采用的是安托因方程(Antoine equation)描述水的饱和温度和压力的关系,UDF代码如下。我们暂忽略了表面张力等更为细节的两相流设置,因为我们仅仅关心相变过程。我们采用理想气体模型简化模拟水蒸气的可压缩性。DEFINE_PROPERTY(saturation,c,t){real p_ab;real p_op=RP_Get_Real("operating-pressure");real t_sat;p_ab=p_op+C_P(c,t);t_sat=1730.63/(8.07131-log10(p_ab/133.322))-233.426+273.15;C_UDMI(c,t,0)=t_sat;return t_sat;}由于相变的发生很快,因此我们忽略了壁面和外部环境的换热,设置为绝热壁面。开启重力选项。采用如下值进行初始化,并采用patch方式设定60%初始液位,如前所述,更高的初始温度更容易闪蒸,因此本案例的初始状态为接近饱和的过冷水。瞬态求解,时间步长0.001s。4 计算结果我们先看一下抽活塞过程中,内部的压力和饱和温度情况,我们定义了0.2s到1s内活塞都是运动的,速度线性增加,到1s时停止运动,在这个过程中饱和温度随压力的降低而降低,后续活塞停止运动,闪蒸产生的水蒸气将内部压力抬高至一定程度后基本稳定下来。我们看一下水蒸气的质量曲线,可以看到发生约在0.7时就开始发生了闪蒸,看前文饱和温度曲线,此时的饱和温度降低到了液体温度以下。我们再看一下抽取活塞所需的力,可以看出这个力还是相当大的,读者朋友可以试着拿一个注射器模拟一下。发生闪蒸后某个时刻的气液两相体积分数云图如下。来源:仿真与工程

未登录
1条评论
Simplicity
签名征集中
5天前
哥您好,我想向您请教一下LBE的湍流普朗特数问题,请问您能给我您的vx咱们联系吗
回复
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈