欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

线性代数学习笔记(十四)——分块矩阵

程序员文章站 2022-03-07 20:50:15
本篇笔记首先介绍了分块矩阵的概念,并介绍了按行或按列进行分块的两种常见分块方式,还讨论了矩阵标准形的主要基本特征,然后重点讨论了分块矩阵的几种运算,包括分块矩阵的和、差、数乘和乘积,以及对角型分块矩阵、三角分块矩阵和下三角分块矩阵的和、差、数乘和乘积,最后还介绍了分块矩阵转置和求逆的运算。...

本篇笔记首先介绍了分块矩阵的概念,并介绍了按行或按列进行分块的两种常见分块方式,还讨论了矩阵标准形的主要基本特征,然后重点讨论了分块矩阵的几种运算,包括分块矩阵的和、差、数乘和乘积,以及对角型分块矩阵、三角分块矩阵和下三角分块矩阵的和、差、数乘和乘积,最后还介绍了分块矩阵转置和求逆的运算。

1 基本概念

在计算或证明时为了方便,将矩阵进行分块。

定义:将一个矩阵用若干条横线和竖线分成许多个小矩阵,将每个小矩阵称为这个矩阵的子块,以子块为元素的形式上的矩阵称为分块矩阵。——百度百科

[11340201101111341110]=[A1A2A3A4]\begin{bmatrix}1&1&3&4&|&0\\-&-&-&-&-&-\\2&0&1&1&|&0\\1&1&1&1&|&3\\4&1&1&1&|&0\end{bmatrix}=\begin{bmatrix}A_1&A_2\\A_3&A_4\end{bmatrix}

根据实际做题的方便性和需要灵活分块。

以下是错误分法:
[11340201101111341110]\begin{bmatrix}1&|&1&3&|&4&0\\&|&&&-&-&-\\2&|&0&1&&1&0\\&-&-&-&-&-&\\1&1&|&1&1&|&3\\&-&-&&-&-&-\\4&|&1&1&|&1&0\end{bmatrix}

要求:不管横线还是竖线,需要一气到头。

如果分块数量比较多,也可以使用以下方式表示:
[A11A12A21A22]\begin{bmatrix}A_{11}&A_{12}\\A_{21}&A_{22}\end{bmatrix}

2 两种常见的分块

2.1 按行分块

将每行进行分块。

[123111144]=[A1A2A3]\begin{bmatrix}1&2&3\\-&-&-\\1&1&1\\-&-&-\\1&4&4\end{bmatrix}=\begin{bmatrix}A_1\\A_2\\A_3\end{bmatrix}

每一行构成一个列向量,向量将在后续章节介绍。
(α1α2α3)\begin{pmatrix}{\alpha}_1\\{\alpha}_2\\{\alpha}_3\end{pmatrix}

2.2 按列分块

将第列进行分块。

[123111144]=[B1B2B3]\begin{bmatrix}1&|&2&|&3\\1&|&1&|&1\\1&|&4&|&4\end{bmatrix}=\begin{bmatrix}B_1&B_2&B_3\end{bmatrix}

每一列构成一个行向量,向量将在后续章节介绍。
(β1β2β3)\begin{pmatrix}{\beta}_1&{\beta}_2&{\beta}_3\end{pmatrix}

3 标准形

D=[1100]m×nD=\begin{bmatrix}1&&&&&\\&\ddots&&&&\\&&1&&&\\&&&0&&\\&&&&\ddots&\\&&&&&0\end{bmatrix}_{m{\times}n}

最主要特征:从左上角开始一串连续的11,其余地方均为00标准形不一定是方的

判断以下矩不是准形:
[110][100001000010][1111]\begin{bmatrix}1&&\\&1&\\&&0\end{bmatrix}是\qquad\begin{bmatrix}1&0&0&0\\0&1&0&0\\0&0&1&0\end{bmatrix}是\qquad\begin{bmatrix}1&&&\\&1&&\\&&1&\\&&&1\end{bmatrix}

[011][1101][000]\begin{bmatrix}\color{red}{0}&&\\&1&\\&&1\end{bmatrix}不是\qquad\begin{bmatrix}1&&&\\&1&&\\&&\color{red}{0}&\\&&&1\end{bmatrix}不是\qquad\begin{bmatrix}0&&\\&0&\\&&0\end{bmatrix}

可以对标准形进行分块:
D=[11+00]m×n=[ErOr×(nr)O(mr)×rO(nr)×(nr)]D=\begin{bmatrix}1&&&|&&&\\&\ddots&&|&&&\\&&1&|&&&\\-&-&-&+&-&-&-\\&&&|&0&&\\&&&|&&\ddots&\\&&&|&&&0\end{bmatrix}_{m{\times}n}=\begin{bmatrix}E_r&O_{r\times(n-r)}\\O_{(m-r){\times}r}&O_{(n-r)\times(n-r)}\end{bmatrix}

4 分块矩阵的运算

