LU分解
- 线性方程组求解稳定性判断:条件数
通常情况下,所有求解形如的方程组算法的数值稳定性与矩阵 d本身特性是密切相关的,稳定性的衡量可以用矩阵的条件数(通常实际计算中会计算奇异值的最大值和最小值之比表示条件数)
矩阵条件数越大代表矩阵越接近病态,而条件数越接近1则矩阵越接近良态。病态矩阵对数值变化十分敏感,当病态矩阵的系数发生微小变化时,其求解结果会发生巨大变化。
LU分解主要用于线性方程组的求解,它是把高斯消元法写成了矩阵的形式表示计算,首先朴素的高斯消元法是用增广矩阵第
消去对角线下方第一列的元素
以此类推消去其他列对角线下方的元素,得到上三角矩阵
这个时候可以很容易计算出最后一个元素
基于上面的过程可以用矩阵表示,将矩阵A分解为下三角矩阵L和上三角矩阵U,首先将上面的变换过程(即行操作)写为矩阵
上述LU分解存在
LU分解的Python实现如下
1 | def gaussian_elimination(A,b): |

