MATLAB计算方法3解线性方程组计算解法.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章线性方程组数值解法解线性方程组 §3.1 直接法一、 Gauss 消去法设 有消 元: 用Matlab实现顺序Gauss消去法在Matlab程序编辑器中输入:function x=nagauss(a,b,flag) %解线形方程组ax=b,a为系数矩阵,b为右端列向量,flag若为0,则显示中间过程,否则不显示,默认为0,x为解向量if nargin3,flag=0;endn=length(b); a=[a,b];% 消元for k=1:(n-1) a((k+1):n,(k+1):(n+1))=a((k+1):n,(k+1):(n+1))-a((k+1):n,k)/a(k,k)*a(k,(k+1):(n+1)); a((k+1):n,k)=zeros(n-k,1); if flag==0,a,endend % 回代x=zeros(n,1);x(n)=a(n,n+1)/a(n,n);for k=n-1:-1:1 x(k,:)=(a(k,n+1)-a(k,(k+1):n)*x((k+1):n))/a(k,k);end程序运行结果:二 列主元素Gauss消去法---计算结果可靠到此原方程组化为 直到(n-1) 原方程组化为(上三角方程组) (3.2)以上为消元过程。(n) 回代求解公式 (3.3)系数矩阵为对称正定阵或严格对角占优阵的方程组按高斯消去法计算是数值稳定的,因而不必选主元。严格对角占优阵:至少有一个主对角线元素的绝对值严格大于此行或此列其他元素的绝对值之和。说明: (1)也可采用无回代的列主元消去法(叫Gauss- --Jordan消去法),但比有回代的列主元消 去法的乘除运算次数多。 (2)有回代的列主元消去法所进行的乘除运算 次数为 ,量很小。Gauss 列主元消去法: 优点 ------ 计算结果更可靠; 缺点 ------ 挑主元花机时更多,次序有变动,程序复杂。用Matlab实现选列主元Gauss消去法解线性方程组在Matlab程序编辑器中输入:function x=nagauss2(a,b,flag) %a为系数矩阵;b为右端列向量;flag若为0,则显示中间过程,否则不显示if nargin3,flag=0;endn=length(b); a=[a,b];% 选主元for k=1:(n-1)[ap,p]=max(abs(a(k:n,k)));p=p+k-1;if pk,t=a(k,:); a(k,:)=a(p,:); a(p,:)=t; end% 消元 a((k+1):n,(k+1):(n+1))=a((k+1):n,(k+1):(n+1))-a((k+1):n,k)/a(k,k)*a(k,(k+1):(n+1)); a((k+1):n,k)=zeros(n-k,1); if flag==0,a,endend %回代x=zeros(n,1);x(n)=a(n,n+1)/a(n,n);for k=n-1:-1:1 x(k,:)=(a(k,n+1)-a(k,(k+1):n)*x((k+1):n))/a(k,k);end程序运行结果: 三.矩阵三角分解法 Gauss消元,初等行变换,化原方程组为上三角型。记,则 (三角因子分解) 叫的三角(因子)分解,其中 是定义3.1 下三角,是上三角。为单位下三角阵(对角元全为1),定义3.2 若定义3.2 若为上三角阵,则称 为Doolittle分解;若 是下三角, 是单位上三角,则称 为Crout分解。 为什么要讨论三角分解?若在消元法进行前能实 现三角分解, 则从而容易回代求解。1.直接三角分解法(Doolittle分解为例)  由矩阵乘法……………………… …….(k)例3.1用Matlab实现LU分解在Matlab程序编辑器中输入:function [L,U]=nalu(a) % a为可逆方阵;L返回单位下三角矩阵;U返回上三角矩阵n=length(a);U=zeros(n,n);L=eye(n,n);U(1,:)=a(1,:);L(2:n,1)=a(2:n,1)/U(1,1);for k=2:n U(k,k:n)=a(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n); L(k+1:n,k)=(a(k+1:n,k)-L(k+1:n,1:k-1)*U(1:k-1,k))/U(k,k);end程序运行结果:2.平方根法定理3.1 设A对称正定,则有非奇异下三角阵L,使分解方法:设3.列主元的三角分解法例4 对下面的增广矩阵用列主元三角分解法分解。四、解三对角方程组——追赶法利用Gauss消元法得到同解的三角方程为 , (3.1)故有解(3.2)解(3.3) (3.1) —(3.3) 叫追赶法,

文档评论(0)

70后老哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档