三、LU Cholesky和
因式分解
- LU因式分解
- Cholesky因式分解
因式分解
LU因式分解
每一个非奇异矩阵都可以因式分解成A=PLU,其中
是排列矩阵,
是单位下三角矩阵,
是非奇异上三角矩阵。这种形式被成为A的LU因式分解。也可以写成
。
计算LU因式分解的标准算法被称为Gauss部分主元消元法,或Gauss行变换消元法。不考虑A的结构,计算A的LU因式分解的成本是。
通过LU因式分解求解线性方程组
给定线性方程组Ax=b,其中A非奇异。
- LU因式分解:将A因式分解为A=PLU。
- 排列:求解
(0次浮点运算)
- 前向代入:求解
(
次浮点运算)
- 后向代入:求解
(
次浮点运算)
一共需要次浮点运算。
如果考虑求解多个不同右边项的线性方程组,即,一共需要一次因式分解,m次解方程,共
次浮点运算。
稀疏矩阵的LU因式分解
当A是稀疏矩阵时,起LU因式分解通常包含行列排列,即A被因式分解成,其中
是排列矩阵,L是下三角矩阵,U是上三角矩阵。因式L和U的稀疏性取决于排列矩阵
和
,因此选择这些矩阵时在一定程度上要考虑因式的稀疏性。
计算稀疏的LU因式分解的成本是A的维数、非零元素的数量、稀疏模式以及所使用的具体算法这些因素的复杂函数。但通常会小于稠密的LU因式分解的计算成本。
Cholesky因式分解
如果是对称正定矩阵,那么它可以因式分解为
,其中L是下三角非奇异矩阵,对角元素均为正数,这种分解被称为A的Cholesky因式分解,可以理解为对称LU分解。矩阵L,通常由A唯一确定,被称为Ade Cholesky因式。不考虑A的结构,计算A的Cholesky因式分解的成本是
次浮点运算。
利用Cholesky因式分解求解正定方程组
考虑Ax=b,A是对称正定矩阵。
- Cholesky因式分解:将A因式分解为
(
次浮点运算)
- 前向代入:求解
(
次浮点运算)
- 后向代入:求解
(
次浮点运算)
一共需要次浮点运算。
稀疏矩阵的Cholesky因式分解
当A是对称正定稀疏矩阵时,通常可以因式分解为,其中P是排列矩阵,L是对角线元素为正数的下三角矩阵。
稀疏矩阵的Cholesky因式分解分为两部,(1)符号因式分解:首先由A的稀疏模式确定排列矩阵P,一旦选定P,即可确定L的稀疏模式。(2)数值因式分解:即计算L的非零元素。
稀疏矩阵的Cholesky因式分解的成本少于。其成本与A的维度、非零元素的个数,稀疏模式均相关。
因式分解
每个非奇异对称矩阵A都能分解为,其中P是排列矩阵,L是对角元素均为正数的下三角矩阵,D是块对角矩阵,对角块为
和
的非奇异矩阵。不考虑A的结构,计算
因式分解的浮点运算次数为
。
利用
因式分解求解线性方程组
给定方程组Ax=b,其中A是非奇异对称矩阵。
因式分解:将A因式分解为
(
次浮点运算)
- 排列:求解
(0次浮点运算)
- 前向代入:求解
(
次浮点运算)
- 求解块对角方程:求解
(阶次为n次浮点运算)
- 后向代入:求解
(
次浮点运算)
- 排列:求解
(0次浮点运算)
稀疏矩阵的
因式分解
在确定稀疏矩阵的因式分解时,排列矩阵P不只取决于A的稀疏模式,还依赖于A的非零元素的具体数值。但总的成本要小于
。
来源:https://blog.youkuaiyun.com/wangchy29/article/details/87911171