矩陣
矩陣是兩維數字數組,要在 MATLAB 創建矩陣,輸入的行各元素之間用空格或逗號分隔,行末使用分號標記。
>> A = [-1,6; 7, 11]
A =
-1 6
7 11
>> B = [2,0,1;-1,7,4; 3,0,1]
B =
2 0 1
-1 7 4
3 0 1
轉置
>> A = [-1 2 0; 6 4 1]
A =
-1 2 0
6 4 1
>> B = A'
B =
-1 6
2 4
0 1
% 如果矩陣包含有複數元素,那麼轉置操作會自動計算複數的共軛值:
>> C = [1+i, 4-i; 5+2*i, 3-3*i]
C =
1.0000 + 1.0000i 4.0000 - 1.0000i
5.0000 + 2.0000i 3.0000 - 3.0000i
>> D = C'
D =
1.0000 - 1.0000i 5.0000 - 2.0000i
4.0000 + 1.0000i 3.0000 + 3.0000i
% 如果要轉置複數矩陣的而不計算它的共軛值,那麼我們使用(.')
>> D = C.'
D =
1.0000 + 1.0000i 5.0000 + 2.0000i
4.0000 - 1.0000i 3.0000 - 3.0000i
乘法
與數組類似,矩陣的乘法同樣分爲兩種:
>> A = [12 3; -1 6]; B = [4 2; 9 1];
>> C = A .* B
C =
48 6
-9 6
>> A = [2 1; 1 2]; B = [3 4; 5 6];
>>> A * B
ans =
11 14
13 16
>> A = [1 4; 8 0; -1 3]; B = [-1 7 4; 2 1 -2];
>> C = A*B
C =
7 11 -4
-8 56 32
7 -4 -10
特殊矩陣
單元矩陣是一個對角線爲非零元素其它元素爲零的方形矩陣。要創建 n×n 的單元矩陣,輸入下面的 MATLAB 命令:
>> eye(4)
ans =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
下面是創建全0或者全1的矩陣操作:
>> zeros(3)
ans =
0 0 0
0 0 0
0 0 0
>> zeros(2,3)
ans =
0 0 0
0 0 0
>> ones(3)
ans =
1 1 1
1 1 1
1 1 1
>> ones(2,3)
ans =
1 1 1
1 1 1
矩陣引用
在 MATLAB 中,矩陣的單個元素或整列都能夠被引用。考慮下面的矩陣:
>> A = [1 2 3; 4 5 6; 7 8 9]
A =
1 2 3
4 5 6
7 8 9
% 單元素選擇
>> A(2,3)
ans =
6
% 列元素選擇
>> A(:,2)
ans =
2
5
8
% 行元素選擇
>> A(2,:)
ans=
4 5 6
>> A(:,2:3)
ans =
2 3
5 6
8 9
>> E = A([1,1,1,1],:)
E =
1 2 3
1 2 3
1 2 3
1 2 3