You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

乙烷水蒸气气化平衡:Gekko-IPOPT与Excel-GRG求解结果对比

乙烷水蒸气气化反应热力学平衡组成计算与方法对比(1000K,乙烷与蒸汽摩尔比4:1)

针对乙烷与蒸汽摩尔比4:1的水蒸气气化反应,基于反应产物与反应物的生成吉布斯自由能,计算1000K下混合物的热力学平衡组成。分别采用Gekko调用IPOPT求解器、Excel的GRG优化器、约束根求解器进行求解,三种方法得到的平衡组成结果存在差异,现将求解过程及结果对比展示如下:

求解代码(Gekko-IPOPT)

from gekko import GEKKO     
m = GEKKO(remote=True)
x = m.Array(m.Var,13,value=1,lb=1e-27,ub=20.0)
H2,H2O,CO,O2,CO2,CH4,C2H6,C2H4,C2H2,lamda1,lamda2,lamda3,summe= x
H2.value = 3.0
H2O.value = 1.0
CO.value = 0.5
O2.value = 0.001
CO2.value = 0.5
CH4.value = 0.1
C2H6.value = 0.000215
C2H4.value = 0.00440125
C2H2.value = 0.0041294
summe.value = 8.0
lamda1.value = 1.0
lamda2.value = 1.0
lamda3.value = 1.0
eq1 = m.Param(value=14)
eq2 = m.Param(value=4)
eq3 = m.Param(value=2)
summe = m.Var(H2 + O2 + H2O + CO + CO2 + CH4 + C2H6 + C2H4 + C2H2)
lamda2 = m.Var((-1)*m.log(H2 / summe) / 2)
lamda1 = m.Var(46.03 / 1.9872 - m.log(H2O / summe) + 2 * lamda2)
lamda3 = m.Var(47.942 / 1.9872 - m.log(CO / summe) + lamda1)
m.Equation(m.exp(-4.61 / 1.9872 - 4 * lamda2 - lamda3) * summe == CH4)
m.Equation(m.exp(-28.249 / 1.9872 - 4 * lamda2 - 2 * lamda3) * summe == C2H4)
m.Equation(m.exp(-40.604 / 1.9872 - 2 * lamda2 - 2 * lamda3) * summe == C2H2)
m.Equation(m.exp(-26.13 / 1.9872 - 6 * lamda2 - 2 * lamda3) * summe == C2H6)
m.Equation(m.exp(94.61 / 1.9872 - 2 * lamda1 - lamda3) * summe == CO2)
m.Equation(m.exp(-2 * lamda1) * summe == O2)
m.Equation(2 * CO2 + CO + 2 * O2 + H2O  == eq2)
m.Equation(4 * CH4 + 4 * C2H4 + 2 * C2H2 + 2 * H2 + 2 * H2O + 6 * C2H6  == eq1)
m.Equation(CH4 + 2 * C2H4 + 2 * C2H2 + CO2 + CO + 2 * C2H6  == eq3)
m.Minimize((summe-(H2 + O2 + H2O + CO + CO2 + CH4 + C2H6 + C2H4 + C2H2))**2)
m.options.IMODE = 3 #IPOPT
m.options.MAX_ITER = 1000
m.options.OTOL = 1e-10
m.options.RTOL = 1e-10
m.solve()
print('x: ', x)
print('Objective: ',m.options.OBJFCNVAL)

Gekko-IPOPT求解结果

退出:找到最优解。
已找到解决方案。
目标函数最终值:    81.0000000000000

---------------------------------------------------
求解器         :  IPOPT (v3.12)
求解时间        :   1.169999998819549E-002 秒
目标函数值      :    81.0000000000000
求解成功
---------------------------------------------------

x:  [[5.797458326] [1.202541674] [1.202541674] [1.6791020526e-21]
[0.79745832603] [1.6503662452e-22] [3.2694282596e-27] [1.1255712085e-27]
[1e-27] [2.185089969] [2.185089969] [2.185089969] [9.5605307091]]

Excel-GRG优化器求解结果

Excel GRG优化器的求解结果对应下表中的「Excel GRG优化器」列数据。

约束根求解器结果

方程总数:13
隐式方程数:4
显式方程数:9
求解方法:约束法
收敛精度:1e-07
迭代次数:8

CO  1.685236
H2  5.118105
H2O  1.387357
SUM  8.899115  
C2H2  0.0041294  
C2H4  0.0044224  
C2H6  0.0092403  
CH4  0.2269213  
CO2  0.0522585  
lamda1  1.537016  
lamda2  0.2765838  
lamda3  2.53957  
O2  0.4114448  

求解结果对比

求解向量xGekko-IPOPTExcel GRG优化器约束根求解器Gekko最终调整值
H2: 15.7974583265.3443607125.1181055.219
H2O: 21.2025416741.5219956631.3873571.681
CO: 31.2025416741.3883516721.6852361.581
O2: 41.6791020526e-215.82E-210.41144481e-5
CO2: 50.797458326030.5448260.05225850.3693
CH4: 61.6503662452e-220.06682130.22692130.05
C2H6: 73.2694282596e-271.70E-070.00924031e-5
C2H4: 81.1255712085e-279.74E-080.00442241e-5
C2H2: 91e-273.25E-100.00412941e-5
lamda1: 102.18508996924.38783851.537016
lamda2: 112.1850899690.2531109840.2765838
lamda3: 122.1850899691.5589796242.53957
summe: 139.56053070918.8663561078.8991158.90

内容的提问来源于stack exchange,提问作者Ronny M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 02:50:55