一、特殊矩陣的使用
(1) zeros函數:產生全0矩陣,即零矩陣
(2)ones函數:產生全1局者,即幺矩陣
(3)eye函數:產生對角線爲1的矩陣。當矩陣是方陣時,得到一個單位陣。
(4)rand函數:產生(0,1)區間均勻分佈的隨機矩陣
(5)randn函數:產生均值爲0,方差爲1的標準正態分佈隨機矩陣
舉例:
分析:
% rand函數:產生(0,1)開區間均勻分佈的隨機數x
% fix(a+(b-a+1)*x):產生[a,b]區間上均勻分佈的隨機整數
% randn函數:產生均值爲0、方差爲1的標準正態分佈隨機數x
% u+ ax: 得到均值爲u, 方差爲a^2的隨機數
>>A = fix(10+(99-10+1)*rand(5))
>>B = 0.6+sqrt(0.1)*randn(5)
>>C = eye(5)
>>(A+B)*C == C*A +B*C
ans = 1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
二、用於專門學科的特殊矩陣
(1)魔法矩陣
% 魔方矩陣 由1,2,3...n^2個整數組成,且每行每列以及主、副對角線各n元素之和都相等
% M = magic(8);
% disp(M);
% disp(sum(M(1,:)));
% disp(sum(M(:,1)));
>> study_6
64 2 3 61 60 6 7 57
9 55 54 12 13 51 50 16
17 47 46 20 21 43 42 24
40 26 27 37 36 30 31 33
32 34 35 29 28 38 39 25
41 23 22 44 45 19 18 48
49 15 14 52 53 11 10 56
8 58 59 5 4 62 63 1
260
260
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
5 -10 10 -5 1
-10 30 -35 19 -4
10 -35 46 -27 6
-5 19 -27 17 -4
1 -4 6 -4 1
>>
(2)範德蒙矩陣:用於通訊系統的糾錯編碼中,如圖所示。
% M = vander(1:5);
% disp(M);
(3)希爾伯特矩陣 行號+列號的倒數,
% format rat
% H = hilb(4);
% disp(H);
(4)伴隨矩陣 compan(P) p是一個多項式的係數向量
(5) 帕斯卡矩陣P = pascal
三、矩陣的變換
(1)對角陣:提取矩陣對角線的元素
% 提取矩陣對角線元素
% A = fix(10+(99-10+1)*rand(5));
% disp(A);
% B = diag(1:5);
% disp(B);
% C = B*A;
% disp(C);
% A = fix(10+(99-10+1)*rand(5));
% disp(A);
% B = diag(1:5);
% C = A*B;
% disp(C);
(2)三角陣:上三角陣和下三角陣:%上三角陣 triu(A),triu(A,k);
(3)矩陣的轉置 :小數點後加單引號
%上三角陣 triu(A),triu(A,k);
%矩陣旋轉rot90(A,k)
%矩陣的轉置 小數點後面接單引號 單引號(共軛轉置)
%矩陣的翻轉 fliplr(A) 矩陣左右翻轉
%flipud 上下翻轉
例題:驗證魔方陣的主對角線、對角線元素之和相等
(4)逆矩陣:inv(A)
例題:
四、矩陣求值
(1)矩陣的行列式值:
%行列式求值 det(A)
(2)矩陣的秩:線性無關的行數或者列數
規律:
(3)矩陣的跡:對角線元素和或者特徵值和
(4)矩陣的範數:
%向量的矩陣和範數
%1範數,向量元素的絕對值之和
%2範數,向量元素平方和的平方根
%無窮範數:向量元素絕對值中的最大值 norm
norm(V)、norm(V,1)計算向量V的一範數
norm(V,inf);
%1範數,矩陣列元素絕對值之和的最大值
%2範數,矩陣最大特徵值的平方根
%無窮範數:矩陣行元素絕對值之和的最大值
(5)矩陣的條件數:描述矩陣的性能(%矩陣條件數:A的範數 與A逆矩陣的範數乘積 越接近1 矩陣性能越好)
五、矩陣的特徵值和特徵向量
(1)矩陣特徵值的數學定義:
例題:
結論:
(2)特徵值的幾何意義:
六、稀疏矩陣
(1)定義:0元素個數多於非0個數
(2) 矩陣的存儲方式:
(3)存儲方式:
(4)存儲方式的轉化:
(5)直接建立稀疏存儲矩陣:Sparse、spconvert
(6)帶狀稀疏矩陣:非零元素在對角線上 ,speye產生單位稀疏矩陣
總結:
第二篇介紹了Matlab矩陣的運算處理