Matlab矩陣

矩陣是數字的二維數組。

在MATLAB中,可以通過在每行中輸入元素來創建一個矩形,以逗號或空格分隔數字,並使用分號標記每一行的結尾。

例如,創建一個4×5矩陣a -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8]

MATLAB將執行上述語句並返回以下結果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8]

a =

     1     2     3     4     5
     2     3     4     5     6
     3     4     5     6     7
     4     5     6     7     8

引用矩陣中的元素

要引用矩陣mx的第m行和第n列中的元素,可以這樣書寫 -

mx(m, n);

例如,要引用矩陣a的第2行和第5列中的元素,如上一節所述,可以這樣書寫 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(2,5)

MATLAB執行上述語句並返回以下結果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(2,5)

ans =

     6

要引用第m列中的所有元素,可以使用A(:,m)

假設要從矩陣a的第4行元素來創建列向量v

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
v = a(:,4)

MATLAB執行上述語句並返回以下結果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
v = a(:,4)

v =

     4
     5
     6
     7

還可以選擇第m至第n列中的元素,代碼如下 -

a(:,m:n)

下面是創建一個更小的矩陣,從第二和第三列的元素 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

MATLAB執行上述語句並返回以下結果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

ans =

     2     3
     3     4
     4     5
     5     6

以同樣的方式,可以創建一個矩陣的子部分的子矩陣。

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

MATLAB執行上述語句並返回以下結果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

ans =

     2     3
     3     4
     4     5
     5     6

以同樣的方式,可以創建一個矩陣的子部分的子矩陣。

例如,要創建一個子矩陣sa,其包含以下內容的內部子部分:

3     4     5     
4     5     6

參考以下實例代碼 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
sa = a(2:3,2:4)

MATLAB執行上述語句,返回以下結果 -

sa =
     3     4     5
     4     5     6

刪除矩陣中的一行或一列

通過向該行或列分配一組空的方括號[]來刪除矩陣的整個行或列。[]表示一個空數組。

例如,刪除第四行 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a( 4 , : ) = []

MATLAB執行上述語句,返回以下結果 -

a =
     1     2     3     4     5
     2     3     4     5     6
     3     4     5     6     7

接下來,刪除第五列 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(: , 5)=[]

MATLAB執行上述語句,返回以下結果 -

a =
     1     2     3     4
     2     3     4     5
     3     4     5     6
     4     5     6     7

例子

在這個例子中,首先創建一個3x3的矩陣m,然後複製該矩陣的第二行和第三行兩次來創建一個4x3的矩陣。

使用以下代碼創建腳本文件 -

a = [ 1 2 3 ; 4 5 6; 7 8 9];
new_mat = a([2,3,2,3],:)

運行文件時,它產生以下結果 -

new_mat =
     4     5     6
     7     8     9
     4     5     6
     7     8     9

矩陣運算

在本節中,讓我們討論和學習下面一些常用的矩陣運算 -

  • 矩陣的加法和減法
  • 矩陣除法
  • 矩陣的標量運算
  • 矩陣的轉置
  • 矩陣連接
  • 矩陣乘法
  • 矩陣的行列式
  • 矩陣的逆轉