我有一个似乎超定的方程式系统:
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.
有什么方法可以解决这个问题吗?
答案 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对确切的数字更为舒服。