comsol仿真模拟气液两相化学吸收CO2(氢氧化钠溶液NaOH和MEA溶液吸收CO2)。 此案例为文献复现。
打开COMSOL时总感觉这软件在考验耐心——尤其是做气液两相化学吸收这种既要管流动又要算反应的活儿。今天咱们拿文献里的NaOH和MEA吸收CO2案例开刀,看看怎么在模型中让气泡和液滴乖乖配合化学反应。
先给气相域加个层流物理场,参数设置里藏着魔鬼。入口速度得按文献给的雷诺数换算,比如直径2mm的上升气泡,速度控制在0.1m/s左右。这里容易翻车的是湍流模型选择,千万别手滑勾选了k-ε,人家微通道里都是层流状态。
% COMSOL物理场设置片段 model.physics.create('spf', 'SinglePhaseFlow', 'geom1'); model.physics('spf').feature.create('inlet', 'Inlet', 1); model.physics('spf').feature('inlet').set('U0', '0.1[m/s]');反应动力学模块才是重头戏。NaOH吸收CO2是快速碱液反应,得用增强因子法处理。而MEA的氨基反应要用到两阶反应式,记得在化学反应接口里勾选"Activity correction"。有个冷知识:COMSOL内置的胺液物性数据库可以直接调用,别傻乎乎手动输粘度数据。
扩散系数设置讲究门道,看这段代码里的猫腻:
model.physics('ch').feature('dtt1').set('D_liquid', [1.8e-9 2.3e-9]); % CO2在NaOH和MEA中的扩散系数 model.physics('ch').feature('rs1').set('k', {'0.15*exp(-4200/T)' '0.08*exp(-3800/T)'}); % 反应速率表达式网格划分时在气液界面处要加密,建议用边界层网格配合自由四面体。见过有人用全域均匀网格,结果计算了三天还没出趋势。特别注意出口边界要设成开放通道,别让压力波动影响浓度场。
求解器配置里有个骚操作:先用稳态算出初始流场,再用瞬态追踪吸收过程。时间步长别超过0.1秒,不然会错过气泡变形时的传质突变。碰到不收敛就祭出"辅助扫掠"大法,逐步增加反应速率系数。
最后对比文献数据时,发现CO2吸收效率总差几个百分点。检查了三遍参数发现是文献里的pH值对应浓度换算错了——原来他们用的是修正后的活度系数。改完参数重新跑,曲线吻合度立马从75%飙到92%,这感觉比中彩票还爽。
模拟完最大的收获是:气液界面处的微观涡流对传质增强效果能到30%以上,这解释了工业塔器里为什么要装规整填料。下次试试把反应塔改成波形板结构,说不定能挖出新成果。