主要内容\(\renewcommand{\deg}{\rm deg }
\newcommand{\Ima}{\rm Im }
\newcommand{\N}{\mathbb N}
\newcommand{\Z}{\mathbb Z}
\newcommand{\Q}{\mathbb Q}
\newcommand{\R}{\mathbb R}
\newcommand{\F}{\mathbb F}
\newcommand{\C}{\mathbb C}
\newcommand{\K}{\mathbb K}
\newcommand{\myunit}{1 cm}
\newcommand{\blue}[1]{{\color{blue}#1}}
\tikzset{
node style sp/.style={draw,circle,minimum size=\myunit},
node style ge/.style={circle,minimum size=\myunit},
arrow style mul/.style={draw,sloped,midway,fill=white},
arrow style plus/.style={midway,sloped,fill=white},
}
\newcommand{\lt}{<}
\newcommand{\gt}{>}
\newcommand{\amp}{&}
\definecolor{fillinmathshade}{gray}{0.9}
\newcommand{\fillinmath}[1]{\mathchoice{\colorbox{fillinmathshade}{$\displaystyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\textstyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\scriptstyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\scriptscriptstyle\phantom{\,#1\,}$}}}
\)
节 2.3 分块矩阵
矩阵运算是一种相对来说比较复杂的运算。为了简化这种运算,我们引进分块矩阵及其运算的概念。请读者务必注意,分块矩阵及其运算不是新的运算,而是矩阵运算的简化形式。
子节 2.3.1 分块矩阵的概念
定义 2.3.1.
设\(A\)是一个\(m\times n\)矩阵,用若干条横线将它分成\(r\)块,再用若干条纵线将它分成\(s\)块,我们得到了一个有\(rs\)块的分块矩阵,可记为
\begin{equation*}
A=\begin{pmatrix}
A_{11} \amp A_{12} \amp \cdots \amp A_{1s}\\
A_{21}\ \amp \ A_{22}\ \amp \ \cdots\ \amp \ A_{2s}\\
\vdots\ \amp \ \vdots\ \amp \ \ddots\ \amp \ \vdots\\
A_{r1}\ \amp \ A_{r2}\ \amp \ \cdots\ \amp \ A_{rs}
\end{pmatrix}\triangleq (A_{ij})_{r\times s},
\end{equation*}
这里\(A_{ij}\)表示一个矩阵。
分块矩阵仍然还是矩阵,它只是矩阵的一种不同表示和理解方式。矩阵的分块表示可以帮助我们适当屏蔽一些矩阵块内部的细节,将每一个块看作整体,进而关注块与块之间的关系,从更宏观的层面理解矩阵性质。理解并熟练运用分块矩阵的技巧对于更好地理解矩阵的结构和性质至关重要。
一个矩阵可以有多种分块方法,究竟怎么分比较好,要看具体需要而定。例如取
\begin{equation*}
A = \begin{pmatrix}
1 \amp 1 \amp 0 \amp 0 \amp 0\\
-1 \amp 1 \amp 0 \amp 0 \amp 0\\
0 \amp 0 \amp 1 \amp 0 \amp 0\\
0 \amp 0 \amp 1 \amp 1 \amp 0\\
0 \amp 0 \amp 0 \amp 0 \amp 1
\end{pmatrix},
\end{equation*}
若记
\begin{equation*}
A_1 = \begin{pmatrix}
1 \amp 1 \\ -1 \amp 1
\end{pmatrix},\quad A_2 = \begin{pmatrix}
1 \amp 0\\ 1 \amp 1
\end{pmatrix},\quad A_3 =1,
\end{equation*}
则
\begin{align*}
A \amp = \left(\begin{array}{cc|cc|c}
1 \amp 1 \amp 0 \amp 0 \amp 0\\
-1 \amp 1 \amp 0 \amp 0 \amp 0\\ \hline
0 \amp 0 \amp 1 \amp 0 \amp 0\\
0 \amp 0 \amp 1 \amp 1 \amp 0\\ \hline
0 \amp 0 \amp 0 \amp 0 \amp 1
\end{array}
\right) \\
\amp = \begin{pmatrix}
A_1 \amp 0 \amp 0\\
0 \amp A_2 \amp 0\\
0 \amp 0 \amp A_3
\end{pmatrix}.
\end{align*}
--> 在这种分块方式下,将矩阵块\(A_1,\ A_2,\ A_3\)都按照一个元素来理解,大矩阵\(A\)就可以看作是一个广义的“对角矩阵”。
一般地,称矩阵
\begin{equation*}
A = \begin{pmatrix}
A_1 \amp \amp \\
\amp\ddots\amp \\
\amp \amp A_s
\end{pmatrix}
\end{equation*}
是一个分块对角矩阵,其中对角块\(A_1,\dots,A_s\)都是方阵(阶数可以不同),矩阵中空白部分都是0。分块对角矩阵也常被记作
\begin{equation*}
A = {\rm diag}(A_1,\dots,A_s).
\end{equation*}
后续学习过程中我们会发现:分块对角阵与对角矩阵具有非常多类似的性质。这种类似性也体现了分块矩阵概念的合理性。
对于一般的矩阵\(A=(a_{ij})_{m\times n}\),有两种常用分块方法:
-
将\(A\)按行分块\(A=\begin{pmatrix}
A_1\\ \vdots \\A_m
\end{pmatrix}\), 其中
\begin{equation*}
A_i=(a_{i1},\dots,a_{in}),\ i=1,\dots,m.
\end{equation*}
-
将\(A\)按列分块\(A=(\alpha_1,\dots,\alpha_n)\),其中
\begin{equation*}
\alpha_j=\begin{pmatrix}
a_{1j}\\ \vdots\\a_{mj}
\end{pmatrix}, j=1,\dots,n.
\end{equation*}
分块矩阵仍然是矩阵,相应地也会有矩阵运算。设
\(A = (A_{ij})_{r\times s}\)、
\(B = (B_{ij})_{p\times q}\)。若
\(r=p\)、
\(s=q\),且对
\(\forall i,j\)均有
\(A_{ij}=B_{ij}\),则两个矩阵作为分块矩阵是相等的,事实上此时这两个矩阵也是相等的。
子节 2.3.2 分块矩阵的运算
设\(A\),\(B\)是两个\(m\times n\)矩阵,对它们用同样的方式进行分块:
\begin{equation*}
A = \begin{pmatrix}
A_{11} & \cdots & A_{1r}\\
\vdots & \ddots & \vdots\\
A_{s1} & \cdots & A_{sr}
\end{pmatrix},\quad B = \begin{pmatrix}
B_{11} & \cdots & B_{1r}\\
\vdots & \ddots & \vdots\\
B_{s1} & \cdots & B_{sr}
\end{pmatrix}
\end{equation*}
其中子块\(A_{ij}\)与\(B_{ij}\)为同型矩阵,则
\begin{equation*}
A+B = \begin{pmatrix}
A_{11}+B_{11} & \cdots & A_{1r}+B_{1r}\\
\vdots & \ddots & \vdots\\
A_{s1}+B_{s1} & \cdots & A_{sr}+B_{sr}
\end{pmatrix},
\end{equation*}
\begin{equation*}
A-B = \begin{pmatrix}
A_{11}-B_{11} & \cdots & A_{1r}-B_{1r}\\
\vdots & \ddots & \vdots\\
A_{s1}-B_{s1} & \cdots & A_{sr}-B_{sr}
\end{pmatrix}.
\end{equation*}
设分块矩阵\(A = \begin{pmatrix}
A_{11} & \cdots & A_{1r}\\
\vdots & \ddots & \vdots\\
A_{s1} & \cdots & A_{sr}
\end{pmatrix}\),\(c\in \mathbb{F}\),则
\begin{equation*}
cA = \begin{pmatrix}
cA_{11} & \cdots & cA_{1r}\\
\vdots & \ddots & \vdots\\
cA_{s1} & \cdots & cA_{sr}
\end{pmatrix}.
\end{equation*}
由于矩阵乘法对两个矩阵阶数有特殊要求,分块矩阵乘法中对于块的分法也有特殊要求。
把\(A=(a_{ik})_{m\times p}\),\(B=(b_{kj})_{p\times n}\)分块成:
\begin{equation*}
A = \begin{pmatrix}
A_{11} & \cdots & A_{1t}\\
\vdots & \ddots & \vdots\\
A_{s1} & \cdots & A_{st}
\end{pmatrix},\quad B = \begin{pmatrix}
B_{11} & \cdots & B_{1r}\\
\vdots & \ddots & \vdots\\
B_{t1} & \cdots & B_{tr}
\end{pmatrix}
\end{equation*}
其中\(A_{i1},\ A_{i2},\ \ldots,\ A_{it} \)的列数分别等于\(B_{1j},\ B_{2j},\ \ldots,\ B_{tj} \)的行数,请读者自行验证:
\begin{equation*}
AB = \begin{pmatrix}
C_{11} & \cdots & C_{1r}\\
\vdots & \ddots & \vdots\\
C_{s1} & \cdots & C_{sr}
\end{pmatrix},
\end{equation*}
其中\(\displaystyle C_{ij}=\sum_{k=1}^t A_{ik}B_{kj},\ (i=1,\ \ldots,\ s;\ j= 1,\ \ldots,\ r)\)。
例 2.3.2.
-
设
\begin{equation*}
A=\begin{pmatrix}
A_1 & 0 & \cdots & 0\\
0 & A_2 & \ddots & \vdots\\
\vdots & \ddots &\ddots & 0\\
0 & \cdots & 0 & A_s
\end{pmatrix}, B=\begin{pmatrix}
B_1 & 0 & \cdots & 0\\
0 & B_2 & \ddots & \vdots\\
\vdots & \ddots &\ddots & 0\\
0 & \cdots & 0 & B_s
\end{pmatrix},
\end{equation*}
其中\(A_i\) 和\(B_i\)为同阶方阵,求\(AB\)。
-
设
\(A = \begin{pmatrix}
1 & 0 & 0 & 0\\
0 & 1 & 0 & 0\\
0 & 0 & -1 & 1\\
0 & 0 & 1 & -1
\end{pmatrix}\),求
\(A^{2025}\)。
解答.
-
左矩阵\(A\)的每个块的列数等于右矩阵\(B\)相应块的行数,所以按分块矩阵乘法得
\begin{equation*}
AB = \begin{pmatrix}
A_1B_1 & 0 & \cdots & 0\\
0 & A_2B_2 & \ddots & \vdots\\
\vdots & \ddots &\ddots & 0\\
0 & \cdots & 0 & A_sB_s
\end{pmatrix}.
\end{equation*}
-
将矩阵\(A\)进行如下分块
\begin{equation*}
A = \left(\begin{array}{cc|cc}
1 & 0 & 0 & 0\\
0 & 1 & 0 & 0\\
\hline
0 & 0 & -1 & 1\\
0 & 0 & 1 & -1
\end{array} \right)=\begin{pmatrix}
E_2& {\bf 0}\\
{\bf 0}& B
\end{pmatrix},
\end{equation*}
其中
\(B=\begin{pmatrix}
-1& 1\\
1& -1
\end{pmatrix}\),根据
项 1结论得
\begin{equation*}
A^{2025}=\begin{pmatrix}
E_2^{2025}&{\bf 0}\\
{\bf 0}& B^{2025}
\end{pmatrix}.
\end{equation*}
由 \(B=\begin{pmatrix}
-1\\1
\end{pmatrix}\begin{pmatrix}
1& -1
\end{pmatrix}\)可知
\begin{equation*}
\begin{array}{cl}
B^{2025}&=\begin{pmatrix}
-1\\1
\end{pmatrix}\left[\begin{pmatrix}
1& -1
\end{pmatrix}\begin{pmatrix}
-1\\1
\end{pmatrix}\right]^{2024}\begin{pmatrix}
1& -1
\end{pmatrix}\\
&=(-2)^{2024}\begin{pmatrix}
-1& 1\\
1& -1
\end{pmatrix},
\end{array}
\end{equation*}
因此 \(A^{2025} = \begin{pmatrix}
1 & 0 & 0 & 0\\
0 & 1 & 0 & 0\\
0 & 0 & -2^{2024} & 2^{2024}\\
0 & 0 & 2^{2024} & -2^{2024}
\end{pmatrix}\)。
使用分块矩阵乘法公式时,需要特别注意验证公式成立的条件。
例 2.3.3. 分块乘法的注意事项举例.
-
设\(A\)和\(B\)都为\(n\)阶方阵,则
\begin{equation*}
\begin{pmatrix}
0 & A\\
B & 0
\end{pmatrix}
\begin{pmatrix}
0 & A\\
B & 0
\end{pmatrix}= \begin{pmatrix}
AB & 0\\
0 & {\color{red}BA}
\end{pmatrix}{\color{red}\ne}
\begin{pmatrix}
0 & A^2\\
B^2 & 0
\end{pmatrix}.
\end{equation*}
-
\(\begin{pmatrix}
0 & E_3\\
1 & 0
\end{pmatrix}\begin{pmatrix}
0 & E_3\\
1 & 0
\end{pmatrix}\)\({\color{red}\ne }\begin{pmatrix}
1\cdot E_3 & 0\\
0 & E_3\cdot 1
\end{pmatrix} \)
例 2.3.4. 分块矩阵乘法重点例题.
分别做行分块和列分块, 设
\(A_{m\times n}= \begin{pmatrix}
A_1\\ \vdots\\ A_m
\end{pmatrix} = (\alpha_1,\ldots,\ \alpha_n) \),
\(X=\begin{pmatrix}
x_1\\ \vdots\\x_n
\end{pmatrix}\),
\(\beta=\begin{pmatrix}
b_1\\\vdots\\b_m
\end{pmatrix}\),
\(B_{n\times s}=(\beta_1,\ldots,\ \beta_s)=\begin{pmatrix}
B_1\\ \vdots \\ B_n
\end{pmatrix} \)。 以分块形式改写
\(AX=\beta\),
\(AB\)。
解答.
-
将\(A\)按行分块为\(A=\begin{pmatrix}
A_1\\ \vdots\\ A_m
\end{pmatrix}\),此时\(A\)的列整体作为1块,所以与\(x\)相乘时,\(x\)的行也需要整体作为1块,即将\(x\)作为1块, 则
\begin{equation*}
AX = \begin{pmatrix}
A_1\\ \vdots\\ A_m
\end{pmatrix}X=\begin{pmatrix}
A_1X\\
\vdots\\
A_mX
\end{pmatrix}.
\end{equation*}
令\(\beta=\begin{pmatrix}
b_1\\\vdots\\b_m
\end{pmatrix}\),于是\(AX=\beta\)也可写为
\begin{equation*}
A_iX=b_i,\ i=1,\ldots,m.
\end{equation*}
需要注意的是此时\(A_i\)是行向量(只有1行的矩阵), \(X\)是列向量(只有1列的矩阵),\(A_iX\)是一个数,也可以理解为\(1\times 1\)阶矩阵。
-
将\(A\)按列分块为\(A=(\alpha_1,\ldots,\ \alpha_n)\),此时\(A\)的每一列作为1块,为了使用分块矩阵的乘法公式,\(X\)也需要按每一行进行分块,即将\(X=\begin{pmatrix}
x_1\\ \vdots\\x_n
\end{pmatrix}\)每一个元素作为1块,此时
\begin{equation}
AX = (\alpha_1,\ldots,\ \alpha_n)\begin{pmatrix}
x_1\\\vdots\\x_n
\end{pmatrix}=
x_1\alpha_1+\cdots +x_n\alpha_n.\tag{2.3.1}
\end{equation}
-
将\(A\)按行分块为\(A=\begin{pmatrix}
A_1\\ \vdots\\ A_m
\end{pmatrix}\),此时选择\(B\)按列分块为\(B=(\beta_1,\ldots,\ \beta_s)\),则
\begin{equation*}
AB = \begin{pmatrix}
A_1\\ \vdots\\ A_m
\end{pmatrix}( \beta_1,\ldots,\ \beta_s)=\begin{pmatrix}
A_1\beta_1 & \cdots & A_1\beta_s\\
\vdots & \ddots & \vdots\\
A_m\beta_1 & \cdots & A_m\beta_s
\end{pmatrix}.
\end{equation*}
按矩阵元素对应相等,上式也可以表示为
\begin{equation*}
(AB)_{ij}=A_i\beta_j,\ i=1,\ldots,m;\ j=1,\ldots,s.
\end{equation*}
-
将\(A\)按列分块为\(A=(\alpha_1,\ldots,\ \alpha_n)\),此时选择\(B\)按行分块为\(B=\begin{pmatrix}
B_1\\ \vdots \\ B_n
\end{pmatrix}\),则
\begin{equation*}
AB = (\alpha_1,\ldots,\ \alpha_n)\begin{pmatrix}
B_1\\ \vdots \\ B_n
\end{pmatrix}=\alpha_1B_1+\cdots +\alpha_nB_n,
\end{equation*}
这里对每一个\(i=1,\dots,n\),都有
\begin{equation*}
\alpha_iB_i=\begin{pmatrix}
a_{1i} \\ \vdots \\ a_{mi}
\end{pmatrix}\begin{pmatrix}
b_{i1} & \cdots & b_{is}
\end{pmatrix}=\begin{pmatrix}
a_{1i}b_{i1} & \cdots & a_{1i}b_{is}\\
\vdots & \ddots & \vdots\\
a_{mi}b_{i1} & \cdots & a_{mi}b_{is}
\end{pmatrix}.
\end{equation*}
例 2.3.5. 标准向量的乘法.
将\(n\)维列向量
\begin{equation*}
\varepsilon_1=\begin{pmatrix}
1\\ 0\\ \vdots \\0
\end{pmatrix},\varepsilon_2=\begin{pmatrix}
0\\ 1\\ \vdots \\0
\end{pmatrix}, \ldots ,\varepsilon_n=\begin{pmatrix}
0\\ \vdots\\ 0 \\1
\end{pmatrix}
\end{equation*}
称为\(n\)维标准列向量,\(\varepsilon_1^T,\ldots ,\varepsilon_n^T\)称为\(n\)维标准行向量,证明:对任意\(m\times n\)矩阵\(A\),
-
若
\(\varepsilon_j\)是
\(n\)维标准列向量,则
\(A\varepsilon_j\)是
\(A\)的第
\(j\)列;
-
若
\(\varepsilon_i^T\)是
\(n\)维标准行向量,则
\(\varepsilon_i^TA\)是
\(A\)的第
\(i\)行。
解答.
-
将\(A\)按列分块为\(A_{m\times n}=(A_1,\ldots,\ A_n)\),则
\begin{equation*}
\begin{array}{cl}
A\varepsilon_j & = (A_1,\ldots ,A_n)\begin{pmatrix}
0 \\ \vdots \\ 0 \\ 1 \\ 0 \\ \vdots \\ 0
\end{pmatrix}\\
&=A_1\cdot 0+\cdots +A_{j-1}\cdot 0+A_j\cdot 1+A_{j+1}\cdot 0+\cdots+A_n\cdot 0\\
&=A_j
\end{array}
\end{equation*}
是\(A\)的第\(j\)列。
-
注意到
\(\varepsilon_i^TA=(A^T\varepsilon_i)^T\),而
\(A^T\varepsilon_i\)是
\(A^T\)的第
\(i\)列,其转置即为
\(A\)的第
\(i\)行,故
\(\varepsilon_i^TA\)是
\(A\)的第
\(i\)行。
例 2.3.6.
设\(A\)是3阶方阵,\(\alpha_1\)、\(\alpha_2\)和\(\alpha_3\)是3维列向量。已知
\begin{equation*}
A \alpha_1=-\alpha_1;\ A \alpha_2=\alpha_2;\ A \alpha_3 = \alpha_2+\alpha_3.
\end{equation*}
证明:\(AP=PB\),其中
\begin{equation*}
P=(\alpha_1,\alpha_2,\alpha_3); B=\begin{pmatrix}
-1 & 0 & 0\\
0 & 1 & 1 \\
0 & 0 & 1
\end{pmatrix}.
\end{equation*}
解答.
因为
\begin{equation*}
AP=(A\alpha_1,A\alpha_2,A\alpha_3)=(-\alpha_1, \alpha_2, \alpha_2+\alpha_3),
\end{equation*}
\begin{equation*}
PB=(\alpha_1,\alpha_2,\alpha_3)\begin{pmatrix}
-1 & 0 & 0\\
0 & 1 & 1 \\
0 & 0 & 1
\end{pmatrix}=(-\alpha_1, \alpha_2, \alpha_2+\alpha_3),
\end{equation*}
所以\(AP=PB\)。
设有分块矩阵\(A=(A_{ij})_{r\times s}\),则\(A^T\)是\(s\times r\)分块矩阵,
\begin{equation*}
A =\begin{pmatrix}
{\color{red}A_{11}} & {\color{red}A_{12}} & {\color{red}\cdots} & {\color{red}A_{1s}}\\
{\color{blue}A_{21}} & {\color{blue}A_{22}} & {\color{blue}\cdots} & {\color{blue}A_{2s}}\\
{\color{orange}\vdots} & {\color{orange}{\vdots}} & {\color{orange}\ddots} & {\color{orange}\vdots}\\
{\color{green}A_{r1}} & {\color{green}A_{r2}} & {\color{green}\cdots} & {\color{green}A_{rs}}
\end{pmatrix}\to
\begin{pmatrix}
{\color{red}A_{11}^T} & {\color{blue}A_{21}^T} & {\color{orange}\cdots} & {\color{green}A_{r1}^T}\\
{\color{red}A_{12}^T} & {\color{blue}A_{22}^T} & {\color{orange}\cdots} & {\color{green}A_{r2}^T}\\
{\color{red}\vdots} & {\color{blue}{\vdots}} & {\color{orange}\ddots} & {\color{green}\vdots}\\
{\color{red}A_{1s}^T} & {\color{blue}A_{2s}^T} & {\color{orange}\cdots} & {\color{green}A_{rs}^T}
\end{pmatrix}=A^T
\end{equation*}
即\((A_{ij})_{r\times s}^T =(A_{{\color{red}ji}}^T)_{{\color{red}s\times r}} \)。
设有分块复矩阵
\(A=(A_{ij})_{r\times s}\),则
\(\bar{A}=(\overline{A_{ij}})_{r\times s} \)。