本案例演示在CFX中利用多组分流体及CEL表达式模拟管内酸碱溶液化学反应的基本过程。
1 问题描述
计算模型如图所示。几何模型为一个带有三个环的混合管,每个环上有十二个孔。主入口流速为2 m/s,温度300 K,出口压力1 atm。稀硫酸溶液通过靠近入口的孔眼以2 m/s速度进入通道,稀氢氧化钠溶液以2.923 m/s从另外两排孔眼进入通道,溶液温度均为300 K。
稀硫酸溶液的物性参数如下表所示。
物性参数 | 物性值 |
---|---|
摩尔质量 | 19.517 kg/kmol |
密度 | 1078 kg/m3 |
比热 | 4190 J/(kg K) |
动力粘度 | 0.001 kg/(m-s) |
热导率 | 0.6 W/(m-K) |
稀氢氧化钠溶液的物性参数如下表所示。
物性参数 | 物性值 |
---|---|
摩尔质量 | 18.292 kg/kmol |
密度 | 1029 kg/m3 |
比热 | 4190 J/(kg K) |
动力粘度 | 0.001 kg/(m-s) |
热导率 | 0.6 W/(m-K) |
酸和碱发生放热反应,形成硫酸钠和水的溶液,反应方程式为:
将酸和碱溶液按化学计量比混合并使其完全反应形成盐水溶液,其中包括每个原始溶液中的水以及反应过程中产生的水。该盐水的物性参数如下表所示。
物性参数 | 物性值 |
---|---|
摩尔质量 | 18.6 kg/kmol |
密度 | 1031 kg/m3 |
比热 | 4190 J/(kg K) |
动力粘度 | 0.001 kg/(m-s) |
热导率 | 0.6 W/(m-K) |
反应热为460 KJ/kg。假设流动为完全湍流,且湍流对反应速率有显著影响。为了减少内存需求及求解时间,仅对几何体的30°切片进行模拟。
案例将创建一个包含水,反应物和产物的可变组分混合物。为了模拟化学反应,将使用CEL表达式来控制酸,碱和产物组分的质量源,同时还使用CEL表达式来处理热源。
2 CFX设置
2.1 启动CFX并导入文件
-
启动CFX,设置工作路径并点击按钮 CFX-Pre
-
点击菜单File > New Case ,选择General 创建一般case
-
点击菜单File → Import → Mesh… 打开文件选择对话框,导入网格文件ReactorMesh.gtm
2.2 创建多组分材料
1、创建材料acid
-
选择菜单Insert → Material 新建材料acid
-
如下图所示设置酸液的物性参数
2、创建材料alkali
相同的方式创建碱液。
-
创建新材料,指定热力学状态为Liquid
-
如下图所示指定碱液的物性参数
3、创建材料product
创建反应产物硫酸钠的物性参数。
-
创建新材料,指定其名称为 product
-
指定其热力学状态为Liquid
-
如下图所示指定硫酸钠的物性参数
4、定义混合物材料mixture
-
定义混合物材料,如下图所示
2.3 创建附加变量
创建附加变量用来模拟pH值。
-
MixturePH
2.4 定义化学反应及pH值
本案例的化学反应是通过定义源项及传质率来实现的。其实也可以利用内置的EBU模型进行定义。
-
选择菜单 File > Import > CCL 导入文件ReactorExpressions.ccl ,注意选择 Import Method
为Append
导入后可以在模型树菜单中看到所定义的表达式。
关于这些表达式所代表的含义及计算方法,可参阅文末。
2.5 创建区域
-
鼠标双击模型树节点Default Domain 打开参数设置面板 -
如下图所示设置区域材料介质为 mixture
-
进入 Fluid Models
,如下图所示指定参数,这里需要设置各组分的扩散系数
-
相同方式设置组分 alkali及product
的扩散系数 -
对于组分 water
,如下图所示设置
2.6 创建子区域
定义化学反应及源项的子区域。
-
点击菜单项Insert → Subdomain 创建子区域sources ,如下图所示指定区域为 B1,P3
-
进入 Sources
选项卡,如下图所示设置酸溶液组分源项
-
设置碱溶液源项
-
指定能量源项
-
指定产物的源项
2.7 边界条件
1、InWater
-
创建入口边界,命名为 InWater
,如下图所示指定其边界位置
-
指定边界速度及温度
2、InAcid
-
创建酸液入口 InAcid
-
指定入口速度、温度及组分
3、InAlkali
-
创建碱液入口边界 InAlkali
-
指定入口速度、温度及组分
4、out
-
定义出口边界 out
-
指定出口静压
5、sym1
-
创建对称边界sym1
6、sym2
-
创建对称边界sym2
本案例中也可以使用周期边界。
2.8 初始条件
-
指定初始条件
2.9 Solver Controls设置
-
双击模型树节点Solver Controls 打开设置面板
2.10 进行计算
-
进行计算。注意选中选项 Double Precision
收敛残差曲线还是很嗨的。
3 计算结果
-
XY=0面上产物质量分数分布
-
酸液的质量分数
-
碱液质量分数
-
PH值分布
4 案例中所涉及的表达式
4.1 化学计量比
碱溶液与酸溶液的质量化学计量比是本教程中多个计算中都会用到的一个物理量。它表示碱溶液和酸溶液在完全反应条件下的质量比。
碱溶液中含有水和氢氧化钠。在碱溶液中,假定氢氧化钠分子按以下反应完全离解成离子:
酸溶液中含有水和硫酸。在酸溶液中,假设硫酸分子按照以下反应完全离解成离子:
溶液中的与反应生成硫酸钠:
注意,这个反应需要2个氢氧化钠分子的离子和1个硫酸分子的离子。碱和酸分子的化学计量比为2:1。
本教程不是模拟碱和酸的干分子,而是模拟含有这些分子(离解形式)和水的溶液。用于模拟碱-酸反应和测量 pH 值的计算需要一个基于质量的化学计量比,即表示碱溶液和酸溶液中所有(离解的)碱分子和酸分子完全反应所需的质量比。
使用表示,利用表示,则化学计量比可以通过以下两个质量的比率进行计算:
-
包含2 kmol的的碱液的质量 -
包含1 kmol的的酸液质量
计算公式为:
式中,为溶液中氢氧化钠的浓度,kmol/kg(等于在溶液中的浓度,kmol/kg);为溶液中硫酸的浓度,kmol/kg(等于溶液中的浓度,kmol/kg)。
碱溶液的摩尔质量(18.292 kg/kmol)是水(18.015 kg/kmol)和干碱(39.9971 kg/kmol)摩尔质量的加权平均值,权值与溶液中每种类型的分子的数量成比例。可以计算出溶液中氢氧化钠分子的比例为:
可以通过下式进行计算:
酸溶液的摩尔质量(给出为 19.517 kg/kmol)是水(18.015 kg/kmol)和干硫酸(98.07848 kg/kmol)摩尔质量的加权平均值,加权比例与溶液中各类分子的数量成正比。可以计算出溶液中硫酸分子所占的比例:
可以通过下式进行计算:
利用及可计算出化学计量比。
4.2 反应源项
反应和反应速率的建模采用了基本的涡破碎模型(Eddy Break Up Model)计算组分和能量源。例如,酸溶液质量分数的传输方程为
其中, 为时间, 为速度, 为可变成分混合物的局部密度, 为混合物中酸性溶液的质量分数, 为酸性溶液在混合物中的运动扩散率, 为碱溶液与酸性溶液基于质量分数的化学计量比。右侧表示应用于酸溶液迁移方程的质量源项。左侧包括瞬态项、平流项和扩散项。
除了指定酸溶液和碱溶液的源之外,还将使用源系数来提高溶液的收敛性。详见本节末的技术说明。
反应速率的计算公式为:
其中, 是湍流动能, 是湍流涡流耗散。根据关系式,反应速率也用于控制热量的产生速率:
根据问题描述,每千克酸溶液的反应热为 460 kJ。
注意:这是一份技术说明,仅供参考。源项完全由其值 S 的表达式指定。源系数C是可选项,但可用于增强收敛性或提高强变化源的稳定性。源系数的值可能会影响收敛速度,但不应影响收敛结果。如果没有合适的C值,还可以减小求解时间尺度或时间步长,以帮助改善难以收敛的源项。
”
在求解一个正变量的独立方程时,如果源的强度随 的增大而减小,则 的最佳值为:
在导数不易计算的情况下:
可能足以确保收敛。(本教程中的酸溶液和碱溶液质量源系数就是采用这种形式)。
C 的另一个有用的表达式为:
其中 是对源时间尺度的局部估计。只要源时间尺度与流动或混合时间尺度相比不过短,这可能是控制正反馈源()或不直接依赖于求解变量的源的有用方法。
4.3 计算PH值
混合物的 pH 值(或酸度)是基于体积的 离子浓度的函数。后者可通过以下两个分别基于电荷守恒和平衡条件的方程式计算得出:
式中,为水的自电离常数,1.0E-14 。
因此可以得到下面的二次方程:
可以重新排列为标准的二次方程式,即
可以解出为:
其中,,,。
要计算 和 的体积浓度,可以使用下面的表达式根据各成分的质量分数计算出 :
其中,为的浓度,kmol/m3;为的浓度,kmol/m3;为每千克溶液中硫酸的量(kmol),等同于每千克溶液中 的量,单位为kmol;为每千克溶液中氢氧化钠的量(kmol),等同于每千克溶液中 的量,单位为kmol;为可变组分混合物的局部密度;为碱溶液与酸溶液基于质量的化学计量比。
请注意,上面的第二个表达式可以用公式(1)代入 来重写。结果是
求解离子浓度后,即可计算出 pH 值:
为了设置用于计算的 pH 值限制,本教程将使用以下关系式:
注:本案例取自CFX随机案例手册,输入文件可从ANSYS官网自行下载。
”
(完)
本篇文章来源于微信公众号: CFD之道
评论前必须登录!
注册