固体氧化物电解槽soec共电解CO2和H2O利用comsol实现包括二次电流分布、浓物质传递、传热等模块。最近在实验室折腾固体氧化物电解槽SOEC的模拟发现COMSOL这玩意儿玩多物理场耦合确实带劲。今天就跟大伙儿唠唠怎么用二次电流分布浓物质传递传热搞CO₂和H₂O共电解的骚操作特别是那些参数设置里藏着魔鬼细节。先整活电解质层的设置。二次电流分布要考虑电荷守恒和电极反应动力学这时候得掏出电荷守恒方程// 电荷守恒方程 physics.create(ec, Electrochemistry, geom1); physics(ec).feature(chd1).set(sigma_s, sigma_YSZ*(1-porosity)); physics(ec).feature(chd1).set(phi_s, phi_s);这里的sigma_YSZ得用阿伦尼乌斯公式计算记得温度场耦合进来会影响电导率。有个坑是当孔隙率超过0.3时Bruggeman修正系数得手动调不然电流分布会像狗啃的。固体氧化物电解槽soec共电解CO2和H2O利用comsol实现包括二次电流分布、浓物质传递、传热等模块。气体扩散层里的浓物质传递才是真修罗场。CO₂和H₂O的摩尔分数分布搞不好会出负值这时候需要上限制器// 浓物质传输方程 model.component(comp1).physics(tcs).feature(con1).set(D, D_k_eff*(c_tot/c_ref)); model.component(comp1).physics(tcs).feature(spf1).set(R, i_cathode/(2*F));特别要注意Knudsen扩散和Fick扩散的耦合当孔径小到微米级时Knudsen项直接主导。我试过用达西定律算流速场结果发现孔隙率变化超过5%就得重新计算渗透率张量。温度场耦合最刺激的是放热反应引发的蝴蝶效应。电极反应热欧姆热气体对流换热三股势力混战// 热源项设置 physics(ht).feature(hs1).set(Q, ec.Q_ohm ec.Q_reac tcs.Q_conv);实际操作中发现当电流密度超过8000 A/m²时局部热点会导致材料性能突变。这时候需要把热膨胀系数耦合进来不然网格畸变分分钟教你做人。最后给个忠告多场耦合时千万别用默认求解器设置。试过把非线性方法从自动切换到牛顿迭代计算时间直接腰斩。附个收敛性调参秘籍// 求解器配置 solver.study(std1).feature(time).set(tlist, range(0,50,3600)); solver.study(std1).feature(solu).set(linsolver, pardiso);记住用分离式求解器先算稳态再转瞬态否则内存爆炸的酸爽谁试谁知道。当看到电流效率曲线和实验数据误差小于8%时那种颅内高潮可比喝肥宅快乐水带劲多了。
利用Comsol实现固体氧化物电解槽(SOEC)共电解CO2和H2O的二次电流分布、浓物质传递...
固体氧化物电解槽soec共电解CO2和H2O利用comsol实现包括二次电流分布、浓物质传递、传热等模块。最近在实验室折腾固体氧化物电解槽SOEC的模拟发现COMSOL这玩意儿玩多物理场耦合确实带劲。今天就跟大伙儿唠唠怎么用二次电流分布浓物质传递传热搞CO₂和H₂O共电解的骚操作特别是那些参数设置里藏着魔鬼细节。先整活电解质层的设置。二次电流分布要考虑电荷守恒和电极反应动力学这时候得掏出电荷守恒方程// 电荷守恒方程 physics.create(ec, Electrochemistry, geom1); physics(ec).feature(chd1).set(sigma_s, sigma_YSZ*(1-porosity)); physics(ec).feature(chd1).set(phi_s, phi_s);这里的sigma_YSZ得用阿伦尼乌斯公式计算记得温度场耦合进来会影响电导率。有个坑是当孔隙率超过0.3时Bruggeman修正系数得手动调不然电流分布会像狗啃的。固体氧化物电解槽soec共电解CO2和H2O利用comsol实现包括二次电流分布、浓物质传递、传热等模块。气体扩散层里的浓物质传递才是真修罗场。CO₂和H₂O的摩尔分数分布搞不好会出负值这时候需要上限制器// 浓物质传输方程 model.component(comp1).physics(tcs).feature(con1).set(D, D_k_eff*(c_tot/c_ref)); model.component(comp1).physics(tcs).feature(spf1).set(R, i_cathode/(2*F));特别要注意Knudsen扩散和Fick扩散的耦合当孔径小到微米级时Knudsen项直接主导。我试过用达西定律算流速场结果发现孔隙率变化超过5%就得重新计算渗透率张量。温度场耦合最刺激的是放热反应引发的蝴蝶效应。电极反应热欧姆热气体对流换热三股势力混战// 热源项设置 physics(ht).feature(hs1).set(Q, ec.Q_ohm ec.Q_reac tcs.Q_conv);实际操作中发现当电流密度超过8000 A/m²时局部热点会导致材料性能突变。这时候需要把热膨胀系数耦合进来不然网格畸变分分钟教你做人。最后给个忠告多场耦合时千万别用默认求解器设置。试过把非线性方法从自动切换到牛顿迭代计算时间直接腰斩。附个收敛性调参秘籍// 求解器配置 solver.study(std1).feature(time).set(tlist, range(0,50,3600)); solver.study(std1).feature(solu).set(linsolver, pardiso);记住用分离式求解器先算稳态再转瞬态否则内存爆炸的酸爽谁试谁知道。当看到电流效率曲线和实验数据误差小于8%时那种颅内高潮可比喝肥宅快乐水带劲多了。