首先给出我们要求解的方程组:
{
x
+
2
y
+
z
=
2
3
x
+
8
y
+
z
=
12
4
y
+
z
=
2
\left\{
那么我们可以得到其系数矩阵
A
A
A:
A
=
[
1
2
1
3
8
1
0
4
1
]
A=\left[ {
以及解向量
b
b
b:
b
=
[
2
12
2
]
b=\left[ {
对于常规的消元法,我们从小学开始解二元方程组就开始使用,下面重点讲解矩阵消元法,即用矩阵语言描述消元法
此时我们的目标变成了求解 A X = b A\textbf X=b AX=b,其中 X X X是未知数向量
对于系数矩阵 A A A,我们对其进行消元,其中 A A A的每列都代表一个未知数的系数,我们消元的思想是对于每一行对比与上一行都要减少一个未知数,(即未知数的系数为0)
首先我们固定第一行,让第二行的
x
x
x对应的系数为0,我们的做法可以是让第二行减去3倍的第一行,我们可以得到:
[
1
2
1
0
2
−
2
0
4
1
]
\left[ {
然后我们固定第二行,让第三行的
y
y
y对应的系数为0,让第三行减去2倍的第二行,可以得到:
[
1
2
1
0
2
−
2
0
0
5
]
\left[ {
我们称上面的矩阵为 U U U,他是个上三角矩阵,我们称对角线上的元素为主元,其不能为0,否则我们的消元就没有了意义
此时我们只考虑了系数矩阵
A
A
A ,但是如果我们把
b
b
b也加进去,形成一个新的矩阵,我们称其为增广矩阵,那么在
A
A
A进行线性变换的同时,
b
b
b也应该随之变化,我们可以得到:
[
1
2
1
2
0
2
−
2
6
0
0
5
−
10
]
\left[ {
此时我们经过回代可以得到
U
X
=
c
U\textbf X=c
UX=c:
{
x
+
2
y
+
z
=
2
2
y
−
2
z
=
6
5
z
=
−
10
\left\{
因此我们可以轻易的求解得:
{
x
=
2
y
=
1
z
=
−
2
\left\{
之前有提到过矩阵与列向量相乘可以看做是对矩阵各列的线性组合:
[
1
2
1
3
8
1
0
4
1
]
[
2
12
2
]
=
2
[
1
3
0
]
+
12
[
2
8
4
]
+
2
[
1
1
1
]
\left[ {
如果是行向量与矩阵相乘呢?比如:
[
2
12
2
]
[
1
2
1
3
8
1
0
4
1
]
\left[ {
我们仍然可以看做是对矩阵各行的线性变换:
[
2
12
2
]
[
1
2
1
3
8
1
0
4
1
]
=
2
[
1
2
1
]
+
12
[
3
8
1
]
+
2
[
0
4
1
]
\left[ {
下面看如何从矩阵的角度理解消元法
我们做的第一次变换为行1、行3不变,行2减去三倍的行1,我们假设变换后的矩阵是由一个矩阵乘原始矩阵得到的即:
[
x
11
x
12
x
13
x
21
x
22
x
23
x
31
x
32
x
33
]
[
1
2
1
3
8
1
0
4
1
]
=
[
1
2
1
0
2
−
2
0
4
1
]
\left[ {
第二行是行2减去三倍的行一,因此我们可以得到第二行为 [ − 3 1 0 ] [-3\quad1\quad0] [−310]
由此可以得到未知数矩阵为:
[
1
0
0
−
3
1
0
0
0
1
]
\left[ {
我们称其为初等矩阵,记作
E
21
E_{21}
E21来表示其让2行1列位置元素变为0的目的
接下来我们可以求得
E
31
=
[
1
0
0
0
1
0
0
0
1
]
E_{31}=\left[ {
我们称这种矩阵为单位矩阵,相当于数字中的1,任何矩阵与它相乘都等于其本身
进而求得
E
32
=
[
1
0
0
0
1
0
0
−
2
1
]
E_{32}=\left[ {
整体来看我们可以得到:
E
32
(
E
31
(
E
21
A
)
)
=
U
E_{32}(E_{31}(E_{21}A))=U
E32(E31(E21A))=U
那么是否存在一个矩阵,其与
A
A
A相乘可以直接得到
U
U
U
置换矩阵
如果我们想要交换一个矩阵的两行,就需要使用置换矩阵,我们常常称其为
P
P
P,例如:
[
0
1
1
0
]
[
a
b
c
d
]
=
[
c
d
a
b
]
\left[ {
但是如果我们想交换矩阵的两列呢?我们只需要右乘一个P即可:
[
a
b
c
d
]
[
0
1
1
0
]
=
[
b
a
d
c
]
\left[ {
由此我们可以得到,如果想要对一个矩阵的行进行变换,我们对其左乘初等矩阵或转置矩阵即可;如果想要对一个矩阵的列进行变换,我们对其右乘初等矩阵或转置矩阵即可。
同时可以得到矩阵满足结合律,而不满足交换律
简单引出逆矩阵
前面有提到第一步的初等变
E
21
=
[
1
0
0
−
3
1
0
0
0
1
]
E_{21}=\left[ {
但如果现在我们想取消这一步骤,让变换后的矩阵变为原来的矩阵 E 21 A = U E_{21}A=U E21A=U
那么我们主需要找到一个矩阵 E − 1 E^{-1} E−1,使得 E − 1 E 21 = I E^{-1}E_{21}=I E−1E21=I即可,其中 I I I为单位矩阵(因为单位矩阵乘任何矩阵都等于其本身)
我们称
E
−
1
E^{-1}
E−1为
E
21
E_{21}
E21的逆矩阵,因为其操作跟原始矩阵是相逆的,之前我们是1、3行不变,第二行减去三倍的第一行,因此我们只需要将第二行加回来即可:
E
−
1
=
[
1
0
0
3
1
0
0
0
1
]
E^{-1}=\left[ {