当前位置: 首页 > news >正文

多场耦合下煤层中CO2封存与甲烷驱替研究:涉及流固耦合、二元气体竞争吸附及多场动态变化

comsol流固耦合二氧化碳封存-煤层注气驱替甲烷 研究煤体吸附膨胀变形 涉及 渗流场 温度场 变形场 二元气体竞争吸附 孔隙率 渗透率动态变化 甲烷、二氧化碳封存量 参考The coupling mechanism of the thermal-hydraulic-mechanical fields in CH4-bearing coal and its application in the CO2-enhanced coalbed methane recovery 论文 文件中包括:讲解视频 模型(自定义物理场输入函数)参考论文 不

煤层注CO₂驱替甲烷这事儿听着像给煤做SPA,不过里头藏着的物理场纠缠可比按摩复杂多了。咱们得同时盯着气体怎么挤进煤缝(渗流场)、温度变化怎么捣乱(温度场)、煤块自己还膨胀收缩(变形场)。COMSOL里玩这个得先搞明白自定义物理场怎么喂数据,就拿煤吸附CO₂膨胀的模型来说,得自己写个函数表达煤颗粒变胖的幅度。

function d_swell = adsorption_swell(P_CO2, T) % 引用论文中的吸附应变经验公式 Q_CO2 = 32e3; % 吸附热J/mol R = 8.314; epsilon_max = 0.015; % 最大膨胀应变 d_swell = epsilon_max * (P_CO2.*exp(Q_CO2/(R*T))) ./ (1 + P_CO2.*exp(Q_CO2/(R*T))); end

这代码其实在说:温度越高,煤吸CO₂越来劲,但吸饱了就开始摆烂(符合Langmuir型曲线)。注意指数项里藏着温度对吸附能力的调控,25℃和60℃工况下煤的膨胀量能差出两倍多。

渗透率动态变化才是真·戏精。煤一膨胀,孔隙就被挤压,咱们得用应力-渗透率耦合模型:

// COMSOL中自定义渗透率函数 if (isLinearized) { permeability = k0 * (1 + alpha_phi*(solid.dispXx + solid.dispYy + solid.dispZz)); } else { // Palmer-Mansoori修正模型 permeability = k0 * Math.exp(-3*effective_stress/(E_coal*(1-nu_coal))); }

这里有个骚操作——当煤体受压变形超过临界值,渗透率断崖式下跌。模拟时得盯着应力状态自动切换计算公式,否则计算结果会在突变区域疯狂震荡。

二元气体竞争吸附得像处理情敌关系似的。CO₂和CH4在煤表面抢位置,得用扩展Langmuir方程:

q_CO2 = (b_CO2*P_CO2)/(1 + b_CO2*P_CO2 + b_CH4*P_CH4) q_CH4 = (b_CH4*P_CH4)/(1 + b_CO2*P_CO2 + b_CH4*P_CH4)

但实际参数得考虑温度影响,比如60℃时CO₂的吸附系数b值会比常温下降40%,这直接导致高温工况下驱替效率下降——所以注CO₂前得先评估煤层温度场是否适合。

comsol流固耦合二氧化碳封存-煤层注气驱替甲烷 研究煤体吸附膨胀变形 涉及 渗流场 温度场 变形场 二元气体竞争吸附 孔隙率 渗透率动态变化 甲烷、二氧化碳封存量 参考The coupling mechanism of the thermal-hydraulic-mechanical fields in CH4-bearing coal and its application in the CO2-enhanced coalbed methane recovery 论文 文件中包括:讲解视频 模型(自定义物理场输入函数)参考论文 不

搞完这些物理场,最后算封存量时得注意煤基质与裂隙的双重存储机制。裂隙里的自由气体用达西定律算,吸附态气体得结合煤比表面积参数:

adsorbed_CO2 = volume_coal * rho_coal * q_CO2 * M_CO2 / Vm free_CO2 = porosity * P_CO2 * M_CO2 / (Z * R * T)

有个坑点:当渗透率剧烈变化时,自由相占比会突然跃升,这时候时间步长必须调小到秒级,否则质量不守恒误差能吃掉30%的结果精度。

模型验证时,拿现场气水比数据和模拟结果对比。发现有个月的数据对不上,折腾一周才发现是没考虑注气导致的温度下降——煤吸附CO₂是放热过程,局部温升能到5-8℃,这反过来又影响吸附平衡。加上热力学耦合后,产气曲线终于和实测吻合了。

玩这个模型最大的感悟:别相信默认求解器设置!流固耦合的非线性得用手动调整牛顿迭代步长,还得开着误差估计随时救场。有一次求解器在渗透率突变处卡住,改成间断伽辽金法才搞定,算完感觉头发都白了几根。

http://www.jsqmd.com/news/577123/

相关文章:

  • 根据应用场景TongWeb版本选购指南
  • 这波教你怎样写出不被同事骂的代码!
  • 如何快速掌握ZeroOmega代理工具:3步构建你的网络代理系统
  • 从冠军方案到实战避坑:手把手复现天池O2O优惠券预测的完整流程(附Python代码)
  • jable-download:高效下载与本地处理的视频保存解决方案
  • 【含文档+源码】SpringBoot在线考试系统
  • 如何高效压缩时间序列预测模型:3步实现TimesFM从500M到200M的智能瘦身
  • NCM加密音乐解放方案:ncmdump技术突破与全场景应用指南
  • SoC休眠唤醒的“时光胶囊”:Retention Cell设计精要与实战解析
  • 保姆级教程:在RflySim仿真平台用Python玩转大疆Livox激光雷达点云(附完整配置流程)
  • 2026年PDF转Word免注册工具实测榜单
  • 别再乱设std了!用trunc_normal_给PyTorch模型做权重初始化,避开梯度爆炸的坑
  • 实战指南:不装IDEA,用快马平台从零到一构建部署个人博客系统
  • 5步精通Fiddler中文版:让网络调试难题迎刃而解
  • Java 17+ JNI GlobalRef滥用致内存泄漏率高达68%,2024年生产环境真实案例(含jmap+MAT精准溯源图谱)
  • 3个维度解析Slurm-web:HPC集群可视化管理的技术突破与实践指南
  • 淘晶驰串口屏自定义协议实战:5分钟搞定苹果时钟通信(附完整代码)
  • 告别拍脑袋决策:如何用ADC模型给你的硬件采购和维保计划算笔明白账?
  • Windows窗口置顶终极指南:如何用PinWin让任意应用始终保持在最上层
  • DeepSeek-Coder-V2本地化部署指南:构建企业级代码智能助手
  • 权限管理进阶:如何用ABAC模型在Spring Security或Casbin中实现动态数据过滤?
  • 利用快马平台快速构建winclaw工具原型:十分钟搭建自动化任务编排演示
  • 香橙派初体验:从零部署Armbian与OpenCV的避坑指南
  • RetinaFace人脸检测实战:3步完成合影/监控场景人脸识别
  • 扩散模型之(二十一)Stable Diffusion的技术演进
  • 少样本学习:当数据成为奢侈品,AI如何以小博大?
  • Intv_AI_MK11代码审查机器人:自动识别Java代码坏味道
  • Mac新手看过来:用phpstudy小皮面板10分钟搞定PHP+MySQL开发环境(附数据库连接实战)
  • 基于claude code skills教程,使用快马平台构建可部署的个人博客实战项目
  • Kingbase 数据库批量清库命令【重置序列】