高斯消元法求逆矩阵 matlab,高斯消元法与矩阵求逆

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

昨晚信息竞赛复习的内容,与矩阵求逆有点联系,所以发出来。

高斯消元法

对于n元1次方程组

a11*x1+a12*x2+a13*x3=c1

a21*x1+a22*x2+a23*x3=c2

a31*x1+a32*x2+a33*x3=c3

求解x1、x2、x3,可以进行如下操作

1)将系数与等式右侧常熟构造成一个矩阵,称为增广矩阵,如下

a11 a12 a13 c1

a21 a22 a23 c2

a31 a32 a33 c3

易知对每行数值同时进行加减乘除操作或者交换行顺序不会对结果造成影响,于是进行如下操作。

2)选取第一行,与其下每一行进行消元操作,使得 a21,a31变成0

3)选取第二行,与其下每一行进行消元操作,使得a32变成0

4)经过以上操作后,得到如下矩阵(成倒直角三角形)

a11 a12 a13 c1

0 a22' a23' c2'

0 0 a33' c3'

5)由最后一行开始向上求解x3,x2,x1

特殊情况:

使用高斯消元法消去系数时,要注意

如果选择第i行对其下进行消去操作时,aii不能为0,此时可以从i之后选择一行j,并与i交换(如果aji均为0,说明有个元可能有无数组解)

此外,当矩阵中出现类似下面的行时,说明无实数解:

0 0 0 c(c不等于0)

(即 0*x1+0*x2+0*x3=c)

实例:

2*x1 + 5*x2 + 4*x3 = 34

1*x1 + 3*x2 + 4*x3 = 23

2*x1 + 4*x2 + 2*x3 = 26

1)创建矩阵

2 5 4 34

1 3 4 23

2 4 2 26

2)第一行*0.5与第二行消元,第一行*1与第三行消元,得

2 5 4 34

0 -0.5 -2 -6

0 1 2 8

3)第二行*-2与第三行消元,得

2 5 4 34

0 -0.5 -2 -6

0 0 2 4

4)由上,解得

x1=3

x2=4

x3=2

矩阵求逆

按照矩阵相乘构建增广矩阵

按照增广矩阵求解

具体过程略

你可能感兴趣的:(高斯消元法求逆矩阵,matlab)