2010第3篇解线性方程组的直接法.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值计算方法B 教师:唐剑梅 Email:tjm112@163.com 第3章 解线性方程组的直接法 3.1 高斯消元法 3.1.1 三角形方程组 3.1.2 顺序高斯消元法 3.1.3 选主元高斯消元法 3.2 系数矩阵的三角分解法 3.2.1 高斯消元法的矩阵形式 3.2.2 LU分解法 3.2.3 解三对角线方程组的追赶法 3.2.4 平方根法与LDLT分解法 以三阶为例: 令Ux=y,由Ly=b,求出yi,再由Ux=y即可求出xi。问题的关键在于首先求出L、U中的各个元素lij、uij。其步骤如下: Doolittle(杜利特尔)分解法? 方法说明:将待求线性方程组Ax=b的系数矩阵A分解为两个矩阵的乘积A=LU,其中L为单位下三角矩阵,U为上三角矩阵。 1、计算U中的第一行元素(考虑A中的第一行元素) 由计算矩阵乘积的方法,A中的a11可由如下的计算式而得: 同理 2、计算L中的第一列元素(考虑A中的第一列元素) 由计算矩阵乘积的方法,A中的a21可由如下的计算式而得: 同理可得: 3、计算U中第二行元素(考虑A中第二行元素) 由计算矩阵乘积的方法,A中a22、a23可由如下的计算式而得: 一般地: 4、计算L中的第2列元素(考虑A中的第2列元素) 由计算矩阵乘积的方法,A中a32、a42可由如下的计算式而得: 同理 计算U中第k行元素(考虑A中的第k行元素): 计算L中第k列元素(考虑A中的第k列元素): 对n阶线性方程组分解成LU后,对U要求n行元素,对L要求n-1列元素。 一般地 例:用Doolittle分解法解线性方程组: 解: (1)求U中第一行元素: u11=a11=2,u12=a12=1,u13=a13=1 (2) 求L中第一列元素: l21=a21/u11=1/2=0.5, l31=a31/u11=1/2=0.5 (3) 求U中第二行元素: u22=a22-l21u12=3-0.5?1=2.5; u23=a23-l21u13=2-0.5?1=1.5 (4)求L中第二列元素: l32=(a32-l31u12)/u22=0.6 (5)求U中第三行元素: u33=a33-(l31u13+l32u23)=0.6 所以有: 由Ly=b: 又由Ux=y: Doolittle分解法算法: step1 l[n][n]赋值:对角线元素赋值为1,上三角元素赋值0; step2 u[n][n]赋值:下三角元素赋值为0; step3 对k=1 到 n 执行step4 、 step5 : step4 求U中第k行元素: for j:=k to n do step4-1、step4-2 step4-1 u[k][j]?a[k][j]; step4-2 for r:=1 to k-1 do u[k][j] ? u[k][j] - l[k][r]*u[r][j]; step5 求L中第k列元素: for i:=k+1 to n do step5-1、step5-2 step5-1 l[i][k] ? a[i][k]; step5-2 for r:=1 to k-1 do step5-2-1、5-2-2 5-2-1 l[i][k]?l[i][k] - l[i][r]*u[r][k]; 5-2-2 l[i][k]?l[i][k] / u[k][k]; step6 由Ly=b求出y[i]: for i:=1 to n do step6-1、step6-2 step6-1 y[i] ? b[i]; step6-2 for j:=1 to i-1 do y[i] ? y[i] - l[i][j]*y[j]; step7 由Ux=y求出x[i]: for i:=n downto 1 do step7-1、step7-2 step7-1 x[i] ? y[i]; step7-2 for j:=i+1 to n do step7-2-1、step7-2-2 step7-2-1 y[i] ? y[i] - u[i][j]*x[j]; step7-2-2 x[i] ? y[i]/u[i][i]; step8 输出数组元素x[i]。 Crout(克洛特)分解法? 方法说明:当线性方程组的系数矩阵A的各阶主子式不为0时,可分解为A=LU,与Doolittle分解不同之处:L为下三角矩阵,U为单位上三角矩阵。解题的关键也是求L,U中的各个元

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档