4.1 分块矩阵的和、差、数乘和乘积

① 分块矩阵加法(和减法)

[A1A2A3A4]+[B1B2B3B4]=[A1+B1A2+B2A3+B3A4+B4]\begin{bmatrix}A_1&A_2\\A_3&A_4\end{bmatrix}+\begin{bmatrix}B_1&B_2\\B_3&B_4\end{bmatrix}=\begin{bmatrix}A_1+B_1&A_2+B_2\\A_3+B_3&A_4+B_4\end{bmatrix}

对应块分别相加,但需要确保对应块的形状保持一致。

② 数乘以分块矩阵

k[A1A2A3A4]=[kA1kA2kA3kA4]k\begin{bmatrix}A_1&A_2\\A_3&A_4\end{bmatrix}=\begin{bmatrix}kA_1&kA_2\\kA_3&kA_4\end{bmatrix}

用这个数分别乘以矩阵的每一个子块。

③ 分块矩阵乘法

[A1A2A3A4][B1B2B3B4]=[A1B1+A2B3A1B2+A2B4A3B1+A4B3A3B2+A4B4]\begin{bmatrix}A_1&A_2\\A_3&A_4\end{bmatrix}\begin{bmatrix}B_1&B_2\\B_3&B_4\end{bmatrix}=\begin{bmatrix}A_1B_1+A_2B_3&A_1B_2+A_2B_4\\A_3B_1+A_4B_3&A_3B_2+A_4B_4\end{bmatrix}

将分块看成元素,即第一个矩阵行块与第二个矩阵列块对应先相乘再相加;
然后再对每个子块进行相乘。

分块矩阵能够相乘的前提条件:子块AikA_{ik}BkjB_{kj}可乘

例4:矩阵AAm×nm{\times}n阶,矩阵BBn×sn{\times}s阶,且B=[B1B2Bt]B=\begin{bmatrix}B_1&B_2&\cdots&B_t\end{bmatrix},求ABAB
解:显然,AABB的每一个子块都可乘。
AB=A[B1B2Bt]AB=A\begin{bmatrix}B_1&B_2&\cdots&B_t\end{bmatrix}
=[AB1AB2ABt]=\begin{bmatrix}AB_1&AB_2&\cdots&AB_t\end{bmatrix}
错误理解:将外面的AA看作一个数直接乘进去;
正确理解:将AA看作只有一个块的分块矩阵。

4.2 几种分块矩阵

4.2.1 对角型分块矩阵

[A1A2At]\begin{bmatrix}A_1&&&\\&A_2&&\\&&\ddots&\\&&&A_t\end{bmatrix}

只有主对角线上有不为零的块。

例5:已知对角型分块矩阵A=[A1A2Ak]A=\begin{bmatrix}A_1&&&\\&A_2&&\\&&\ddots&\\&&&A_k\end{bmatrix}B=[B1B2Bk]B=\begin{bmatrix}B_1&&&\\&B_2&&\\&&\ddots&\\&&&B_k\end{bmatrix},并且每个子块都是同阶方阵,求ABABA+BA+B
解:AB=[A1A2Ak][B1B2Bk]AB=\begin{bmatrix}A_1&&&\\&A_2&&\\&&\ddots&\\&&&A_k\end{bmatrix}\begin{bmatrix}B_1&&&\\&B_2&&\\&&\ddots&\\&&&B_k\end{bmatrix}
=[A1B1A2B2AkBk]=\begin{bmatrix}A_1B_1&&&\\&A_2B_2&&\\&&\ddots&\\&&&A_kB_k\end{bmatrix}

A+B=[A1A2Ak]+[B1B2Bk]A+B=\begin{bmatrix}A_1&&&\\&A_2&&\\&&\ddots&\\&&&A_k\end{bmatrix}+\begin{bmatrix}B_1&&&\\&B_2&&\\&&\ddots&\\&&&B_k\end{bmatrix}
=[A1+B1A2+B2Ak+Bk]=\begin{bmatrix}A_1+B_1&&&\\&A_2+B_2&&\\&&\ddots&\\&&&A_k+B_k\end{bmatrix}

4.2.2 上三角和下三角分块矩阵

类似地,可以定义上三角分块矩阵和下三角分块矩阵。

容易证明:同型的对角型分块矩阵、三角分块矩阵和下三角分块矩阵的和、差、数乘和乘积仍然是对角型分块矩阵、三角分块矩阵或下三角分块矩阵。

4.3 分块矩阵转置

④ 分块矩阵转置
A=[A1A2A3A4A5A6]A=\begin{bmatrix}A_1&A_2&A_3\\A_4&A_5&A_6\end{bmatrix}

(1) 把子块看作普通元素求转置;
(2) 对每个子块求转置。

AT=[A1TA4TA2TA5TA3TA6T]A^T=\begin{bmatrix}A_1^T&A_4^T\\A_2^T&A_5^T\\A_3^T&A_6^T\end{bmatrix}

