Matrix Computations-LU Factorization
LU 分解
Some concepts
We suppose $v \in \mathbb{R}^n$ with $v_k \neq0$ .If
and we difine
then
A matrix of the form $M_k = I_n - \tau e_k^T\in \mathbb{R}^{nxn}$ is a Gauss transformation if the first $k$ components of $\tau \in \mathbb{R}^n$ are zero. Such a matrix is unit lower triangular. The components of $\tau(k +1:n)$ are called multipliers. The vector $\tau$ is called the Gauss vector.
LU Factorization
If no zero pivots are encountered in (3.2.3), then Gauss transformations $M1,M_2,\cdots,M{n-1}$ are generated such that $M{n-1}\cdots M_2M_1 A = U$ is upper triangular. It is easy to check that if $M_k = I_n - \tau^{(k)}e_k^T$ , then its inverse is prescribed by $M{k}^{-1}=I_n+\tau^{(k)}e_k^T$ and so
where
It is clear that L is a unit lower triangular matrix because each $M_k^{-1}$ is unit lower triangular. The factorization (3.2.4) is called the LU factorization.
Theorem 3.2.1 (LU Factorization)
If $A \in \mathbb{R}^{n\times n}$ and $det(A(1:k,1:k))\neq 0$ for $k = 1:n-1$ , then there exists a unit lower triangular $L \in \mathbb{R}^{n\times n}$ and an upper triangular $U \in \mathbb{R}^{n\times n}$ such that $A = LU$. If this is the case and $A$ is nonsingular, then the factorization is unique and $det(A) = u{11}\cdots u{nn}$
存在的充要条件
矩阵 $A$ 的顺序主子阵 $A_i$ 均非奇异
矩阵 $A$ 的主元 $a_{ii}^{(i-1)}(i=1,\cdots,k)$ 均不为$0$
存在唯 一的单位下三角阵 $L\in \mathbb{R}^{n\times n}$和下三角阵$U\in \mathbb{R}^{n\times n}$使得 $A=LU$
算法
第二行中的 $A(k+1:n,k)$ 就是高斯变换中的乘子。
需要进行的浮点数运算(包含加减和乘除)一共是:
全主元高斯消去
目的
为了解决两个问题
- 主元值较小
- 主元值为 $0$
初等置换矩阵
将单位矩阵$I$的第$p,q$两列交换得到的矩阵记为初等置换矩阵$I_{pq}$,即
有如下的性质:
- $I{pq}=I{pq}^T=I_{qp}^{-1}$
- $\det{(I_{pq})}=-1$
定理
设 $A \in \mathbb{R}^{n\times n}$ ,则存在排列矩阵 $P,Q\in \mathbb{R}^{n\times n}$ ,以及单位下三角矩阵 $L \in \mathbb{L}^{n\times n}$ 和上三角矩阵 $U \in \mathbb{R}^{n\times n}$ ,使得
且$L$ 的所有元素均满足 $|a_{ij}|<1$ ,$U$的非零对角元的个数恰好等于矩阵 $A$ 的秩。
算法
复杂度分析,如果 $A$非奇异,那么全选主元必须要进行
次两两元素之间的比较和逻辑判断,为了解决上述问题,列主元消去法被提出来。
列主元消去法的改进就是每次选取的时候,不是选取剩余的方阵的最大值,而是选取在这一列中的最大值,然后进行行交换。
算法如下:




