《数值分析报告5LU分解法.doc》由会员分享,可在线阅读,更多相关《数值分析报告5LU分解法.doc(8页珍藏版)》请在三一办公上搜索。
1、word3 LU分解法Gauss消去法的变形知识预备:1矩阵的初等行变换、初等矩阵与其逆、乘积 2矩阵的乘法 3上三角矩阵的乘积、单位下三角矩阵的乘积 4单位下三角矩阵的逆、可逆的上三角矩阵的逆一、Gauss消去法的矩阵解释Gauss消去法实质上是将矩阵A分解为两个三角矩阵相乘。我们知道,矩阵的初等行变换实质就是左乘初等矩阵。第一轮消元:相当于对A1左乘矩阵L1,即其中第二轮消元:对应于一般地 1其中 整个消元过程为2从而其中L是单位下三角矩阵,即3【注】消元过程等价于A分解成LU的过程回代过程是解上三角方程组的过程。二、矩阵的三角分解1、假如将A分解成LU,即A=LU,其中L为单位下三角矩阵
2、,U为非奇异上三角矩阵,如此称之为对A的Doolittle分解。当A的顺序主子式都不为零时,消元运算可进展,从而A存在唯一的Doolittle分解。证明:假如有两种分解,A=L1U1,A=L2U2,如此必有L1=L2,U1=U2。因为L1U1=L2U2,而且L1,L2都是单位下三角矩阵,U1,U2都是可逆上三角矩阵,所以有因此 即L1=L2,U1=U2、2、假如L是非奇异下三角矩阵,U是单位上三角矩阵时,A存在唯一的三角分解,A=LU,称其为A的Crout分解对应于用列变换实施消元三、直接分解LU分解算法LU分解算法公式按矩阵乘法第一步:利用A中第一行、第一列元素确定U的第一行、L的第一列元素
3、。由 得 u1j=a1j ) li1=ai1/u11)第r步:利用A中第r行、第r列剩下的元素确定U的第r行、L的第r列元素r=2,3,n.由得U的第r行元素为由得(4)直接分解的紧凑格式:u11 u12 u13 u1n 1l21 u22 u23 u2n 2l31 l32 ln1 ln2 unn n方程组的三角分解算法LU分解对于方程组Ax=b,设A=LU (Doolittle分解)。由于 1、求解Ly=b:52、求解Ux=y:6LU分解算法步1,输入A,b;步2,对j=1,2,n 求 对i=2,3,n 求步3,对r=2,3,n 做-(3.2):3.13.2步4,步5,步6,输出完毕。例子与程
4、序:【例】用LU分解求解方程组解:对系数矩阵A进展LU分解因此先解。再解程序:LU_factorization%Not Select Column LU_factorizationclear alln=3;a=2 2 3;4 7 7;-2 4 5;b=3;1;-7;%n=3;a=1 4 7;2 5 8;3 6 11;b=1;1;1;%LU_factorazationfor i=2:n a(i,1)=a(i,1)/a(1,1);endafor r=2:n for j=r:n s=0.; for k=1:r-1 s=s+a(r,k)*a(k,j); end a(r,j)=a(r,j)-s; end
5、 for i=r+1:n s=0.; for k=1:r-1 s=s+a(i,k)*a(k,r); end a(i,r)=(a(i,r)-s)/a(r,r); end a end%Extract Lower/Upper Triangular Partl=tril(a);for i=1:n l(i,i)=1;endu=triu(a);lu%Linear Lower Triangular Equation Solution y=lb%Linear Upper Triangular Equation Solutionx=uy四、列主元LU分解 当用LU分解法解方程组时,从第r(r=1,2,n)步分解
6、计算公式可知 当很小时,可能引起舍入误差的累积、扩大。因此,可采用与列主元消去法类似方法,将直接三角分解法修改为列主元三角分解法与列主元消去法在理论上是等价的,它通过交换A的行实现三角分解PA=LU,其中P为置换阵。设第r-1步分解计算己完成,如此有第r步计算时为了防止用绝对值很小的数作除数,引进中间量:如此有:(1) 选主元:确定(2) 交换两行:交换A的第r行与第行元素相当于先交换原始矩阵A第r行与第行元素后,再进展分解计算得到的结果,且(3) 进展分解计算附:列主元LU分解a=2 2 3;4 7 7;-2 4 5;b=3;1;-7;l,u=lu(a)y=lbx=uy%x=inv(u)*inv(v)*b l,u,p=lu(a)y=l(p*b)x=uy 8 / 8