千里马的超定方程组

时间:2015-11-30 18:10:07

标签: system equation solver maxima

我有一个似乎超定的方程式系统:

eq1:q = 34000*(T[CuH2O]-30);
eq2:q = 380*(T[NiCu]-T[CuH2O])/(0.20e-1);
eq3:q = 70*(T[WNi]-T[NiCu])/(0.5e-2);
eq4:q = 10*(T[SlW]-T[WNi])/(0.4e-3);
eq5:q = 1.5*(T[StSl]-T[SlW])/(0.1e-2);
eq6:q = 30*(1520-T[StSl])/(0.2e-2);
solve([eq1,eq2,eq3,eq4,eq5,eq6]);

为方便起见,我使用q值,Maple解决了这个问题。千里马告诉我:solve: more equations than unknowns.

有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

在这种情况下,solve看起来无法找出变量列表;我想这是一个错误。无论如何,您可以指定变量列表,然后solve可以处理它。这是我在尝试时得到的:

(%i17) solve([eq1,eq2,eq3,eq4,eq5,eq6], [q,T[CuH2O],T[NiCu],T[WNi],T[SlW],T[StSl]]);
rat: replaced -19000.0 by -19000/1 = -19000.0
rat: replaced -14000.0 by -14000/1 = -14000.0
rat: replaced -25000.0 by -25000/1 = -25000.0
rat: replaced -1500.0 by -1500/1 = -1500.0
rat: replaced -15000.0 by -15000/1 = -15000.0
             252666750000           12146265          25444515
(%o17) [[q = ------------, T      = --------, T     = --------,
                157163      CuH2O    157163    NiCu    157163
                                 43492140         53598810          222043310
                          T    = --------, T    = --------, T     = ---------]]
                           WNi    157163    SlW    157163    StSl    157163

solve更喜欢确切的数字(整数和有理数),因此它会转换浮点数 - 这就是rat消息的含义。一般来说,Maxima对确切的数字更为舒服。