[笔记][总结] MIT线性代数 Gilbert Strang 矩阵运算
作者水平有限,欢迎大家提出文中错误
矩阵运算
- 转置
- 转置的性质
- 求逆
- 使用高斯消元法求解逆矩阵
- 矩阵逆的代数表达式
- Cramer′sruleCramer's\ ruleCramer′s rule
- 方阵逆矩阵的性质
- 矩阵乘法
- 矩阵乘法的五种形式
- 1. 行列内积
- 2. 矩阵与列向量之积
- 3. 行向量和矩阵之积
- 4. 若干秩1矩阵之和
- 5. 分块乘法
- 矩阵乘法的性质
- 行列式
- 行列式的性质
- 行列式的计算方法
- 行列式的定义式
- 代数余子式法
- 代数余子式
- 上三角阵对角线元素之积
- 例子
- 特征值和特征向量
- 算法
- 复数特征值
- 重复的特征值
- 特征值的性质
- 对角化和矩阵幂
- 对角化的条件
- 矩阵幂
- 矩阵的稳定性
- 相似性
- 再议特征值分解
- 相似矩阵的性质
- 相似矩阵的特征值与特征向量
- JordanJordanJordan标准型
- JordanJordanJordan块
- JordanJordanJordan定理
本文主要讨论除加法和数乘之外的矩阵常用运算
转置
Aij=AjiTA_{ij}=A^T_{ji} Aij=AjiT
转置的性质
- (AT)−1(A^T)^{-1}(AT)−1=(A−1)T(A^{-1})^T(A−1)T
- 对于任意矩阵RRR,RTRR^TRRTR是对称矩阵
求逆
使用高斯消元法求解逆矩阵
通过高斯消元法,可以将可逆矩阵化为单位矩阵,但是此时左乘的矩阵不仅仅是消元矩阵,而是涉及到所有初等行变换。如果将合作用依然写作EEE
那么有
EA=IEA=I EA=I
则
E=A−1E=A^{-1} E=A−1
如果同时对矩阵AAA和单位阵III做初等行变换,则可以构造增广矩阵[A∣I][A|I][A∣I]
E[A∣I]=[I∣A−1]E[A|I]=[I|A^{-1}] E[A∣I]=[I∣A−1]
矩阵逆的代数表达式
这里会用到本部分后面的内容
A−1=1detACTA^{-1}=\frac{1}{det\ A}C^T A−1=det A1CT
矩阵CCC被称为代数余子式矩阵
C=[A11A12⋯A1nA21A22⋯A2n⋮⋮⋱⋮An1An2⋯Ann]C= \left[ \begin{matrix} A_{11}&A_{12}&\cdots &A_{1n}\\ A_{21}&A_{22}&\cdots &A_{2n}\\ \vdots&\vdots&\ddots &\vdots\\ A_{n1}&A_{n2}&\cdots &A_{nn}\\ \end{matrix} \right] C=⎣⎢⎢⎢⎡A11A21⋮An1A12A22⋮An2⋯⋯⋱⋯A1nA2n⋮Ann⎦⎥⎥⎥⎤
而CTC^TCT称为伴随矩阵
证明:
ACT=[a11a12⋯a1na21a22⋯a2n⋮⋮⋱⋮an1an2⋯ann][A11A21⋯An1A12A22⋯An2⋮⋮⋱⋮A1nA2n⋯Ann]AC^T= \left[ \begin{matrix} a_{11}&a_{12}&\cdots &a_{1n}\\ a_{21}&a_{22}&\cdots &a_{2n}\\ \vdots&\vdots&\ddots &\vdots\\ a_{n1}&a_{n2}&\cdots &a_{nn}\\ \end{matrix} \right] \left[ \begin{matrix} A_{11}&A_{21}&\cdots &A_{n1}\\ A_{12}&A_{22}&\cdots &A_{n2}\\ \vdots&\vdots&\ddots &\vdots\\ A_{1n}&A_{2n}&\cdots &A_{nn}\\ \end{matrix} \right] ACT=⎣⎢⎢⎢⎡a11a21⋮an1a12a22⋮an2⋯⋯⋱⋯a1na2n⋮ann⎦⎥⎥⎥⎤⎣⎢⎢⎢⎡A11A12⋮A1nA21A22⋮A2n⋯⋯⋱⋯An1An2⋮Ann⎦⎥⎥⎥⎤
得到
(ACT)ij=ai1Aj1+ai2Aj2+⋯+ainAjn(AC^T)_{ij}=a_{i1}A_{j1}+a_{i2}A_{j2}+\cdots+a_{in}A_{jn} (ACT)ij=ai1Aj1+ai2Aj2+⋯+ainAjn
注意到i=ji=ji=j时,(ACT)ii=detA(AC^T)_{ii}=det\ A(ACT)ii=det A
对于其他项,考虑其意义,是矩阵AAA某一行的元素,乘以一个不同行对应的代数余子式,如果将矩阵的第jjj行用第iii行进行代替,其行列式的值正是上式
∣a11a12⋯a1n⋮⋮⋮ai1ai2⋯ain⋮⋮⋮aj1aj2⋯ajn⋮⋮⋮an1an2⋯ann∣→∣a11a12⋯a1n⋮⋮⋮ai1ai2⋯ain⋮⋮⋮ai1ai2⋯ain⋮⋮⋮an1an2⋯ann]\left| \begin{matrix} a_{11}&a_{12}&&\cdots &&a_{1n}\\ \vdots&\vdots&&&&\vdots\\ a_{i1}&a_{i2}&&\cdots &&a_{in}\\ \vdots&\vdots&&&&\vdots\\ a_{j1}&a_{j2}&&\cdots &&a_{jn}\\ \vdots&\vdots&&&&\vdots\\ a_{n1}&a_{n2}&&\cdots &&a_{nn}\\ \end{matrix} \right| \rightarrow \left| \begin{matrix} a_{11}&a_{12}&&\cdots &&a_{1n}\\ \vdots&\vdots&&&&\vdots\\ a_{i1}&a_{i2}&&\cdots &&a_{in}\\ \vdots&\vdots&&&&\vdots\\ a_{i1}&a_{i2}&&\cdots &&a_{in}\\ \vdots&\vdots&&&&\vdots\\ a_{n1}&a_{n2}&&\cdots &&a_{nn}\\ \end{matrix} \right] ∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣a11⋮ai1⋮aj1⋮an1a12⋮ai2⋮aj2⋮an2⋯⋯⋯⋯a1n⋮ain⋮ajn⋮ann∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣→∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣a11⋮ai1⋮ai1⋮an1a12⋮ai2⋮ai2⋮an2⋯⋯⋯⋯a1n⋮ain⋮ain⋮ann⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
所以i≠ji\not= ji=j时,(ACT)ij=0(AC^T)_{ij}=0(ACT)ij=0
所以ACT=detA⋅IAC^T=det\ A\cdot IACT=det A⋅I,证毕
这样的公式对实际中矩阵逆的求解没有什么价值,因为时间复杂度太高,但是它提供了逆矩阵的代数表达式
Cramer′sruleCramer's\ ruleCramer′s rule
上一小节知道了矩阵逆的代数表达式,现在考虑矩阵方程Ax=bAx=bAx=b,可知
x=1detACTbx=\frac{1}{det\ A}C^Tb x=det A1CTb
考虑xxx的其中一项
detA⋅xi=b1C1i+b2C2i+⋯+bnCnidet\ A\cdot x_i=b_1C_{1i}+b_2C_{2i}+\cdots+b_nC_{ni} det A⋅xi=b1C1i+b2C2i+⋯+bnCni
构造矩阵BiB_iBi
Bi=[a11⋯b1⋯a1na21⋯b2⋯a2n⋮⋮⋮an1⋯bn⋯ann]B_i= \left[ \begin{matrix} a_{11}&\cdots &b_1&\cdots&a_{1n}\\ a_{21}&\cdots&b_2&\cdots&a_{2n}\\ \vdots&&\vdots&&\vdots\\ a_{n1}&\cdots&b_n &\cdots&a_{nn}\\ \end{matrix} \right] Bi=⎣⎢⎢⎢⎡a11a21⋮an1⋯⋯⋯b1b2⋮bn⋯⋯⋯a1na2n⋮ann⎦⎥⎥⎥⎤
矩阵AAA用列向量bbb替换了第iii列,形成了矩阵BiB_iBi,所以
detA⋅xi=detBidet\ A\cdot x_i=det\ B_i det A⋅xi=det Bi
克拉默法则
矩阵方程Ax=bAx=bAx=b若是有解且唯一的,那么其解为
xi=detBidetAx_i=\frac{det\ B_i}{det\ A} xi=det Adet Bi
方阵逆矩阵的性质
如果AAA是可逆矩阵,AA−1=A−1A=IAA^{-1}=A^{-1}A=IAA−1=A−1A=I
矩阵乘法
矩阵乘法的五种形式
1. 行列内积
Cm∗n=Am∗pBp∗nC_{m*n}=A_{m*p}B_{p*n} Cm∗n=Am∗pBp∗n
则
cij=rowi(A)⋅columnj(A)c_{ij}=row\ i(A)\cdot column\ j(A) cij=row i(A)⋅column j(A)
2. 矩阵与列向量之积
columni(C)=Acolumni(B)column\ i(C)=A\ column\ i(B) column i(C)=A column i(B)
3. 行向量和矩阵之积
rowi(C)=rowiA⋅Brow\ i(C)=row\ iA\cdot B row i(C)=row iA⋅B
4. 若干秩1矩阵之和
C=∑i=1p[a1ia2i⋮ami][bi1bi2⋯bin]C=\sum\limits_{i=1}^p \left[ \begin{matrix} a_{1i}\\ a_{2i}\\ \vdots\\ a_{mi}\\ \end{matrix} \right] \left[ \begin{matrix} b_{i1}&b_{i2}&\cdots &b_{in} \end{matrix} \right] C=i=1∑p⎣⎢⎢⎢⎡a1ia2i⋮ami⎦⎥⎥⎥⎤[bi1bi2⋯bin]
比如
[273849][1600]=[234][16]3.[789][00]\left[ \begin{matrix} 2&7\\ 3&8\\ 4&9 \end{matrix} \right] \left[ \begin{matrix} 1&6\\ 0&0\\ \end{matrix} \right]= \left[ \begin{matrix} 2\\ 3\\ 4 \end{matrix} \right] \left[ \begin{matrix} 1&6 \end{matrix} \right] 3. \left[ \begin{matrix} 7\\ 8\\ 9 \end{matrix} \right] \left[ \begin{matrix} 0&0\\ \end{matrix} \right] ⎣⎡234789⎦⎤[1060]=⎣⎡234⎦⎤[16]3.⎣⎡789⎦⎤[00]
5. 分块乘法
[A11A12A21A22][B11B12B21B22]=[A11B11+A12B21A11B12+A12B22A21B11+A22B21A21B12+A22B22]\left[ \begin{matrix} A_{11}&A_{12}\\ A_{21}&A_{22}\\ \end{matrix} \right] \left[ \begin{matrix} B_{11}&B_{12}\\ B_{21}&B_{22}\\ \end{matrix} \right]= \left[ \begin{matrix} A_{11}B_{11}+A_{12}B_{21}&A_{11}B_{12}+A_{12}B_{22}\\ A_{21}B_{11}+A_{22}B_{21}&A_{21}B_{12}+A_{22}B_{22}\\ \end{matrix} \right] [A11A21A12A22][B11B21B12B22]=[A11B11+A12B21A21B11+A22B21A11B12+A12B22A21B12+A22B22]
分块必须匹配
矩阵乘法的性质
(AB)−1=B−1A−1(AB)^{-1}=B^{-1}A^{-1}(AB)−1=B−1A−1
行列式
行列式的性质
1.detI=1det\ I=1det I=1
2.行交换或列交换,会使行列式值取反
结合性质1,2可知detPij=−1det\ P_{ij}=-1det Pij=−1(单次交换)
3.
∣tatbcd∣=t∣abcd∣\left| \begin{matrix} ta&tb\\ c&d\\ \end{matrix} \right|=t \left| \begin{matrix} a&b\\ c&d\\ \end{matrix} \right| ∣∣∣∣tactbd∣∣∣∣=t∣∣∣∣acbd∣∣∣∣
detkA=kndetAdet\ kA=k^ndet\ A det kA=kndet A
4.
∣a+a′b+b′cd∣=∣abcd∣+∣a′b′cd∣\left| \begin{matrix} a+a'&b+b'\\ c&d\\ \end{matrix} \right|= \left| \begin{matrix} a&b\\ c&d\\ \end{matrix} \right|+ \left| \begin{matrix} a'&b'\\ c&d\\ \end{matrix} \right| ∣∣∣∣a+a′cb+b′d∣∣∣∣=∣∣∣∣acbd∣∣∣∣+∣∣∣∣a′cb′d∣∣∣∣
结合性质3,4可知det⋅det\ \cdotdet ⋅是对矩阵某一行或一列的线性算子
5.矩阵中出现两个相等的行或列,会使行列式为0
6.消去操作(从某一行加上零一行的k倍)不影响行列式的值
∣a+kcb+kdcd∣=∣abcd∣+∣kckccd∣=∣abcd∣\left| \begin{matrix} a+kc&b+kd\\ c&d\\ \end{matrix} \right|= \left| \begin{matrix} a&b\\ c&d\\ \end{matrix} \right|+ \left| \begin{matrix} kc&kc\\ c&d\\ \end{matrix} \right|= \left| \begin{matrix} a&b\\ c&d\\ \end{matrix} \right| ∣∣∣∣a+kccb+kdd∣∣∣∣=∣∣∣∣acbd∣∣∣∣+∣∣∣∣kcckcd∣∣∣∣=∣∣∣∣acbd∣∣∣∣
7.全零行(列)会导致行列式为零
8.三角阵的行列式等于对角元之积
9.奇异矩阵行列式为0
10.detAB=detA⋅detBdet\ AB=det\ A\cdot det\ Bdet AB=det A⋅det B
11.detA−1=(detA)−1det\ A^{-1}=(det\ A)^{-1}det A−1=(det A)−1
12.detA=detATdet\ A=det\ A^Tdet A=det AT
行列式的计算方法
行列式的定义式
接下来,利用上面的性质1,2,3,可以得到行列式的计算方法
以二阶方阵为例
∣abcd∣=∣a0cd∣+∣0bcd∣=\left| \begin{matrix} a&b\\ c&d\\ \end{matrix} \right|= \left| \begin{matrix} a&0\\ c&d\\ \end{matrix} \right|+ \left| \begin{matrix} 0&b\\ c&d\\ \end{matrix} \right|= ∣∣∣∣acbd∣∣∣∣=∣∣∣∣ac0d∣∣∣∣+∣∣∣∣0cbd∣∣∣∣=
∣a0c0∣+∣a00d∣+∣0bc0∣+∣0b0d∣=ad−bc\left| \begin{matrix} a&0\\ c&0\\ \end{matrix} \right|+ \left| \begin{matrix} a&0\\ 0&d\\ \end{matrix} \right|+ \left| \begin{matrix} 0&b\\ c&0\\ \end{matrix} \right|+ \left| \begin{matrix} 0&b\\ 0&d\\ \end{matrix} \right|=ad-bc ∣∣∣∣ac00∣∣∣∣+∣∣∣∣a00d∣∣∣∣+∣∣∣∣0cb0∣∣∣∣+∣∣∣∣00bd∣∣∣∣=ad−bc
可见,对于n阶方阵,依次分解第一行,第二行……第nnn行,共得到nnn^nnn项,其中只要有某项的一列或一行全为零,则此项为0,所有非零项的种类数问题,变成了一个排列组合问题,相当于对1⋯n1\cdots n1⋯n进行全排列,项总数为n!n!n!,留下的项不仅没有空行空列,而且每行或每列都只有一个元素,都可以使用多次置换矩阵PPP左乘对角阵得到。
而这n!n!n!个项的值又是什么,每一项都等于置换矩阵和某对角阵的乘积,这个对角阵的行列式就是这个项的所有非零元素之积
对于符号,已经知道,一次置换就会使行列式符号相反,这个总的置换矩阵PPP,假设非零项分别为p1a1p2a2...pnanp_{1a_1}p_{2a_2}...p_{na_n}p1a1p2a2...pnan,{a1a2⋯an}\{a_1\ a_2\cdots\ a_n\}{a1 a2⋯ an}是1,2⋯n1,2\cdots n1,2⋯n的一种排列
所以,置换矩阵PPP的行列式值是+1+1+1还是−1-1−1,就取决于{12⋯n}\{1\ 2\cdots n\}{1 2⋯n}要经过多少次置换才能达到{a1a2⋯an}\{a_1\ a_2\cdots\ a_n\}{a1 a2⋯ an},是偶数次还是奇数次。
考虑这个问题,需要先介绍逆序数的概念,在序列{a1a2⋯an}\{a_1\ a_2\cdots\ a_n\}{a1 a2⋯ an}中,所有的二元对(ai,aj)(a_i,a_j)(ai,aj)都有两种情况,假设i<ji<ji<j,一种是ai>aja_i>a_jai>aj,另一种是ai<aja_i<a_jai<aj(注意ai=aja_i=a_jai=aj是不可能的,因为{a1a2⋯an}\{a_1\ a_2\cdots\ a_n\}{a1 a2⋯ an}是1,2⋯n1,2\cdots n1,2⋯n的一种排列),而逆序数就是所有ai>aja_i>a_jai>aj情况的总数,记作τ(a1a2...an)\tau(a_1a_2...a_n)τ(a1a2...an),显然τ(12⋯n)=0\tau(1\ 2\ \cdots n)=0τ(1 2 ⋯n)=0
置换操作会如何影响逆序数?
{a1a2⋯ai⋯aj⋯an}→{a1a2⋯aj⋯ai⋯an}\{a_1\ a_2\cdots a_i\cdots a_j\cdots\ a_n\}\rightarrow \{a_1\ a_2\cdots a_j\cdots a_i\cdots\ a_n\} {a1 a2⋯ai⋯aj⋯ an}→{a1 a2⋯aj⋯ai⋯ an}
这里要证明一次置换会导致逆序数的奇偶性发生改变,为了避免对序列其他部分的影响,通过相邻元素的置换完成置换
{a1a2⋯aiai+1⋯aj⋯an}→{a1a2⋯ai+1ai⋯aj⋯an}}\{a_1\ a_2\cdots a_i\ a_{i+1}\cdots a_j\cdots\ a_n\}\rightarrow \{a_1\ a_2\cdots a_{i+1}\ a_i\cdots a_j\cdots\ a_n\}\} {a1 a2⋯ai ai+1⋯aj⋯ an}→{a1 a2⋯ai+1 ai⋯aj⋯ an}}
这样的一次置换使得序列的逆序数只加111或减111,奇偶性一定会改变
假设原序列中aia_iai和aja_jaj之间有nnn个元素
{a1a2⋯ai⋯aj⋯an}→{a1a2⋯ai+1⋯ajai⋯an}\{a_1\ a_2\cdots a_i\cdots a_j\cdots\ a_n\}\rightarrow \{a_1\ a_2\cdots a_{i+1}\cdots a_j\ a_i\cdots\ a_n\} {a1 a2⋯ai⋯aj⋯ an}→{a1 a2⋯ai+1⋯aj ai⋯ an}
需要n+1n+1n+1步
{a1a2⋯ai+1⋯ajai⋯an}→{a1a2⋯aj⋯ai⋯an}\{a_1\ a_2\cdots a_{i+1}\cdots a_j\ a_i\cdots\ a_n\}\rightarrow \{a_1\ a_2\cdots a_j\cdots \ a_i\cdots\ a_n\} {a1 a2⋯ai+1⋯aj ai⋯ an}→{a1 a2⋯aj⋯ ai⋯ an}
需要nnn步
总步数是2n+12n+12n+1,则不管置换发生在什么位置,逆序数奇偶性一定会改变
那么逆序数的奇偶性就能代表置换次数的奇偶性,这正是所求的,τ(12...n)=0\tau(1\ 2...n)=0τ(1 2...n)=0,之后的每次置换都会同步改变detPdet\ Pdet P的极性,以及序列逆序数的奇偶性。至此置换矩阵PPP的行列式就已经清晰了
detP=(−1)τ(p1p2...pn)det\ P=(-1)^{\tau(p_1p_2...p_n)} det P=(−1)τ(p1p2...pn)
再次说明,p1p2...pnp_1p_2...p_np1p2...pn是置换矩阵每行非零元所在列数(或每列非零元所在行数)
最后有行列式的定义式
det(An∗n)=∑allofpermutations(−1)τ(p1p2...pn)a1p1a2p2...anpndet(A_{n*n})=\sum\limits_{all\ of\ permutations}(-1)^{\tau(p_1p_2...p_n)}a_{1p_1}a_{2p_2}...a_{np_n} det(An∗n)=all of permutations∑(−1)τ(p1p2...pn)a1p1a2p2...anpn
τ(p1p2...pn)istheinversionnumberofpermutationp1p2...pn.{\tau(p_1p_2...p_n)}\ is\ the\ inversion\ number\ of\ permutation\ p_1p_2...p_n. τ(p1p2...pn) is the inversion number of permutation p1p2...pn.
代数余子式法
在刚才的定义式推导的过程中,所有n!n!n!项其实可以进行如下划分
{n!terms}=\{n!\ terms\}={n! terms}=
{(n−1)!termswithnonzeroa11}+\{(n-1)!\ terms\ with\ nonzero\ a_{11}\}+{(n−1)! terms with nonzero a11}+
{(n−1)!termswithnonzeroa12}+\{(n-1)!\ terms\ with\ nonzero\ a_{12}\}+{(n−1)! terms with nonzero a12}+
⋮\vdots⋮
{(n−1)!termswithnonzeroa1n}\{(n-1)!\ terms\ with\ nonzero\ a_{1n}\}{(n−1)! terms with nonzero a1n}
而这每一个划分之和,又好像满足一个n−1n-1n−1阶行列式的定义式,比如
∣a11000∗∗0∗∗∣∣0a120∗0∗∗0∗∣∣00a13∗∗0∗∗0∣\left| \begin{matrix} a_{11}&0&0\\ 0&*&*\\ 0&*&*\\ \end{matrix} \right| \left| \begin{matrix} 0&a_{12}&0\\ *&0&*\\ *&0&*\\ \end{matrix} \right| \left| \begin{matrix} 0&0&a_{13}\\ *&*&0\\ *&*&0\\ \end{matrix} \right| ∣∣∣∣∣∣a11000∗∗0∗∗∣∣∣∣∣∣∣∣∣∣∣∣0∗∗a12000∗∗∣∣∣∣∣∣∣∣∣∣∣∣0∗∗0∗∗a1300∣∣∣∣∣∣
∗*∗是可以非零的位置
所以这个nnn阶的行列式,可以分裂成nnn个n−1n-1n−1阶类似行列式的量之和。
注意这里的划分不是唯一的,可以对第一行展开,也可以对任意行展开,甚至可以对任意列展开,不过是何种展开,都能得到这个低一阶的类似行列式的量。
这个类似行列式的量被称为代数余子式,记作AijA_{ij}Aij。
det(An∗n)=∑j=1naijAij,(i=1,2,...,n)det(A_{n*n}) = \sum\limits_{j=1}^na_{ij}A_{ij},(i=1,2,...,n)det(An∗n)=j=1∑naijAij,(i=1,2,...,n)
或
det(An∗n)=∑i=1naijAij,(j=1,2,...,n)det(A_{n*n}) = \sum\limits_{i=1}^na_{ij}A_{ij},(j=1,2,...,n)det(An∗n)=i=1∑naijAij,(j=1,2,...,n)
代数余子式
为什么说代数余子式是类似行列式的量,它和行列式差在哪里?
以3∗33*33∗3矩阵为例
∣a11a12a13a21a22a23a31a32a33∣=\left| \begin{matrix} a_{11}&a_{12}&a_{13}\\ a_{21}&a_{22}&a_{23}\\ a_{31}&a_{32}&a_{33}\\ \end{matrix} \right|= ∣∣∣∣∣∣a11a21a31a12a22a32a13a23a33∣∣∣∣∣∣=
a11(a22a33−a23a32)−a12(a21a33−a23a31)+a13(a21a32−a22a31)a_{11}(a_{22}a_{33}-a_{23}a_{32})-a_{12}(a_{21}a_{33}-a_{23}a_{31})+a_{13}(a_{21}a_{32}-a_{22}a_{31}) a11(a22a33−a23a32)−a12(a21a33−a23a31)+a13(a21a32−a22a31)
从中可以观察出规律aija_{ij}aij的代数余子式Aij=(−1)i+jMijA_{ij}=(-1)^{i+j}M_{ij}Aij=(−1)i+jMij,其中MijM_{ij}Mij是除去iii行jjj列的元素,组成的子行列式,被称为aija_{ij}aij的余子式
所以3∗33*33∗3矩阵的代数余子式的极性为
∣+−+−+−+−+∣\left| \begin{matrix} +&-&+\\ -&+&-\\ +&-&+\\ \end{matrix} \right| ∣∣∣∣∣∣+−+−+−+−+∣∣∣∣∣∣
上三角阵对角线元素之积
以上两种方法的时间复杂度都是O(n!)O(n!)O(n!),其实根据行列式的倍加不变性质,可以知道detA=detUdet\ A=det\ Udet A=det U,而高斯消元法的时间复杂度只有O(n3)O(n^3)O(n3),所以MATLAB在求解矩阵行列式时,都是先消元然后计算主元之积。
det(An∗n)=∏i=1npivotelementidet(A_{n*n}) = \prod\limits_{i=1}^npivot\ element_idet(An∗n)=i=1∏npivot elementi
例子
三对角矩阵AnA_nAn,比如
A4=[1111111111]A_4= \left[ \begin{matrix} 1&1&&\\ 1&1&1&\\ &1&1&1\\ &&1&1\\ \end{matrix} \right] A4=⎣⎢⎢⎡1111111111⎦⎥⎥⎤
求一下detAndet\ A_ndet An通项
可以直接看出A1=1,A2=0,A3=−1A_1=1,A_2=0,A_3=-1A1=1,A2=0,A3=−1,从A4A_4A4开始
detA4=∣1111111111∣=det\ A_4= \left| \begin{matrix} 1&1&&\\ 1&1&1&\\ &1&1&1\\ &&1&1\\ \end{matrix} \right|= det A4=∣∣∣∣∣∣∣∣1111111111∣∣∣∣∣∣∣∣=
1⋅∣1111111∣+(−1)⋅∣111111∣=detA3−detA2=−11\cdot \left| \begin{matrix} 1&1&\\ 1&1&1\\ &1&1\\ \end{matrix} \right|+(-1)\cdot \left| \begin{matrix} 1&1&\\ &1&1\\ &1&1\\ \end{matrix} \right|=det\ A_3-det\ A_2=-1 1⋅∣∣∣∣∣∣1111111∣∣∣∣∣∣+(−1)⋅∣∣∣∣∣∣111111∣∣∣∣∣∣=det A3−det A2=−1
不难发现detAn=detAn−1−detAn−2det\ A_n=det\ A_{n-1}-det\ A_{n-2}det An=det An−1−det An−2
所以{An}\{A_n\}{An}是一个循环的数列,循环部分为
{10−1−101}\{1\ 0\ -1\ -1\ 0\ 1\} {1 0 −1 −1 0 1}
特征值和特征向量
矩阵AAA的特征向量是在左乘矩阵AAA后,方向不变的向量
Ax=λxAx=\lambda\ x Ax=λ x
λ\lambdaλ是特征向量xxx的特征值
根据不可逆矩阵的定义,存在非零向量xxx,满足Ax=0Ax=0Ax=0,所以如果一个矩阵是奇异的,那么它必有特征值000。
例子
有投影矩阵P=A(ATA)−1ATP=A(A^TA)^{-1}A^TP=A(ATA)−1AT
对于v∈C(A)v\in C(A)v∈C(A),Pv=vPv=vPv=v,所以所有在AAA列空间(投影到的子空间)的向量都是特征向量,特征值为111。
对于w∈N(AT)w\in N(A^T)w∈N(AT),Pw=0Pw=0Pw=0,所以所有与AAA列空间垂直的向量都是特征向量,特征值为000。
算法
Ax=λx→[A−λI]x=0Ax=\lambda\ x\rightarrow[A-\lambda I]x=0 Ax=λ x→[A−λI]x=0
可见x∈N(A−λI)x\in N(A-\lambda I)x∈N(A−λI)。
在计算中,常常首先计算det[A−λI]det\ [A-\lambda I]det [A−λI],先求出λs\lambda sλs
对于矩阵
A=[3113]A=\left[ \begin{matrix} 3&1\\ 1&3\\ \end{matrix} \right] A=[3113]
A−λI=[3−λ113−λ]A-\lambda I=\left[ \begin{matrix} 3-\lambda&1\\ 1&3-\lambda\\ \end{matrix} \right] A−λI=[3−λ113−λ]
det[A−λI]=(3−λ)2−1=0det\ [A-\lambda I]=(3-\lambda)^2-1=0 det [A−λI]=(3−λ)2−1=0
得到λ1=2,λ2=4\lambda_1=2,\lambda_2=4λ1=2,λ2=4
分别将λ1=2,λ2=4\lambda_1=2,\lambda_2=4λ1=2,λ2=4代回方程
[3−λ113−λ]\left[ \begin{matrix} 3-\lambda&1\\ 1&3-\lambda\\ \end{matrix} \right] [3−λ113−λ]
λi\lambda_iλi对应的特征向量就在这个矩阵的零空间中
λ1=2\lambda_1=2λ1=2
[1111]\left[ \begin{matrix} 1&1\\ 1&1\\ \end{matrix} \right] [1111]
x1=[1−1]Tx_1=[1\ -1]^Tx1=[1 −1]T
λ2=4\lambda_2=4λ2=4
[−111−1]\left[ \begin{matrix} -1&1\\ 1&-1\\ \end{matrix} \right] [−111−1]
x2=[11]Tx_2=[1\ 1]^Tx2=[1 1]T
A−λIA-\lambda IA−λI的意义是什么
矩阵
[0110]\left[ \begin{matrix} 0&1\\ 1&0\\ \end{matrix} \right] [0110]
其特征值为λ1=−1,λ2=1\lambda_1=-1,\lambda_2=1λ1=−1,λ2=1,特征向量为x1=[1−1]Tx_1=[1\ -1]^Tx1=[1 −1]T,x2=[11]Tx_2=[1\ 1]^Tx2=[1 1]T
对比上边的例子,可以发现A−λIA-\lambda IA−λI并不会影响特征向量,而是将所有特征值减去了λ\lambdaλ
复数特征值
90°90\degree90°旋转矩阵
Q=[0−110]Q= \left[ \begin{matrix} 0&-1\\ 1&0\\ \end{matrix} \right] Q=[01−10]
Q−λI=[−λ−11−λ]Q-\lambda I= \left[ \begin{matrix} -\lambda&-1\\ 1&-\lambda\\ \end{matrix} \right] Q−λI=[−λ1−1−λ]
det[Q−λI]=λ2+1=0det\ [Q-\lambda I]=\lambda^2+1=0 det [Q−λI]=λ2+1=0
可得λ1=−i\lambda_1=-iλ1=−i,λ2=i\lambda_2=iλ2=i
注意特征值是纯虚数,而矩阵是反对称的
虚数意味着某种旋转
重复的特征值
矩阵
A=[3103]A= \left[ \begin{matrix} 3&1\\ 0&3\\ \end{matrix} \right] A=[3013]
det[A−λI]=(3−λ)2−1=0det\ [A-\lambda I]=(3-\lambda)^2-1=0 det [A−λI]=(3−λ)2−1=0
这个矩阵,有两个相等的特征值λ1=λ2=3\lambda_1=\lambda_2=3λ1=λ2=3,也称特征值λ=3\lambda=3λ=3的代数重度是2。
但是对于这个矩阵的特征向量
A−3I=[0100]A-3I= \left[ \begin{matrix} 0&1\\ 0&0\\ \end{matrix} \right] A−3I=[0010]
发现只有一个特征向量[10]T[1\ 0]^T[1 0]T
重复的特征值可能会造成特征向量的短缺,但是不是所有有重复特征值的矩阵都会造成特征向量的短缺,对于这样矩阵的重复的特征值,其对应的特征空间维度等于其特征值的代数重度。
特征值的性质
n∗nn*nn∗n矩阵有nnn个特征值
特征值之和等于矩阵的迹(trace)(trace)(trace)
特征值之积等于矩阵行列式
复特征值成对出现,互为共轭
对角化和矩阵幂
假设矩阵AAA存在nnn个相互独立的特征向量,构造成特征向量矩阵
S=[x1x2⋯xn]S=[x_1\ x_2\cdots x_n] S=[x1 x2⋯xn]
将AAA左乘SSS
AS=[λ1x1λ2x2⋯λnxn]AS=[\lambda_1x_1\ \lambda_2x_2\cdots\lambda_nx_n] AS=[λ1x1 λ2x2⋯λnxn]
分离特征值和特征向量
AS=[x1x2⋯xn][λ1λ2⋱λn]=SΛAS=[x_1\ x_2\cdots x_n] \left[ \begin{matrix} \lambda_1&&&\\ &\lambda_2&&\\ &&\ddots&\\ &&&\lambda_n\\ \end{matrix} \right]=S\Lambda AS=[x1 x2⋯xn]⎣⎢⎢⎡λ1λ2⋱λn⎦⎥⎥⎤=SΛ
左乘S−1S^{-1}S−1
A=SΛS−1A=S\Lambda S^{-1} A=SΛS−1
对角化的条件
上一小节可以看到,不是所有矩阵都有数量足够的线性无关的特征向量,而可对角化的条件,正是要求nnn阶矩阵有nnn个线性无关的特征向量。(注意这里不要求AAA可逆)
矩阵幂
对角化提供了计算矩阵幂次的简便算法,当然前提是矩阵可对角化(diagonalizable)(diagonalizable)(diagonalizable)
An=SΛS−1SΛS−1⋯SΛS−1=SΛnS−1A^n=S\Lambda S^{-1}S\Lambda S^{-1}\cdots S\Lambda S^{-1}=S\Lambda^n S^{-1} An=SΛS−1SΛS−1⋯SΛS−1=SΛnS−1
上式说明,AnA^nAn相比于AAA,特征向量没有变,但是特征值变成λn\lambda^nλn
矩阵的稳定性
如果矩阵的所有特征值绝对值都小于1,那么
n→∞,An→On\rightarrow\infin,A^n\rightarrow O n→∞,An→O
称矩阵AAA是稳定的
相似性
如果∃M\exists M∃M是可逆矩阵,使得矩阵A,BA,BA,B满足,B=M−1AMB=M^{-1}AMB=M−1AM
相似性完成了对同阶方阵的一个划分
再议特征值分解
S−1AS=ΛS^{-1}AS=\Lambda S−1AS=Λ
可对角化的矩阵,就是相似与某个对角阵的矩阵
相似矩阵的性质
- 矩阵相似是一种等价关系
a) 相似矩阵与自身相似
b) 如果矩阵AAA相似于矩阵BBB,则矩阵BBB相似于矩阵AAA
c) 如果矩阵AAA相似于矩阵BBB,矩阵BBB相似于矩阵CCC,则矩阵AAA相似于矩阵CCC - 若矩阵AAA相似于矩阵BBB,则AAA和BBB有相同的特征值
- 若矩阵AAA相似于矩阵BBB,则矩阵f(A)f(A)f(A)相似于矩阵f(B)f(B)f(B),当AAA可逆,矩阵A−1A^{-1}A−1相似于矩阵B−1B^{-1}B−1
相似矩阵的特征值与特征向量
相似矩阵具有相同的特征值
证明
如果AAA相似于BBB,
Bx=λxBx=\lambda x Bx=λx
M−1AMx=λxM^{-1}AMx=\lambda xM−1AMx=λx
AMx=λMxAMx=\lambda MxAMx=λMx
证毕,同时,可以看出虽然相似矩阵的特征值相等,但是特征向量发生了变化,不过可以发现两个相似的矩阵必有相同数目的线性无关特征向量
但是这是相似矩阵的判据吗?
考虑矩阵
[3103][3003]\left[ \begin{matrix} 3&1\\ 0&3\\ \end{matrix} \right] \left[ \begin{matrix} 3&0\\ 0&3\\ \end{matrix} \right] [3013][3003]
先上结论,这个两个矩阵不相似,但是他们具有相同的特征值3,而且代数重度是2,左边矩阵只能找到一个线性无关的特征向量,而右边的矩阵可以找到两个线性无关的特征向量。
其实右边的对角阵,在利用相似性进行的矩阵划分中,他所在的划分只有他一个元素,换言之,对于特征值为λ\lambdaλ,代数重度为nnn,具有nnn个线性无关的特征向量的nnn阶方阵,除自身外无其他矩阵与其相似。
左边的矩阵中,其实在上一节已经知道,它是无法对角化的,当然它与右边的对角阵不相似。但是在它所在的划分中,它是最标准的形式,被称为JordanformJordan\ formJordan form(诺尔当标准型)。
JordanJordanJordan标准型
相似的矩阵都可以被表示成同一个JordanJordanJordan标准型
再考虑矩阵
[11][11]\left[ \begin{matrix} &1&&\\ &&1&\\ &&&\\ &&&\\ \end{matrix} \right] \left[ \begin{matrix} &1&&\\ &&&\\ &&&1\\ &&&\\ \end{matrix} \right] ⎣⎢⎢⎡11⎦⎥⎥⎤⎣⎢⎢⎡11⎦⎥⎥⎤
这两个矩阵都有相同的特征值000,和相同的代数重度444,而且都有两个线性无关的特征向量,但是其实两者并不相似
JordanJordanJordan块
JordanJordanJordan块形如
[λi1λi⋱⋱1λi]\left[ \begin{matrix} \lambda_i&1&&\\ &\lambda_i&\ddots&\\ &&\ddots&1\\ &&&\lambda_i\\ \end{matrix} \right] ⎣⎢⎢⎡λi1λi⋱⋱1λi⎦⎥⎥⎤
JordanJordanJordan块只有一个特征向量
上述例子的两个矩阵可以分块为
[J3∗3O3∗1O1∗3J1∗1][J2∗2O2∗2O2∗2J2∗2]\left[ \begin{matrix} J_{3*3}&O_{3*1}\\ O_{1*3}&J_{1*1}\\ \end{matrix} \right] \left[ \begin{matrix} J_{2*2}&O_{2*2}\\ O_{2*2}&J_{2*2}\\ \end{matrix} \right] [J3∗3O1∗3O3∗1J1∗1][J2∗2O2∗2O2∗2J2∗2]
可见这两个方阵无法得到相同的分块,JordanJordanJordan认为这样的矩阵不相似
JordanJordanJordan定理
每个方阵AAA都相似与一个JordanJordanJordan矩阵
JordanJordanJordan矩阵形如
J=[J1J2⋱Ji]J= \left[ \begin{matrix} J_1&&&\\ &J_2&&\\ &&\ddots&\\ &&&J_i\\ \end{matrix} \right] J=⎣⎢⎢⎡J1J2⋱Ji⎦⎥⎥⎤
J∗J_*J∗是JordanJordanJordan块
而且
#Jordanblocks=#eigenvectors\#Jordan\ blocks=\# eigenvectors #Jordan blocks=#eigenvectors
可对角化的矩阵的JordanJordanJordan矩阵就是对角阵Λ\LambdaΛ
[笔记][总结] MIT线性代数 Gilbert Strang 矩阵运算相关推荐
- [笔记][总结] MIT线性代数 Gilbert Strang 矩阵分解
作者水平有限,欢迎大家提出文中错误 矩阵分解 PAn∗n=LUPA_{n*n}=LUPAn∗n=LU 高斯消元法 消元矩阵 EliminationmatricesElimination\ matri ...
- [笔记][总结] MIT线性代数 Gilbert Strang 对称矩阵
作者水平有限,欢迎大家提出文中错误 正定性与对称矩阵 对称矩阵 对称矩阵的对角化 正定性 正定矩阵判据 正定矩阵的性质 正定性与最小二乘法 二次型 对称矩阵的LU分解与二次型的配方 连续多元函数在某点 ...
- [笔记][总结] MIT线性代数 Gilbert Strang 矩阵的应用
作者水平有限,欢迎大家提出文中错误 矩阵的应用 电路理论 图的矩阵表示--邻接矩阵 回路 零空间 左零空间 Ohm′slawOhm's\ lawOhm′s law 再议回路 外部电源 电路理论的三个核 ...
- [笔记][总结] MIT线性代数 Gilbert Strang 正交矩阵
作者水平有限,欢迎大家提出文中错误 正交性与正交矩阵 正交性 标准正交矩阵 投影矩阵 一维情况 最小二乘法 回到投影矩阵 投影矩阵的若干性质 再述最小二乘法 Gram-Schmidt正交化 A=QRA ...
- [笔记][总结] MIT线性代数 Gilbert Strang 向量空间
作者水平有限,欢迎大家提出文中错误 向量空间与四个基本子空间 向量空间 线性子空间 四个基本子空间 C(A):columnspaceofAC(A):column\ space\ of \ AC(A): ...
- [笔记][总结] MIT线性代数 Gilbert Strang 线性方程组
作者水平有限,欢迎大家提出文中错误 矩阵方程.线性方程组 Ax=bAx=bAx=b的行图像 Ax=bAx=bAx=b的列图像 齐次方程Ax=0Ax=0Ax=0 非齐次方程Ax=bAx=bAx=b Ax ...
- 86岁还在录网课:MIT教授Gilbert Strang最新「线性代数」课程上线
机器之心报道 参与:张倩.Jamin.Raccon X 讲 MIT 线性代数经典课程的 Gilbert Strang 教授已经 86 岁高龄了.他的书被清华选作教材,课程吸引了国内外大批学子.如今疫情 ...
- 线性代数与数据学习:MIT教授Gilbert Strang帮你打下坚实的数学基础
机器之心编辑,作者:思源.刘晓坤. MIT 教授 Gilbert Strang 最新书籍<线性代数与数据学习>(Linear Algebra and Learning from Data) ...
- 86岁还在录网课:MIT教授Gilbert Strang最新「线性代数」课程上线,被清华选作教材...
转自:机器之心 参与:张倩.Jamin.Raccon X 讲 MIT 线性代数经典课程的 Gilbert Strang 教授已经 86 岁高龄了.他的书被清华选作教材,课程吸引了国内外大批学子.如今疫 ...
最新文章
- 云计算机基地有辐射吗,服务器机房有辐射大吗
- gulp-autoprefixer报Promise is not defined错误
- Python基础概念_11_标准库
- 网络上总结python中的面试题
- “贵妇”必备的高价糖水,我给燕窝上了10年智商税
- Linux RabbitMQ+Erlang /sbin/service rabbitmq-server start 启动报错
- Socket网络编程--简单Web服务器(3)
- Microsoft SQL Server数据库部署过程
- python操作文件open_【转】PYTHON open/文件操作
- php calendar,php编译安装calendar扩展模块
- Windows 8实例教程系列 - 布局控制
- 安装包时后面的参数以及简写
- 计算机视觉大佬--何凯明
- 【文章翻译】Reinforced Variational Inference
- graphpad两组t检验_如何用GraphPad Prism进行两组连续变量的比较
- python爬虫代理的使用_从零开始写Python爬虫 --- 2.4 爬虫实践:代理的爬取和验证...
- python eel vue_张莽子—
- STM8 fHSI和 fCPU分频
- IntelliJ IDEA如何修改版权信息
- 如何监控ActiveMQ
热门文章
- tensorflow gpu python3.5_tensorflow环境搭建:Ubuntu16.04+python3.5+cuda8.0+tensorflow1.4
- 房产中介小程序版v8.1.71房产小程序 房产中介小程序 二手房小程序
- Panda3D 载入角色
- Java读写操作西门子S7系列PLC
- [HIHO1560] H国的身份证号码II(dp,计数,矩阵快速幂)
- 机器学习小试(11)验证码识别测试-使用Qt与Tensorflow2进行深度学习实验
- 《炬丰科技-半导体工艺》SPM光刻工艺
- 云南大学软件学院java实验九_云南大学软件学院JAVA实验三
- 猫狗分类-VGG16-Finetune
- 傻瓜html编辑器中文版,LRC傻瓜编辑器官方版