本節將講解行列式的應用。
從行列式出發,又可以發現新的公式。
逆矩陣公式
公式
\(2*2\) 的逆矩陣公式
\[{\left( \begin{array}{cc} a & b \\ c & d \\ \end{array} \right)}^{-1}=\frac{1}{\text{ad}-\text{bc}}\left( \begin{array}{cc} d & -b \\ -c & a \\ \end{array} \right) \]
右側第一項是行列式的倒數,第二項是原矩陣每一行的代數余子式構成的矩陣的轉置,記為 \(C^{T}\) .她是原矩陣的伴隨矩陣。伴隨矩陣的各元素是原矩陣對應元素的代數余子式。
\(n*n\) 矩陣的逆矩陣公式
\[A^{-1}=\frac{1}{detA}C^{T} \]
\(A\) 的行列式由 \(n\) 個元素的乘積組成;伴隨矩陣個元素由 \(n-1\) 個乘積組成。
高斯-若爾當求逆法在數值計算無懈可擊。
現在我們得到了逆矩陣的代數表達式,使得算法能夠寫成代數形式。
值得注意的是,不建議用這個公式計算,毫無疑問消元法更有利於手算或計算機處理。
同時這個式子也告訴我們,只有當行列式不等於0時,才有逆矩陣。
證明
證明逆矩陣公式成立,我們可以證明 \(AA^{-1}=I\) 成立,即證明 \(A\frac{C^{T}}{detA}=I\)。
行列式是一個數,所以我們可以將她放在等式另一邊:
\[AC^{T}=(detA)I \]
注意,右邊是行列式(一個數)乘以單位陣,結果是對角矩陣,不是一個數。
將左邊展開
\[\left( \begin{array}{cccc} a_{11} & a_{12} & ... & a_{1 n} \\ a_{21} & ... & ... & ... \\ ... & ... & ... & ... \\ a_{\text{n1}} & ... & ... & a_{\text{nn}} \\ \end{array} \right) \left( \begin{array}{cccc} C_{11} & C_{21} & ... & C_{\text{n1}} \\ C_{12} & ... & ... & ... \\ ... & ... & ... & ... \\ C_{1 n} & ... & ... & C_{\text{nn}} \\ \end{array} \right) \]
根據行列式的代數余子式公式
\[detA=a_{i1}C_{i1}+a_{i2}C_{i2}+...a_{in}C_{in} \]
矩陣 \(A\) 的第 \(i\) 行乘以伴隨矩陣的第 \(i\) 列,結果就是行列式 \(detA\).
故
\[\left( \begin{array}{cccc} a_{11} & a_{12} & ... & a_{1 n} \\ a_{21} & ... & ... & ... \\ ... & ... & ... & ... \\ a_{\text{n1}} & ... & ... & a_{\text{nn}} \\ \end{array} \right) \left( \begin{array}{cccc} C_{11} & C_{21} & ... & C_{\text{n1}} \\ C_{12} & ... & ... & ... \\ ... & ... & ... & ... \\ C_{1 n} & ... & ... & C_{\text{nn}} \\ \end{array} \right)= \left( \begin{array}{cccc} \text{detA} & ... & ... & ... \\ ... & \text{detA} & ... & ... \\ ... & ... & ... & ... \\ ... & ... & ... & \text{detA} \\ \end{array} \right) \]
對角線上都是 \(detA\).
那么結果的非對角線元素等於什么呢?
某一行乘以其他行的代數余子式,結果為0.
某一行乘以其他行的代數余子式,我們還是可以看作一個行列式,結果為0,表示可能這個行列式的其中兩行相等。
以 \(2*2\) 矩陣為例
利用行列式的代數余子式求解
\[{\left| \begin{array}{cc} a & b \\ c & d \\ \end{array} \right|}=ad+b(-c) \]
如果第一行乘以第二行的代數余子式,則行列式等於:
\[a(-b)+b(a)=0 \]
這種情況和計算矩陣行列式有兩行相等的情況一樣,即
\[{\left| \begin{array}{cc} a & b \\ a & b \\ \end{array} \right|}=a(b)+b(-a)=0 \]
這種情況同樣適用在 \(n*n\) 矩陣。
\(A\) 的第一行,乘以最后一行的代數余子式,相當於求一個特殊矩陣的行列式,特殊矩陣的第一行和最后一行相等。
所以除了對角線上的元素,其余都是零。
\[\left( \begin{array}{cccc} a_{11} & a_{12} & ... & a_{1 n} \\ a_{21} & ... & ... & ... \\ ... & ... & ... & ... \\ a_{\text{n1}} & ... & ... & a_{\text{nn}} \\ \end{array} \right) \left( \begin{array}{cccc} C_{11} & C_{21} & ... & C_{\text{n1}} \\ C_{12} & ... & ... & ... \\ ... & ... & ... & ... \\ C_{1 n} & ... & ... & C_{\text{nn}} \\ \end{array} \right)= \left( \begin{array}{cccc} \text{detA} & 0 & ... & 0\\ 0 & \text{detA} & ... & 0 \\ ... & ... & ... & ... \\ 0 & 0 & ... & \text{detA} \\ \end{array} \right) \]
證得左邊等於右邊。
克萊姆法則
克萊姆法則是線代中一個關於求解線性方程組的定理。
假設 \(Ax=b\) ,則我們可以得到方程組的解
\[x=A^{-1}x=\frac{1}{detA}C^{T}b \]
其中,\(C^{T}b\) 是矩陣 \(A\) 的元素的代數余子式構成的矩陣,而 \(b\) 是一個向量,我們也可以把她們看成一個行列式,記為 \(detB\) .\(B\) 表示這個行列式的原矩陣。
\[x=\frac{detB}{detA} \]
克萊姆發現 \(x\) 的每個分量可以寫為:
\[x_i=\frac{detB_i}{detA} \]
並且發現了 矩陣 \(B_i\) 的規律:
\(B_1\) 就是矩陣 \(A\) 的第一列用向量 \(b\) 代替;
\(B_2\) 就是矩陣 \(A\) 的第二列用向量 \(b\) 代替;
...
\(B_i\) 就是矩陣 \(A\) 的第 \(i\) 列用向量 \(b\) 代替。
以 \(B_1\) 為例說明
\[B_1=\left( \begin{array}{cccc} b_1 & a_{12} & \square & a_{1 n} \\ b_2 & a_{22} & \square & a_{2 n} \\ \square & \square & \square & \square \\ b_n & a_{\text{n2}} & \square & a_{\text{nn}} \\ \end{array} \right) \]
求 \(B_1\) 的行列式,利用代數余子式公式,在第一行展開
\[|B_1|=C_{11}b_1+C_{21}b_2+C_{31}b_3+...++C_{n1}b_n \]
可以看出,這其實就是 \(C^{T}b\) 的一部分。
\(C\) 是比原來小一階的行列式,所以 \(C\) 包含矩陣 \(A\) 的 \(n-1\) 階元素。
這就是克萊姆法則。
注意,同逆矩陣公式一樣,不建議使用她計算,如果要用這個計算方程組的解,我們就需要計算 \(n\) 個\(detB\) ,非常麻煩。
克萊姆法則的價值在於她給出了求解線性方程組的代數表達式,而不只是能進行數值運算。
體積
這個課題是通過行列式求體積。
命題是:行列式的絕對值等於一個箱子的體積。
先看 \(3*3\) 情況

