MATLAB与线性代数
一、逆矩阵
例2-51
>> A=[1 2 3 4;2 3 5 8;1 3 5 7;3 4 7 11]
A =
1 2 3 4
2 3 5 8
1 3 5 7
3 4 7 11
>> det(A)
ans =
1.0000
>> inv(A)
ans =
1.0000 -1.0000 -1.0000 1.0000
2.0000 4.0000 -1.0000 -3.0000
-0.0000 -5.0000 1.0000 3.0000
-1.0000 2.0000 -0.0000 -1.0000
>> inv(A)*A %核对逆矩阵的正确性,inv(A)*A乘积结果为单位矩阵
ans =
1.0000 0 -0.0000 0
0 1.0000 0.0000 0
0 -0.0000 1.0000 0
0 -0.0000 0.0000 1.0000
另一种解法是通过单位矩阵左除矩阵A,或通过单位矩阵右除矩阵A来取得。
>> A\eye(4) %用左除法求逆矩阵
ans =
1.0000 -1.0000 -1.0000 1.0000
2.0000 4.0000 -1.0000 -3.0000
-0.0000 -5.0000 1.0000 3.0000
-1.0000 2.0000 -0.0000 -1.0000
>> eye(4)/A %用右除法求逆矩阵
ans =
1.0000 -1.0000 -1.0000 1.0000
2.0000 4.0000 -1.0000 -3.0000
-0.0000 -5.0000 1.0000 3.0000
-1.0000 2.0000 -0.0000 -1.0000
逆矩阵也可以用A矩阵的-1次乘幂来求得
>> A^(-1)
ans =
1.0000 -1.0000 -1.0000 1.0000
2.0000 4.0000 -1.0000 -3.0000
-0.0000 -5.0000 1.0000 3.0000
-1.0000 2.0000 -0.0000 -1.0000
>> A=[1 2 3 4;2 3 5 8;1 3 5 7;3 4 7 11]
A =
1 2 3 4
2 3 5 8
1 3 5 7
3 4 7 11
>> B=[A,eye(size(A))] %构造增广矩阵B,增广矩阵由矩阵A和同阶单位矩阵水平连接而成
B =
1 2 3 4 1 0 0 0
2 3 5 8 0 1 0 0
1 3 5 7 0 0 1 0
3 4 7 11 0 0 0 1
>> rref(B) %用rref函数使A矩阵成为梯形最简形式,而原来的I矩阵位置成为逆矩阵
ans =
1 0 0 0 1 -1 -1 1
0 1 0 0 2 4 -1 -3
0 0 1 0 0 -5 1 3
0 0 0 1 -1 2 0 -1
>> C=ans(:,5:8)
C =
1 -1 -1 1
2 4 -1 -3
0 -5 1 3
-1 2 0 -1
>> inv(A) %核对与逆矩阵的一致性
ans =
1.0000 -1.0000 -1.0000 1.0000
2.0000 4.0000 -1.0000 -3.0000
-0.0000 -5.0000 1.0000 3.0000
-1.0000 2.0000 -0.0000 -1.0000
例2-53
伴随矩阵不会表示