10.matlab求解线性方程组

  • 格式:docx
  • 大小:33.14 KB
  • 文档页数:2

10. 如何求解线性方程组?

当一个方程组 Ax=b 有唯一解时可用指令 A\b 直接求解,其中, A 是线性方程组的系数矩阵, b是方程组的右端向量。例如给定线性方程组

[121−2253−2−2−2351323][𝑥1𝑥2𝑥3𝑥4]=[47−10]

可以先输入系数矩阵和右端向量,然后直接求解,在MATLAB中键入

A=[1 2 1 -2; 2 5 3 -2; -2 -2 3 5; 1 3 2 3];

b=[4; 7; -1; 0];

x=A\b

计算机执行后,将显示数据结果

x= 2 -1 2 -1

由此得知方程组的解为

x1 = 2, x2 = -1, x3 = 2, x4 = -1

上面这一种方法非常适用于方程组有唯一解的情形,在处理实际问题时,有些方程组有无穷多组解,这时可用另一条指令 rref([A b]) 化简方程组的增广矩阵,然后利用线性代数的方法得出方程组的通解。当方程组有唯一解时,仍然可以用这一指令,例如求解上面例子

在MATLAB中键入

A=[1 2 1 -2; 2 5 3 -2; -2 -2 3 5; 1 3 2 3];

b=[4; 7; -1; 0];

rref([A b])

计算机执行后,屏幕将显示数据结果

这一矩阵与增广矩阵等价(4 个非零行 5 列),由此写出与原方程等价的方程组,即

x1 = 2, x2 = -1, x3 = 2, x4 = -1

如果用 rref([A b])命令得到最后的矩阵中非零行数小于列数减 1,则可求出线性方程组的通解。有关线性方程组的通解和基础解系的概念请参考线性代数教材。