news 2026/6/15 16:39:16

速率模型教二氧化碳吸收捕捉演练

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
速率模型教二氧化碳吸收捕捉演练

基于速率模型的乙醇胺(MEA)吸收捕集二氧化碳模拟、教学。

刚接触化工模拟的朋友看到MEA吸收CO₂的文献可能会懵——又是传质方程又是反应动力学,密密麻麻的公式看得人头皮发麻。今天咱们换个姿势,用Python把抽象概念变成看得见的代码,手把手拆解这个经典流程。

先来点干货,典型的MEA吸收塔模型核心就两个微分方程:

def absorption_model(t, y): dCO2_gas = -kL_a*(y[0] - H*y[1]) # 气相浓度变化 dCO2_liq = (kL_a*(y[0] - H*y[1]) - rxn_rate)/L # 液相浓度变化 return [dCO2_gas, dCO2_liq]

这段代码藏着三个关键参数:kLa是传质系数,H是亨利常数,rxnrate是反应速率。重点看那个负号——气相浓度降低的量正好等于液相增加的量(当然要考虑反应消耗),这就是质量守恒的代码表达。

反应速率计算更有意思,MEA和CO₂的跳舞可以用下面这个函数表示:

def get_rxn_rate(C_CO2, C_MEA): # 二级反应速率公式 k2 = 0.0175 # m³/(mol·s) 30℃数据 return k2 * C_CO2 * C_MEA

这里的k2是个需要实测的参数。注意函数参数用的是实时浓度,说明反应速率在吸收过程中是动态变化的——这也是为啥必须用微分方程求解。

接下来上主程序:

from scipy.integrate import solve_ivp import numpy as np # 操作参数 L = 0.5 # 液层高度(m) H = 0.8 # 亨利常数 kL_a = 0.15 # 总传质系数(1/s) C_MEA0 = 300 # 初始MEA浓度(mol/m³) # 求解区间和初值 t_span = (0, 30) # 30秒模拟 y0 = [120.0, 15.0] # 初始气相和液相CO₂浓度 sol = solve_ivp(absorption_model, t_span, y0, method='BDF')

这里选用了BDF求解器,适合处理可能出现的刚性问题。跑完程序后画个图看看趋势:

import matplotlib.pyplot as plt plt.figure(figsize=(10,6)) plt.plot(sol.t, sol.y[0], 'r--', label='Gas phase') plt.plot(sol.t, sol.y[1], 'b-', label='Liquid phase') plt.xlabel('Time (s)') plt.ylabel('CO₂ Concentration (mol/m³)') plt.legend() plt.show()

不出意外的话会看到气相浓度快速下降,液相浓度先上升后趋缓——这就是传质推动力减弱的典型特征。有意思的是,如果把kL_a调大,曲线会变得更陡,这提示我们在实际操作中可以通过增加气液接触面积来提高吸收效率。

调试时遇到过坑:当MEA浓度过低时,液相浓度可能出现负值。后来加了约束条件:

dCO2_liq = max((kL_a*(y[0] - H*y[1]) - rxn_rate)/L, 0)

这种处理虽然粗暴,但能避免计算结果崩掉。不过更严谨的做法应该是建立代数约束,这就得搬出DAE求解器了,下次再展开说。

最后留个思考题:如果把进料浓度设为随时间变化的正弦波,系统响应会呈现什么特征?试着改改初值条件,说不定能发现有趣的动态行为。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 13:54:04

FT8440B输出12V350MA,18V300MA 非隔离电源方案 典型应用电路

FT8440B是离线非隔离 Buck 架构、集成 650V 高压启动与功率开关的电流模 PWM 控制器,主打高精度恒压(3%)、低成本与极简外围,适合 90–264Vac 输入、5–18V 输出、中小功率(典型 12V/450mA、18V/300mA)的恒…

作者头像 李华
网站建设 2026/6/15 14:13:00

LP3799FBC_48W隔离电源芯片(12V4A)典型应用电路

LP3799FBC&#xff08;TO220-6F&#xff0c;集成≥650V 高压管&#xff0c;原边反馈 PSR 反激&#xff09;适合 48W 级隔离 CV/CC 适配器 / 充电器&#xff0c;外围精简、EMI 友好、待机 < 75mW&#xff0c;量产与安规成本可控。典型应用场景与规格&#xff08;选型速览&…

作者头像 李华
网站建设 2026/6/15 6:37:13

在 Pr 中,3 种高效添加字幕和字幕样式的方法(剪辑师实战分享)

做视频剪辑久了你会发现&#xff0c;字幕本身并不难&#xff0c;难的是做得快、改得稳。 我自己长期用 Adobe Premiere Pro&#xff08;Pr&#xff09; 剪口播、教程和商业视频&#xff0c;踩过很多字幕的坑&#xff1a; 识别慢、断句乱、样式改一次就要返工一堆。 后来逐渐形成…

作者头像 李华
网站建设 2026/6/13 11:39:24

ArrayPool.Shared解说

NET 中频繁创建和销毁数组的情况下会导致垃圾回收器出现严重的内存压力&#xff0c;ArrayPool<T> 通过池化手段有效地降低了数组的分配和垃圾回收器的回收压力&#xff0c;同时 ArrayPool<T> 也是 MemoryPool<T> 和 PipeWriter、PipeReader 的底板。ArrayPoo…

作者头像 李华
网站建设 2026/6/12 20:22:30

VonaJS提供的读写分离,直观,优雅[特殊字符]

在VonaJS中实现读写分离&#xff0c;只需提供一组写数据源和一组读数据源。当用户访问后端 API 时&#xff0c;系统会按照规则自动选择写数据源或读数据源&#xff0c;访问相应的数据库&#xff0c;从而分摊压力&#xff0c;提升系统性能安装模块读写分离作为独立的模块提供&am…

作者头像 李华
网站建设 2026/6/15 13:48:27

鸿蒙6.0:AI与智能体框架(HMAF),重塑操作系统未来的核心密码

当用户说出“帮我规划带老人孩子的周末短途游”&#xff0c;系统便能自动整合行程、餐饮、景点资源生成完整方案&#xff1b;当驾车抵达加油站&#xff0c;车载系统自动识别油枪并完成人脸支付&#xff1b;当需要分析Excel数据&#xff0c;仅凭自然语言就能完成复杂报表生成——…

作者头像 李华