1樓:
矩陣分解 (decomposition, factorization)是多半將矩陣拆解為數個三角形矩陣(triangular matrix)。
依使用目的的不同 ,可分為三種矩陣分解法:1)三角分解法 (triangular factorization),2)qr 分解法 (qr factorization),3)奇異值分 解法 (singular value decompostion)。
(1) 三角分解法
三角分解法是將原正方 (square) 矩陣分解成一個上三角形矩陣 或是排列(permuted) 的上三角形矩陣 和一個 下三角形矩陣,這樣的分解法又稱為lu分解法。它的用途主要在簡化一個大矩陣的行列式值的計算過程,求 反矩陣,和求解聯立方程組。不過要注意這種分解法所得到的上下三角形矩陣並非唯一,還可找到數個不同 的一對上下三角形矩陣,此兩三角形矩陣相乘也會得到原矩陣。
我們舉以下二個矩陣為例:
利用三角分解法可將a和b二矩陣分別拆解為上下三角形矩陣
注意b分解的矩陣得到的第一個矩陣[lb]是排列的下三角形矩陣,如果第
二、三列互換,則此變成完全的下 三角形矩陣。
以matlab函式計算上述的lu分解法,其語法為[l,u]=lu(a),其中l代表下三角形矩陣u代表上三角形矩陣。 我們來看一個例子。
>> a = [1 2 -1, -2 -5 3; -1 -3 0]; b=[1 3 2; -2 -6 1; 2 5 7];
>> [l1,u1] = lu(a); [l2,u2] = lu(b);
>> l1; u1
l1 = % 注意這個矩陣l1和之前的[la]不相同
-0.5 1 0
1 0 0
0.5 1 1
u1 = % 注意這個矩陣u1和之前的[ua]不相同
-2 -5 3
0 -0.5 0.5
0 0 -2
>> l2; u2
l2 = % 注意這個矩陣l2和之前的[lb]不相同
-0.5 0 1
1 0 0
-1 1 0
u2 = % 注意這個矩陣u2和之前的[ub]不相同
-2 -6 1
0 -1 8
0 0 2.5
(2) qr分解法
qr分解法是將矩陣分解成一個正規正交矩陣與上三角形矩陣。正規正交矩陣q滿足條件,所以稱為qr分解法與此正規正交矩陣的通用符號q有關。
matlab以qr函式來執行qr分解法, 其語法為[q,r]=qr(a),其中q代表正規正交矩陣,而r代表上三角形矩 陣。此外,原矩陣a不必為正方矩陣;如果矩陣a大小為,則矩陣q大小為,矩陣r大小為。
(3) 奇異值分解法
奇異值分解 (sigular value decomposition,svd) 是另一種正交矩陣分解法;svd是最可靠的分解法,但是它比qr 分解法要花上近十倍的計算時間。[u,s,v]=svd(a),其中u和v代表二個相互正交矩陣,而s代表一對角矩陣。 和qr分解法相同者, 原矩陣a不必為正方矩陣。
使用svd分解法的用途是解最小平方誤差法和資料壓縮。
2樓:祕籍攻略
正交分解(qr分解)
[q r]=qr(a)
[q r p]=qr(a)
①輸入引數矩陣a不必是方陣
②輸出參量用[q r]格式中,q為正交方陣,階數等於a的行數和列數中較小者,滿足
q』*q= i ,r為與a同維的上三角陣,滿足q*r=a③輸出參量用[q r p]格式時,q為正交方陣,r為對角線元素絕對值遞減的上三角陣,p為換位陣,滿足a*p=q*r
正交方陣:滿足a*a'=i的方陣a。
matlab中的qr分解都能分解什麼樣的矩陣?? 5
3樓:匿名使用者
% 正交分解(qr) 對於矩陣a(n×n),如果a非奇異,則存在正交矩陣q和上三角矩陣r,使得a滿足關係式 a=q*r,並且當r的對交元都為正時,qr分解是唯一的。
對矩陣x進行qr分解和lu分解,qr分解和lu分解是什麼意思呢
4樓:匿名使用者
為了求解線性方程組,我們通常需要一定的解法。其中一種解法就是通過矩陣的三角分解來實現的,屬於求解線性方程組的直接法。在不考慮舍入誤差下,直接法可以用有限的運算得到精確解,因此主要適用於求解中小型稠密的線性方程組。
(1) 三角分解法
三角分解法是將原正方 (square) 矩陣分解成一個上三角形矩陣 或是排列(permuted) 的上三角形矩陣和一個 下三角形矩陣,這樣的分解法又稱為lu分解法。它的用途主要在簡化一個大矩陣的行列式值的計算過程,求 反矩陣,和求解聯立方程組。不過要注意這種分解法所得到的上下三角形矩陣並非唯一,還可找到數個不同 的一對上下三角形矩陣,此兩三角形矩陣相乘也會得到原矩陣。
matlab以lu函式來執行lu分解法, 其語法為[l,u]=lu(a)。
l是下三角矩陣:lower。u是上三角矩陣:upper
(2) qr分解法
qr分解法是將矩陣分解成一個正規正交矩陣與上三角形矩陣,所以稱為qr分解法,與此正規正交矩陣的通用符號q有關。
matlab以qr函式來執行qr分解法, 其語法為[q,r]=qr(a)。
q是正交矩陣,r是n*n的上三角矩陣。
5樓:匿名使用者
lu分解是矩陣的三角分解,產生一個上三角矩陣和一個下三角矩陣。
qr分解是矩陣的正交分解。
6樓:匿名使用者
我猜的看看對不對
qr=queue resolve=列分解
lu=line u(不知道)=行分解
矩陣的qr分解schmidt正交化方法中的入值怎麼確定
取決於矩陣的性質 如果沒什麼特殊條件的話householder變換最好,既穩定工作量又小 一個矩陣可qr分解的充要條件?如何進行qr分解?任何一個矩陣都可以進行qr分解。有兩種方式 施密特正交化 householder矩陣法 如果矩陣不是列滿秩的矩陣,如果還想使用施密特正交的方法進行qr的分解,需要...
matlab中如何進行矩陣的特徵分解
比如你的矩陣專 是屬a a 4 7 10 13 5 8 11 14 6 9 12 15 7 10 13 16 u,v eig a u 0.4252 0.7922 0.1848 0.2559 0.4731 0.3667 0.1379 0.0197 0.5211 0.0588 0.8302 0.8072...
Matlab軟體怎樣進行矩陣奇異值分解
矩陣奇異值分解在bai矩陣分du析中佔有極其重要zhi的地位,而這種方法對於學習矩陣dao論的學生來說比回較難答以計算,並且難以理解,以下為使用matlab軟體進行矩陣奇異值分解的方法 http jingyan.使用的版本為matlab 2016a中文破解版 求實現矩陣奇異值分解的matlab 15...