4.4 分块矩阵求逆

\star 例6:假设H=[ACOB]H=\begin{bmatrix}A&C\\O&B\end{bmatrix}是分块矩阵,并且AABB分别为mm阶和nn阶的可逆矩阵,试验证HH可逆,并求HH的逆矩阵。

分析:由题意可知:AAmm阶的可逆方阵,BBnn阶的可逆方阵,所以CCm×nm{\times}n阶,OOn×mn{\times}m阶。

证:行列式H=ACOB=AB|H|=\begin{vmatrix}A&C\\O&B\end{vmatrix}=|A|\cdot|B|

错误理解:=ABOC=AB=|AB-OC|=|A|\cdot|B|
正确理解:使用拉普拉斯展开定理,取定后nn行展开,所以只能取后nn列得到的子式不为零(因为取到前面的列得到的子式都等于零),即要以理解为按子式B|B|展开,余子式为A|A|,故其值为:
=B(1)+A=|B|(-1)^{行标+列标}|A|
=B(1)[(m+1)+(m+2)+...+(m+n)]+[(m+1)+(m+2)+...+(m+n)]A=|B|(-1)^{[(m+1)+(m+2)+...+(m+n)]+[(m+1)+(m+2)+...+(m+n)]}|A|
=B(1)2[(m+1)+(m+2)+...+(m+n)]A=|B|(-1)^{2[(m+1)+(m+2)+...+(m+n)]}|A|
=AB=|A||B|

又因为AABB均可逆,故A0|A|{\neq0}B0|B|{\neq}0
即:AB0|A|\cdot|B|{\neq}0
所以:HH可逆。

假设:H1=[X1X3X4X2]H^{-1}=\begin{bmatrix}X_1&X_3\\X_4&X_2\end{bmatrix}

所以:HH1=ACOB[X1X3X4X2]HH^{-1}=\begin{vmatrix}A&C\\O&B\end{vmatrix}\begin{bmatrix}X_1&X_3\\X_4&X_2\end{bmatrix}

=[AX1+CX4AX3+CX2BX4BX2]=[EOOE]=\begin{bmatrix}AX_1+CX_4&AX_3+CX_2\\BX_4&BX_2\end{bmatrix}=\begin{bmatrix}E&O\\O&E\end{bmatrix}

所以:{AX1+CX4=EAX3+CX2=OBX4=OBX2=E\begin{cases}AX_1+CX_4=E\\AX_3+CX_2=O\\BX_4=O\\BX_2=E\end{cases}

错误理解:B=OX4=O\xcancel{\Longrightarrow}B=O或X_4=O
正确做法:因为BB可逆,所以B1BX4=B1OB^{-1}BX_4=B^{-1}O,所以X4=OX_4=O

错误理解:因为BX2=EBX_2=E,所以X2=EBX_2=\frac{E}{B}
正确做法:根据逆矩阵推论,因为BX2=EBX_2=E,所以X2=B1X_2=B^{-1}

同理,将X4=OX_4=O代入AX1+CX4=EAX_1+CX_4=E可求出:X1=A1X_1=A^{-1}

X2=B1X_2=B^{-1}代入AX3+CX2=OAX_3+CX_2=O,得AX3=CB1AX_3=-CB^{-1},故X3=A1CB1X_3=-A^{-1}CB^{-1}

所以:H1=[A1A1CB1OB1]\color{red}{H^{-1}=\begin{bmatrix}A^{-1}&-A^{-1}CB^{-1}\\O&B^{-1}\end{bmatrix}}

练习:假设H=[AOCB]H=\begin{bmatrix}A&O\\C&B\end{bmatrix}是分块矩阵,并且AABB分别为mm阶和nn阶的可逆矩阵,试验证HH可逆,并求HH的逆矩阵。
结论:H1=[A1OB1CA1B1]\color{red}{H^{-1}=\begin{bmatrix}A^{-1}&O\\-B^{-1}CA^{-1}&B^{-1}\end{bmatrix}}
证明:略。

推论:若AABB均可逆,则[AB]1=[A1B1]\color{red}{\begin{bmatrix}A&\\&B\end{bmatrix}^{-1}=\begin{bmatrix}A^{-1}&\\&B^{-1}\end{bmatrix}}

可以进行推广:若A1A_1A2A_2AsA_s均可逆,
[A1A2Bs]1=[A11A21Bs1]\color{red}{\begin{bmatrix}A_1&&&\\&A_2&&\\&&\ddots&\\&&&B_s\end{bmatrix}^{-1}=\begin{bmatrix}A_1^{-1}&&&\\&A_2^{-1}&&\\&&\ddots&\\&&&B_s^{-1}\end{bmatrix}}

5 引用

《线性代数》高清教学视频 “惊叹号”系列 宋浩老师_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili_2.5 分块矩阵

本文地址:https://blog.csdn.net/li2008kui/article/details/107301726

上一篇: 集合

下一篇: C++ STL -- Algorithms