初等变换矩阵与LU分解

发布于:2025-07-01 ⋅ 阅读:(16) ⋅ 点赞:(0)


一、初等变换矩阵

已知列向量左乘矩阵就是矩阵列向量的线性组合,行向量右乘矩阵,就是行向量的线性组合。

矩阵乘法可以看作对一个矩阵的列/行空间施加同样的线性变换。

三种初等变换:

  • 行/列交换
  • 行/列倍乘
  • 行/列倍加

如何用矩阵表示?

下面以三阶矩阵为例。

1.1 行/列交换

比如我们要交换 1、2列/行,那么就有如下表示,我们记为 E 12 E_{12} E12
O = [ 0 1 0 1 0 0 0 0 1 ] O = \begin{bmatrix} 0 & 1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{bmatrix} O= 010100001

1.2 行/列倍乘

比如我们要将 第二列/行 倍乘k倍,那么就有如下表示,我们记为 E 2 ( k ) E_{2}(k) E2(k)
O = [ 1 0 0 0 k 0 0 0 1 ] O = \begin{bmatrix} 1 & 0 & 0 \\ 0 & k & 0 \\ 0 & 0 & 1 \end{bmatrix} O= 1000k0001

1.3 行/列倍加

比如我们要将第1列的k倍加到第3列(第3行的k倍加到第1行),那么就有如下表示,我们记为 E 31 ( k ) E_{31}(k) E31(k)
O = [ 1 0 k 0 1 0 0 0 1 ] O = \begin{bmatrix} 1 & 0 & k \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix} O= 100010k01

1.4 初等变换矩阵的逆矩阵

对于行/列交换矩阵,其逆矩阵就是其自身,因为交换两次相当于没交换。

对于行/列倍乘矩阵,显然有 E i ( k ) − 1 = E i ( 1 k ) E_{i}(k)^{-1} = E_{i}(\frac{1}{k}) Ei(k)1=Ei(k1)

对于行/列倍加矩阵,显然有 E i j ( k ) − 1 = E i j ( − k ) E_{ij}(k)^{-1} = E_{ij}(-k) Eij(k)1=Eij(k),即加了k倍又减了k倍。

1.5 倍加矩阵的性质

  • 倍加矩阵是一个上/下三角矩阵
  • 我们可以只用倍加矩阵把一个矩阵变成对角阵、上三角矩阵、下三角矩阵——这将是LU分解的基础

二、矩阵的LU分解

2.1 LU分解

若一个矩阵可以分解为如下形式:
A = L U ,其中 L 为下三角矩阵, U 为上三角矩阵 A = LU,其中L为下三角矩阵,U为上三角矩阵 A=LU,其中L为下三角矩阵,U为上三角矩阵

我们称 矩阵A **LU分解(LU decomposition)**存在。

适用条件:所有主子式(leading principal minors)非零,即每次消元主元不为0。

否则需要进行行交换,这时 LU 分解改为 PA = LU,其中 P 是置换矩阵。

下面仅讨论LU分解存在的情况。

2.2 LU分解的构造

设 A ∈ R n × n ,我们对 A 进行高斯消元 每一步消元操作都可以表示为一个初等矩阵 E k ,使得 : E n − 1 . . . E 2 E 1 A = U 其中 U 是最终的上三角矩阵 对上式两边同时左乘 E n − 1 − 1 . . . E 2 − 1 E 1 − 1 , 得到 : A = E n − 1 − 1 . . . E 2 − 1 E 1 − 1 U 注意:每个 E k − 1 都是单位下三角矩阵,对应一次加法操作(加某行倍数到下方某行)。因此,它们的乘积 L 仍然是单位下三角矩阵。 所以我们定义 : L = E n − 1 − 1 . . . E 2 − 1 E 1 − 1 就有 : A = L U \begin{align} & 设 A \in R^{n \times n},我们对 A进行高斯消元 \\ & 每一步消元操作都可以表示为一个初等矩阵 E_k,使得: \\ & E_{n-1}...E_2E_1A = U \\ & 其中 U 是最终的上三角矩阵 \\ & 对上式两边同时左乘 E_{n-1}^{-1}...E_2^{-1}E_1^{-1},得到:\\ & A = E_{n-1}^{-1}...E_2^{-1}E_1^{-1}U \\ & 注意:每个 E_k^{-1}都是单位下三角矩阵,对应一次加法操作(加某行倍数到下方某行)。因此,它们的乘积L仍然是单位下三角矩阵。\\ & 所以我们定义: \\ & L = E_{n-1}^{-1}...E_2^{-1}E_1^{-1} \\ & 就有: \\ & A = LU \end{align} ARn×n,我们对A进行高斯消元每一步消元操作都可以表示为一个初等矩阵Ek,使得:En1...E2E1A=U其中U是最终的上三角矩阵对上式两边同时左乘En11...E21E11,得到:A=En11...E21E11U注意:每个Ek1都是单位下三角矩阵,对应一次加法操作(加某行倍数到下方某行)。因此,它们的乘积L仍然是单位下三角矩阵。所以我们定义:L=En11...E21E11就有:A=LU

2.3 举例

A = [ 2 1 8 7 ] E 21 A = U [ 1 0 − 4 1 ] [ 2 1 8 7 ] = [ 2 1 0 3 ] A = E 21 − 1 U A = L U [ 2 1 8 7 ] = [ 1 0 4 1 ] [ 2 1 0 3 ] \begin{align} & A = \begin{bmatrix} 2& 1\\ 8& 7 \end{bmatrix} \\ & E_{21}A = U \\ & \begin{bmatrix} 1& 0\\ -4& 1 \end{bmatrix} \begin{bmatrix} 2& 1\\ 8& 7 \end{bmatrix} = \begin{bmatrix} 2& 1\\ 0& 3 \end{bmatrix} \\ & A = E_{21}^{-1}U \\ & A = LU \\ & \begin{bmatrix} 2& 1\\ 8& 7 \end{bmatrix} = \begin{bmatrix} 1& 0\\ 4& 1 \end{bmatrix} \begin{bmatrix} 2& 1\\ 0& 3 \end{bmatrix} \end{align} A=[2817]E21A=U[1401][2817]=[2013]A=E211UA=LU[2817]=[1401][2013]


网站公告

今日签到

点亮在社区的每一天
去签到