MATLAB Learning Days---------矩陣的秩

預備知識

如果一個向量線性獨立於另外一些向量組,那意味着這一向量不能寫成它們的線性組合,簡單例子如下:

>> u = [1;-1];
>> v = [3;-4];
>> w = [5,-6];

研究這些向量,我們可以看出:

 2u + v = w

因此w線性相關於uv,此時w可以寫成uv的線性組合。另一例子:

u = [2;0;0];
v = [;-1;0];
w = [0;0;7];

就構成線性獨立組,這是因爲這些向量中沒有一個可以寫成另外兩個的線性組合。
再看矩陣:

A =
     0     1     0     2
     0     2     0     4

很明顯,矩陣的第二行是第一行的兩倍。因此只有一行是獨立的,矩陣的秩爲1。

>> rank(A)
ans =
     1

再看一個例子:

B =
     1     2     3
     3     0     9
    -1     2    -3

第三列數第一列的三倍,因此,這兩列線性相關,另外兩列線性獨立,到此我們得知有兩個顯現獨立列

>> rank(B)
ans =
     2

昇華

現在我們來看一下帶有n個未知量的m個線性方程組:

Ax = b

b連結在A上構成增廣矩陣:

[A b]

解的情況:

  • 無解:rank(A)不等於rank(A b)時方程無解
  • 有解:當且僅當rank(A) = rank(A b)時方程有解。
  1. 如果矩陣的秩r等於方程未知數的個數,那麼方程有唯一解。

  2. 如果秩r小於n,那麼方程有無數解。

接下來一個例子我們來解方程組:
假設有一個方程組
x    2y  +  z  =  123x  +4y+5z  =  202x  +  y  +  7z  =  11 x\,\,-\,\,2y\,\,+\,\,z\,\,=\,\,12 \\ 3x\,\,+4y+5z\,\,=\,\,20 \\ -2x\,\,+\,\,y\,\,+\,\,7z\,\,=\,\,11
矩陣的係數是:
在這裏插入圖片描述
我們還有:
b=  (122011) \mathrm{b} =\,\,\left( \begin{array}{c} 12\\ 20\\ 11\\ \end{array} \right)
因此增廣矩陣是:
(A  b)  =  (  121123452021711) \left( A\,\,b \right) \,\,=\,\,\left( \begin{array}{c} \,\,1 -2 1 12\\ 3 4 5 20\\ -2 1 7 11\\ \end{array} \right)
第一步在MATLAB輸入這些矩陣:

>> A = [1 -2 1;3 4 5; -2 1 7];
>> b = [12;20;11];

接着我們創建增廣矩陣:

>> C = [A b];

現在我們看一下A的秩:

>> rank(A)
ans =
     3

C的秩:

>> rank(C)
ans =
     3

由於秩相同,因此解存在,這裏有三個未知量,r = 3,所以有唯一解,我們用左除求解:

>> x = A\b
x =
    4.3958
   -2.2292
    3.1458
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章