LU分解
将矩阵A分解成的形式,称作矩阵LU分解,L代指下三角矩阵,U代指上三角矩阵。首先用到的是前面讲过的消元法,以下为例子:
通过消元操作,最后矩阵A变成了一个上三角矩阵U,那么只要上式左乘一个,就可以转化为
这里的就是L矩阵了。,所以。
也可以表达成如下形式,把U矩阵的主元提取出来。
对于三阶矩阵不需要换行进行消元的情况,就是说如果一个三阶矩阵,只通过初等行变换就能完成消元的情况下,假设其步骤为:
通过求逆可得矩阵A的LU分解为:
假设某三阶矩阵的消元矩阵如下
先把这几个矩阵相乘,对A进行初等行变换,然后求逆获得L矩阵
很明显,上述矩阵的逆矩阵
这里存在一个问题,按常规顺序计算的时候,E矩阵的第三行出现了10这个元素,说明第一行参与了10次运算,被反复调用。那么是否存在更快捷的方法呢?或需我们可以直接计算各消元矩阵的逆,然后直接相乘。
很明显,直接计算L矩阵比利用相乘再求逆要快的多,但是用计算机处理的时候看不出来而已。
消元法计算次数
在进行超大规模矩阵运算的时候,不得不考虑所需要的运算量,如果我们把“先乘后减”记为一次运算,那么对于一个nxn矩阵,对于一行进行消元要进行n次运算,由于有n行所以进行了nxn次运算,结果得到了第一列除第一主元外都消成0的矩阵。随后开始对除第一行第一列之外的剩余部分进行消元,这相当于一个(n-1)x(n-1)的矩阵,那么就要进行(n-1)x(n-1)次运算,以此类推。
最后需要的运算次数为1x1+2x2+……+nxn,利用积分公式可以估算其数值。