LU算法

LU算法详解
本文详细介绍了LU算法的基本原理及其在求解线性方程组中的应用。通过Crout算法实现矩阵的LU分解,并讨论了该方法的优势及其实现过程。

LU算法

标签: 算法n22010
799人阅读 评论(0) 收藏 举报
分类:
算法名称:LU分解法
算法描述:
假定能够把矩阵A写成两个矩阵相乘的形式
                                                     (1)
其中L下三角矩阵U上三角矩阵
例如,4×4矩阵A的情况,(1)式如下:
 (2)
可以用如(1)式分解来求解线性方程组
                                  (3)
首先求解向量y使得
                                                                               (4)
然后再来求解
                                                      (5)
此拆分方法的优点在于求解一个三角形方程组相当容易,这样,(4)式可用向前替代过程求解,如下:
                                                (6)         


严重勘误:方括号里面的betaj,应该为yj;其中j为下标。。。。。。参考文献:Numerical Recipes 3rd Edition




(5)式可用回代过程求解,这与(2)式~(3)式一样,
                        (7)
(6)式和(7)式共需执行N2次内层循环(对每个右端项b),每个内层循环包括一次乘法和一次加法。如果有N个右端项,它们是单位列向量(在求矩阵逆时就是这种情况),考虑这些零元素可把(6)式的总执行次数从N3/2减少到N3/6,而(7)式的执行次数不变,仍为N3/2。
       注意:一点对A进行了LU分解,就可以一次求解所有要解的右端项。
算法实现:
首先,写出(1)式或(2)式的第i,j分量。它总是一个和式,开始部分形式如下:
和式中的项数依赖于i和j中较小的数。事实上有三种形式:
                         (8,9,10)
显然,(8)~(10)式共有N2个方程,而要求N2+N个未知的α和β(因对角线的未知元素有两套),既然未知数的个数比方程个数多,就人为指定N各位指数,然后再来求解其他的未知数。事实上,总是令
                                                                          (11)
有一个算法称为Crout算法,它仅按某种次序排列方程,就能容易的求出(8)式~(11)式的N2+N各方程中的所有α和β。步骤如下:

    ,即(11)式
对每个j=0,1,2,...,N-1进行以下两步:
第一步,对每个i=0,1,...,j用(8)式、(9)式和(11)式来解βij,即
                                                                          (12)
第二步,对每个i=j+1,j+2,...,N-1用(10)式来求解αij,即
                              (13)
在求解下一个j之前要保证进行了以上两步。
 
如果按上述过程进行几次迭代后,就会发现(12)式和(13)式右端的α和β在需要时已经得到,还会发现,每一个aij仅被使用一次就不再使用了。这意味着分解是“同址”进行的。简言之Crout算法得到的矩阵是混合矩阵,对本例排列如下:
注:不是把矩阵A分解成LU形式,而是将其按行置换的方式分解。
 
Crout算法的精妙之处:
l         (12)式,在i=j(最后一次应用)时,与(13)式(除后者还要做一次除法外)是完全一样的,这两种情况要求和的上线都是k=j-1(=i-1)。这意味着,不必费心去考虑对角线元素βjj是否会正落在对角线上,也不必考虑该列中,它下面的某个元素(未做除法的)αij,i=j+1,j+2,...,N-1是否会提升成为对角线元素β。
l         它首先找到每行的最大元素,而后(在找最大主元时)乘以一个比例系数,这就实现了“隐式主元法”。
http://gxqdtcgxqdtc.blog.163.com/blog/static/270955642010223102559570/


http://a.hiphotos.baidu.com/baike/c0%3Dbaike150%2C5%2C5%2C150%2C50/sign=27a7f108a9ec8a1300175fb2966afaea/500fd9f9d72a605955a634fd2834349b023bbaa7.jpg




https://en.wikipedia.org/wiki/Crout_matrix_decomposition

Crout matrix decomposition

From Wikipedia, the free encyclopedia



http://book.51cto.com/art/201007/212874.htm

工程数值方法(第6版)    于艳华 等译
本书是广大读者殷切期待的经典著作,它采用极富创意的全新方式,引导读者轻松掌握数值方法的相关知识。它浓墨重彩地描述包括MATLAB、Excel和MathCAD在内的主流软件包,以帮助读者驾轻就熟地运用这些计算工具;它列举所有工程领域的精选示例和案例研究,使读者能将所学的新知识应用于各自的工作领域。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值