先求行列式的值,再寫出伴隨矩陣,最后用行列式的值的倒數(shù)去乘伴隨矩陣。 或者矩陣右邊加上三階單位矩陣,任何作初等變換,使左邊變成三階單位矩陣,然后右邊就是要求的逆矩陣了。 說的有點(diǎn)亂- -,書上應(yīng)該很詳細(xì)的吧
本文我們將從以下幾個(gè)部分來詳細(xì)介紹如何求3X3矩陣的逆矩陣:傳統(tǒng)的計(jì)算方法、楔積法(使用格拉斯曼代數(shù))、參考
手工計(jì)算一個(gè)3x3矩陣的逆矩陣是一項(xiàng)繁瑣的工作,但它非常有用,比如求解各種矩陣方程。第一部分:傳統(tǒng)的計(jì)算方法
運(yùn)用初等行變換換成E矩陣,然后有耐心地一步一步進(jìn)行初等行變換,步驟寫得很詳細(xì)可以看一下。
第1步:求出 det(M) ,也就是矩陣M的行列式的值。
矩陣?yán)餂]有較多成塊的零元素 是不能用分塊矩陣來求的 而且這里元素不多 3*3矩陣直接A,E 1 2 -1 1 0 0 3 4 -2 0 1 0 5 -4 1 0 0 1 r2-3r1,r3-5r1 ~ 1 2 -1 1 0 0 0 -2 1 -3 1 0 0 -14 6 -5 0 1 r1+r2,r3-7r2 ~ 1 0 0 -2 1 0 0 -2 1 -3 1 0 0 0
行列式的值通常顯示為逆矩陣的分母值,如果行列式的值為零,說明矩陣不可逆。
左邊矩陣第一行的元素分別與右邊矩陣第一列的元素相乘,求和得到相乘矩陣的第一行的第一個(gè)元素。左邊矩陣第一行的元素分別與右邊矩陣第二列的元素相乘,求和得到相乘矩陣的第一行的第二個(gè)元素。以此類推。 具體方法如下圖: 擴(kuò)展資料:例如: 矩
第2步:求出 MT , 即轉(zhuǎn)置矩陣。
橫向消元有一個(gè)問題就是,如果不是整數(shù),太麻煩。感覺對(duì)于三階陣,還不如伴隨矩陣法方便。
矩陣的轉(zhuǎn)置體現(xiàn)在沿對(duì)角線作鏡面反轉(zhuǎn),也就是將元素 (i,j) 與元素 (j,i) 互換。
顯然就是一行一行來計(jì)算 先找到第一列的一個(gè)1 (或者某行除以其第一個(gè)數(shù)) 確定是哪一行 再別的行都減去 那個(gè)是第一個(gè)數(shù)是1的行乘以其自己行的數(shù) 那樣第一列就只剩一個(gè)為1,別的是零 以此推類,對(duì)每一列都這樣處理 最后(A,E)~(E,A^-1)
第3步:求出每個(gè)2X2小矩陣的行列式的值。
和單位矩陣寫在一起然后對(duì)原矩陣初等行變換,等原來矩陣變成單位陣,那么之前的單位矩陣就變成逆了。
第4步:將它們表示為如圖所示的輔助因子矩陣,并將每一項(xiàng)與顯示的符號(hào)相乘。
和單位矩陣寫在一起然后對(duì)原矩陣初等行變換,等原來矩陣變成單位陣,那么之前的單位矩陣就變成逆了。
這樣就得到了伴隨矩陣(有時(shí)也稱為共軛矩陣),用 Adj(M) 表示。
問題在于 (3A)* ≠ 3A* ! 而是 (kA)* = k^(n-1)A*。 即對(duì)于三階矩陣 A, (3A)* = 3^(3-1) A* = 9A* !
第5步:由前面所求出的伴隨矩陣除以第一步求出的行列式的值,從而得到逆矩陣。
假設(shè)一個(gè)三階矩陣 a = [ [1 0 0], [0 2 0], [0 0 3] ] a的逆矩陣為np.linalg.inv(a) 如果求不出來證明沒有逆矩陣
第6步:對(duì)逆矩陣轉(zhuǎn)置,然后列出每個(gè)元素周圍的2x2矩陣。
來個(gè)最基礎(chǔ)的吧?別看下面的,估計(jì)你還沒學(xué)到初等矩陣的行變換以及相關(guān)結(jié)論,最簡(jiǎn)單就變成上或下三角行列式就行,對(duì)吧?首先,把全部不為0的換到第一行(加負(fù)號(hào)),然后把第一列都變?yōu)?(第二行,第三行),然后再利用第二行把第三行的第二列變
檢查三遍行列式的值,如果和原矩陣對(duì)應(yīng)的位置的數(shù)相同,那么你求出的結(jié)果就是原矩陣的逆矩陣。使用這個(gè)方法,不需要擔(dān)心符號(hào)的問題。
【知識(shí)點(diǎn)】 若矩陣A的特征值為λ1,λ2,,λn,那么|A|=λ1·λ2··λn 【解答】 |A|=1×2××n= n! 設(shè)A的特征值為λ,對(duì)于的特征向量為α。 則 Aα = λα 那么 (A²-A)α = A²α - Aα = λ²α - λα = (λ²-λ)α 所以A²-A的特征值
第二部分:楔積法(使用格拉斯曼代數(shù))
根據(jù)定理,把原矩陣變換到單位矩陣的 行變換, 正好把單位矩陣變換到逆矩陣。 所以只要把原矩陣和單位矩陣寫在一起,然后進(jìn)行變換,把原矩陣變換到單位矩陣即可。
第1步:用M表示3x3的矩陣,D表示它的逆矩陣。
(A, E) = [ 0 -2 1 1 0 0] [ 3 0 -2 0 1 0] [-2 3 0 0 0 1] 交換 2,3 行,初等行變換為 [ 3 0 -2 0 1 0] [ 0 -2 1 1 0 0] [-2 3 0 0 0 1] 第 3 行加到第 1 行,初等行變換為 [ 1 3 -2 0 1 1] [ 0 -2 1 1 0 0] [-2 3 0 0 0 1] 第 1 行 2 倍加到
用c
i表示M的列向量,其中i = 0..2。
公式如下: 求元索為具體數(shù)字的矩陣的逆矩陣,常用初等變換法‘如果A可逆,則A’可通過初等變換,化為單位矩陣 I ,即存在初等矩陣使 可以看到當(dāng)A通過初等變換化為單位處陣的同時(shí),對(duì)單位矩陣I作同樣的初等變換,就化為A的逆矩陣 這就是求逆矩陣的
第2步:計(jì)算D = c
#include #include #include // 獲取矩陣的大小templatestruct matrix_size; templatestruct matrix_size { typedef T type; static size_t const value = N;}; templatebool inv(Array &out, Array const &in_) { typedef typename matrix_size
^ c
1 ^ c
2,其中'^'表示楔積。
1,0,0,1,0,0 0,0,1,0,1,0 0,1,0,0,0,1 交換后兩行得 1,0,0,1,0,0 0,1,0,0,0,1 0,0,1,0,1,0 后3列即為逆矩陣, 與原矩陣同。
如果D為零,那說明M沒有逆矩陣。
一般用初等行變換A|E 變換成E|B 此時(shí)B就是A的逆矩陣 此方法,叫Gauss-Jordan法 另一種方法,是用伴隨矩陣,A^(-1)=A*/|A|
否則,M-1的第i行 = (c
可以得到第三行元素為(0,3,3),與第一行相等, 由此可知,行列式A 的秩小于等于2,A為非滿秩方陣。 即IAI=0
(i+1) mod 3 ^ c
(i + 2) mod 3)) / D,其中i = 0.2
小提示
注意,這個(gè)方法也可以應(yīng)用于含變量或未知量的矩陣中,比如代數(shù)矩陣 M 和它的逆矩陣 M-1 。
將所有步驟都寫下來,因?yàn)橐胄乃?X3矩陣的逆是極其困難的。
有些計(jì)算機(jī)程序也可以計(jì)算出矩陣的逆。最高可以求出30X30的矩陣。
伴隨矩陣是輔助因子矩陣的轉(zhuǎn)置,這就是為什么在第二步中我們要將矩陣轉(zhuǎn)置以求出輔助因子的轉(zhuǎn)置矩陣。
可以通過將 M 與 M-1相乘檢驗(yàn)結(jié)果。你應(yīng)該能夠發(fā)現(xiàn),M*M-1 = M-1*M = I. I 是單位陣,其對(duì)角線上的元素都為1,其余元素全為0。否則,你可能在某一步出了錯(cuò)。
警告
不是所有的3X3矩陣都存在逆矩陣。如果矩陣的行列式的值為零,它就不存在逆矩陣。 (注意到在公式里我們會(huì)除以 det(M),除數(shù)為零時(shí)是沒有意義的。)
參考
http://www.math.columbia.edu/~bayer/LinearAlgebra/
http://www.bluebit.gr/matrix-calculator/
擴(kuò)展閱讀,以下內(nèi)容您可能還感興趣。
怎么求三階矩陣的逆矩陣?
和單位矩陣寫在一起然后對(duì)原矩陣初等行變換,等原來矩陣變成單位陣,那么之前的單位矩陣就變成逆了。
求三階矩陣逆矩陣
如圖
A是三階方陣,3A的逆矩陣為什么不是這樣求的
問題在于 (3A)* ≠ 3A* ! 而是 (kA)* = k^(n-1)A*。
即對(duì)于三階矩陣 A, (3A)* = 3^(3-1) A* = 9A* !更多追問追答追問沒看懂,能不能推一下3A*不是這個(gè)嗎畫錯(cuò)了是矩陣符號(hào)但是問題還在啊追答有伴隨矩陣的定義,每個(gè)元素都是代數(shù)余子式,即 n-1 階行列式。
則 (kA) 的伴隨矩陣,其元素都是由 kaij 組成的 n-1 階行列式,
每行提取k, 共提取了 n-1 個(gè) k, 即 k^(n-1), 則有 (kA)* = k^(n-1)A*追問完美的解答😁謝謝你啊
用Python實(shí)現(xiàn)三階矩陣的求逆?
假設(shè)一個(gè)三階矩陣
a = [ [1 0 0],
[0 2 0],
[0 0 3] ]
a的逆矩陣為np.linalg.inv(a)
如果求不出來證明沒有逆矩陣
跪求三階矩陣求逆矩陣的簡(jiǎn)便算法或者公式。。。。不要說求代數(shù)余子式啊
來個(gè)最基礎(chǔ)的吧?別看下面的,估計(jì)你還沒學(xué)到初等矩陣的行變換以及相關(guān)結(jié)論,最簡(jiǎn)單就變成上或下三角行列式就行,對(duì)吧?首先,把全部不為0的換到第一行(加負(fù)號(hào)),然后把第一列都變?yōu)?(第二行,第三行),然后再利用第二行把第三行的第二列變?yōu)?,這就成上三角行列式了,這求可以求了,這個(gè)方法對(duì)于有限數(shù)字行列式都是適用的,另外,希望你學(xué)過行列式的相關(guān)性質(zhì),不然你這個(gè)方法也不懂的,望采納。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com