
COMSOL模拟热流固耦合作用下二氧化碳驱替甲烷:研究煤层变形、孔渗变化及甲烷产
量与二氧化碳封存量的讲解视频
COMSOL玩热流固耦合,模拟二氧化碳驱替甲烷的过程,这事听起来就带劲。煤层变形、孔隙率变化、
甲烷产量和二氧化碳封存效果,一个模型全搞定。咱们直接上干货,手把手拆解建模过程中的骚操作。
先整几何模型。煤层通常用二维轴对称结构,半径50米厚度5米这种参数你懂的。材料属性这块要命
——煤的弹性模量给个4.5GPa,泊松比0.3,渗透率初始值1e-12 m起步。代码里这么写:
```matlab
model.param.set('E_coal', '4.5e9[Pa]');
model.param.set('nu_coal', 0.3);
model.param.set('k0', '1e-12[m^2]');
```
别小看这几个参数,煤层的倔强全在这了。弹性模量要是给大了,煤层硬得跟钢板似的,后续变形就
演了个寂寞。
耦合设置才是重头戏。固体力学模块里得勾选几何非线性,毕竟煤层可能发生大变形。达西流模块
要开启变渗透率选项,这里骚操作来了——渗透率随体积应变动态变化:
```matlab
k = k0 * (1 + alpha*epsilon_vol)^3
```
这行代码直接决定了孔隙和裂隙的相爱相杀。alpha取0.8这种经验值,体积应变epsilon_vol一变
化,渗透率直接三次方暴增或暴跌。实测发现,当煤层被压缩超过3%时,渗透率能掉到初始值的1/10,跟踩
了急刹车似的。
传热方程必须和流体耦合,毕竟注液态CO时温度场能差出20℃。边界条件设定注入井压力12MPa,生
产井压差控制在2MPa以内。代码里用PDE模块自定义耦合项:
```matlab
// 热流固耦合源项
source_T = -beta*T*d(u,t) + gamma*d(p,t);
model.equ('heat').set('source', source_T);
```
beta和gamma这两个耦合系数能把人折腾疯。建议先做参数扫描,从0.1到10取对数间隔,不然求解
器分分钟给你摆烂。
求解器配置是翻车重灾区。建议先用瞬态求解器跑前5秒,步长0.1秒手动苟住,等非线性收敛了再
切自动步长。内存分配至少给16GB,别问为什么,问就是血泪教训。收敛判据建议放宽到相对容差1e-4,不
然算到地老天荒。