矩陣的第一行對應三維空間中一個向量,她是箱子的第一條邊,矩陣的第二行對應箱子的第二條邊,矩陣的第三行對應箱子的第三條邊。
得到箱子的三條邊,就能得到整個箱子的形狀——平行六面體。
箱子由三條邊固定。每個面都是平行四邊形。
箱子的體積等於行列式的絕對值。因為行列式有可能是負數。
\[V_{box}=|detA| \]
證明
行列式的三性質定義了行列式,所以我們證明箱子具有三性質,那么箱子就一定等於行列式,這是很巧妙的間接證明方法。
- 性質1是講單位陣的。假設矩陣 \(A\) 是單位陣,則箱子是一個單位立方體。我們可以先證明單位立方體的體積等於行列式的絕對值。
單位矩陣的行列式值為1,單位立方體的值也為1,假設成立,證明性子具備性質1。
如果矩陣 \(A\) 是正交矩陣\(Q\) ,她的各列都是標准正交向量。 矩陣 \(Q\) 構成的箱子,與單位陣不同在於,箱子在空間被旋轉了。怎么證明 \(|Q|=±1\)
\(Q\) 具有以下性質
\[Q^TQ=I \]
兩邊同時取行列式
\[\begin {align} &det(Q^TQ)=1\\ 性質9\rightarrow&|Q^T||Q|=1\\ 性質10\rightarrow&|Q|^2=1 \end {align} \]
故 \(|Q|=±1\) 。
性質1成立。
-
對於性質2是關於符號的,交換2行,很顯然箱子的體積沒有發生改變,我們不關心性質2。
-
那么長方體呢?
長方體的情況其實就是行乘以標量。
如果一行翻倍,體積也會翻倍。根據行列式的性質3a,可以把一行的公因數提出來,所以行列式也翻倍。
因此箱子的體積也滿足行列式的性質3a。
那么性質3b呢
\[\left| \begin{array}{cc} a+a^{'} & b+b^{'} \\ c & d \\ \end{array} \right|= \left| \begin{array}{cc} a & b \\ c & d \\ \end{array} \right|+ \left| \begin{array}{cc} a^{'} & b^{'} \\ c & d \\ \end{array} \right| \]
我們的目標是要求體積,但對於 \(2*2\) 情況,等於求面積

求平行四邊形的面積,在以前就是底乘以高,但是我們就需要去計算底和高分別是多少,計算過程中可能有根號,比較麻煩。
對於 \(2*2\) 情況,平行四邊形的面積等於對應矩陣的行列式的值。
\[area \quad of \quad parallelogram={\left| \begin{array}{cc} a & b \\ c & d \\ \end{array} \right|}=ad-bc \]
我們利用坐標值,就能通過行列式求出體積和面積。
三角形的面積是平行四邊形面積的一半。

公式為
\[area \quad of \quad triangle =\frac{1}{2}(ad-bc) \]
再看三角形另一種情況,如果三角形的頂點不在原點上怎么辦?

這個問題其實是讓三角形面積公式一般化
\[area \quad of \quad triangle =\frac{1}{2} \left| \begin{array}{ccc} x_1 & y_1 & 1 \\ x_2 & y_2 & 1 \\ x_3 & y_3 & 1 \\ \end{array} \right| \]