MATLAB用5个线性方程求解函数

时间:2015-03-08 23:31:51

标签: matlab

我有一个线性系统,我需要用MATLAB解决,但是它提供了关于无法找到显式解决方案的警告。下面是代码和方程式。奇怪的是我无法让它工作,请帮助。

syms a b c d e

eqs = [ c + 0.45*a - 0.45*d == 400,...
        -1*b - 0.89*a + 0.89*d + e == 0,...
        8.94*a - 8.94*d == -2000,...
        -5*b - 10*c + 5*e == -2000,...
        4.47*a - 10*c - 4.47*d == -2000];

S2 = solve(eqs)

以下是输出

`Warning: Explicit solution could not be found. 
> In solve at 179
  In HandEquationsSolve at 12 

S2 =

[ empty sym ]`

1 个答案:

答案 0 :(得分:1)

您收到错误,因为方程式无法提供有效的解决方案。

eqs = [ c + 0.45*a - 0.45*d == 400,... (1)
               -1*b - 0.89*a + 0.89*d + e == 0,... (2)
               8.94*a - 8.94*d == -2000,... (3)
              -5*b - 10*c + 5*e == -2000,... (4)
               4.47*a - 10*c - 4.47*d == -2000];  (5)

假设方程为1,2,3,4,5,则方程式(3)给出a-d = -223.7 代入(1),得到c = 500.7。 现在当你在(5)中应用a-d时,c = 100,这显然是方程中的一个误差。