上回我們說到解線性方程Ax=b,需要先對(duì)系數(shù)矩陣A不斷乘初等變換矩陣直到出現(xiàn)上三角矩陣來達(dá)到消元的目的,我們以三階矩陣為例,在不交換行的情況下,消元過程可表示為

然后通過回代的方式就可以解出x的所有值。來看一個(gè)具體的例子

先給系數(shù)陣消元

而如果我想將兩次變換變?yōu)橐淮?,只要將兩個(gè)消元矩陣相乘即可

?計(jì)算時(shí)我們可以發(fā)現(xiàn),計(jì)算結(jié)果的[7 -5 1]是由

得到的,一般來說乘就乘了,反正只要能算出結(jié)果就行了,但是就是有那么一些聰明的腦子能想出一些更高級(jí)的做法,即
LU分解
這是我們之前做消元的過程

他們想出的方法是

這里你可能還看不出來這個(gè)方法有什么吊,不就是把逆矩陣挪到右邊了嗎,我們根據(jù)上面那個(gè)例子來整理一下LU分解的運(yùn)算過程。
首先明確一點(diǎn),求消元的初等變換陣的逆矩陣只要把對(duì)應(yīng)的數(shù)變號(hào)就可以了

而如果想將兩次變換變?yōu)橐淮危纯捎?jì)算

?計(jì)算結(jié)果就是兩個(gè)矩陣的簡單組合,根本不需要乘運(yùn)算
所以解Ax=b變?yōu)?b>LUx=b,所以先解Ly=b再解Ux=y
來看一個(gè)例子(設(shè)b為[1,2,3,4])

當(dāng)然,消元過程中還可能出現(xiàn)交換行的情況,所以在LU分解前我們需要給原矩陣做一些交換行的處理,讓我們的LU分解可以順暢的做下去(在消元過程中不再交換)matlab 中有一些算法能做到這一點(diǎn),在此我們不做討論(主要是我也不知道:)),我們只給出LU分解的完全體形式

最后還想說的一點(diǎn)是關(guān)于轉(zhuǎn)置,A_{ij}=A_{ji}^{T}T?這樣的概念不必多說,我想聊幾個(gè)有很好特性的矩陣,比如交換行的矩陣P,它們滿足

且階數(shù)固定時(shí)這類矩陣的個(gè)數(shù)滿足n!
比如三階矩陣有6個(gè)這樣的矩陣

還有一類矩陣滿足AT=A,即對(duì)稱陣,而任何矩陣乘自己的轉(zhuǎn)置一定得到對(duì)稱陣,反之亦然,用公式描述為
