计算方法上机作业(丁军)资料.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 方程求根 目的和意义 通过matlab程序的编写,熟悉使用二分法、迭代法、牛顿法、割线法等方法对给定的方程进行根的求解。巩固课堂和书本上所学的知识、加强实践能力、提高解决实际计算问题的水平、启发创新思想。 二、计算公式 (1)迭代法 牛顿法 三、结构程序设计代码 (1)迭代法 k=1; Tol=0.5*10^(-6); %误差限 p0=1.0; %初值设为1 N=1000; %最大迭代步数 while k=N p=((10-p0^3)/4)^(1/2); %迭代法迭代公式 if abs(p-p0)Tol %当误差满足要求时,停止迭代 break; end k=k+1;p0=p; End disp([p=,num2str(p,16)]);disp([k=,num2str(k)]); %以16位有效数字输出p,输出整数k (2)牛顿法 k=1; Tol=0.5*10^(-6); p0=1.0; N=1000; while k=N p=p0-(p0^3+4*p0^2-10)/(3*p0^2+8*p0); %牛顿法迭代法公式 if abs(p-p0)Tol break end k=k+1;p0=p; end disp([p=,num2str(p,16)]);disp([k=,num2str(k)]); 四、结果及讨论 1、结果 (1)迭代法 牛顿法 讨论 不动点迭代法是求解非线性方程的主要方法,而牛顿法应用广泛,是著名的非线性方程求根法,两种方法有如下不同: (1)牛顿法求解方程的单根时具有二阶收敛性,从结果可知,牛顿法比不动点迭代法的收敛速度快,能以较少的迭代达到理想的值。 (2)由于不动点迭代在区间内的唯一性,所以若要求方程的不同解,则需选择不同的迭代公式;而对于牛顿法,只需选取不同的初值,牛顿法就会收敛于不同的跟。 实验二 线性方程组的直接解法 目的和意义 线性方程的直接解法是指通过有限步运算后,将方程组加工为某个三角方程组对角方程组来求解,主要分为消元法和矩阵分解两大类。本次实验通过matlab程序的编写,熟悉使用LU分解、追赶法等线性方程组的直接求解方法。巩固课堂和书本上所学的知识、加强实践能力、提高解决实际计算问题的水平、启发创新思想。 二、计算公式 (1)LU分解 LU分解主要是指Doolittle分解,Doolittle分解公式为: Doolittle分解得到矩阵A的LU分解后,求解Ly=b与Ux=y的计算公式为: (2)追赶法 追赶法即带状矩阵的LU分解,其分解公式为: 求解Ly=d与Ux=y的计算公式为: 三、结构程序设计代码 (1)LU分解 A=[4,2,1,5;8,7,2,10;4,8,3,6;12,6,11,20]; b=[-2;-7;-7;-3]; L=eye(4);U(1,:)=A(1,:); %将L初始化为单位对角阵,并使u1j=aij n=4; x=zeros(n,1); %将x和y初始化为n×1的零矩阵 y=zeros(n,1); for k=2:n %矩阵分解 if U(k-1,k-1)==0 %*若对角线元素为0,则计算公 式 无意义,分解失败*% disp(分解失败);return;end L(k:n,k-1)=A(k:n,k-1)/U(k-1,k-1); U(k,k:n)=A(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n); if kn A(k+1:n,k)=A(k+1:n,k)-L(k+1:n,1:k-1)*U(1:k-1,k); end end B=[L b]; %求解y y(1,1)=B(1,n+1)/B(1,1); for i=2:1:n y(i,1)=(B(i,n+1)-B(i,1:i-1)*y(1:i-1,1))/B(i,i); end C=[U y];

文档评论(0)

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

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

1亿VIP精品文档

相关文档