第五讲 方程的近似根与迭代法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五讲 方程的近似根与迭代法.doc

第五讲 方程的近似根与迭代法 实验目的: 1.理解求方程近似解的二分法、切线法. 2.了解迭代法的思想. 3.用matlab编二分法、切线法的程序. 实验内容: 1.学习matlab命令. matlab的while-end循环语句和C语言的while循环语句类似,while循环的一般形式是: while表达式 循环体 end 只要表达式的结果非零,循环体语句就重复执行. 例1.利用while循环解答:使n!是100位数的第一个n是几? 解:n=1; nj=1; while nj1e100 nj=nj*n; n=n+1; end n=n-1 2.二分法求方程的近似根 求方程的近似解,可分两步来做: (1)确定根的大致范围,就是确定一个区间[a,b],使所求的根是位于这个区间内的唯一实根,这一步工作称为根的隔离,区间[a,b]称为所求实根的隔离区间.为了确定根的隔离区间,可以先画出y=f(x)的图形,然后从图上定出它与x轴交点的大概位置. (2)以根的隔离区间的端点作为根的初始近似值,逐步改善根的近似值的精确度,直至求得满足精确度要求的根的近似解.完成这一步工作有多种方法,这里介绍二分法和切线法. 设f(x)在区间[a,b]上连续,f(a)f(b)0,且方程f(x)=0在(a,b)内仅有一个实根,那么,[a,b]就是这个根的隔离区间. 取[a,b]的中点,计算,如果,则;如果与同号,那么,取,,由即知,,且;以为新的隔离区间,重复上述做法,当时,可求得,且如此重复n次,可得,且,由此可知,如果以或作为的近似值,那么,其误差小于. 例2.用二分法求方程的实根的近似值,使误差不超过. 解:(1)求根的初始隔离区间. 在matlab工作区输入命令: ezplot(x^3+1.1*x^2+0.9*x-1.4);grid on; 画出曲线图形. 通过观察,根应在-2和2之间,进一步画出该部分的图形: ezplot(x^3+1.1*x^2+0.9*x-1.4,[-2,2]);grid on; 更清楚看到根在0和1之间. (2)编写程序如下: f=input(输入函数f(x)=); qujian=input(输入区间=); err=input(请输入误差=); a=qujian(1); b=qujian(2); yc=1; while((b-a)err)(yc~=0); c=(a+b)/2; x=a; ya=eval(f); x=b; yb=eval(f); x=c; yc=eval(f); if ya*yc0 b=c; else a=c; end x0=c end 存为文件erfanfa.m 调用erfanfa的如下结果: erfenfa 输入函数f(x)=x^3+1.1*x^2+0.9*x-1.4 输入区间=[0,1] 请输入误差=0.001 x0= 0.5000 x0= 0.7500 x0= 0.6250 x0= 0.6875 x0= 0.6563 x0= 0.6719 x0= 0.6641 x0= 0.6680 x0= 0.6699 x0= 0.6709 三.迭代法 迭代是一种逐步逼近的方法,已知方程f(x)=0的一个近似根后,通常使用某个固定公式反复校正根的近似值,使之逐步精确化,一直到满足给定的精度要求为止. 具体做法是,把给定方程f(x)=0改写成等价形式 在根附近任取一点作为的近似值,把代入上式右端: 一般(时,).把作为根的新的近似值代入公式得.重复上述步骤,则有如下迭代公式: () 其中称为迭代函数,并有如下迭代序列 如果迭代序列的极限存在,则称迭代过程收敛,显然 即 所以 如果迭代序列的极限不存在,则称迭代过程发散. 例3.求方程在x=1.5附近的根. 解:将方程改写成下列形式: 由此得迭代公式 () 迭代初值.matlab程序如下: x0=1.5; fori=1:20 x0=(x0+1)^(1/3) end 运行如下: x0= 1.35720880829745 x0= 1.33086095880143 x0= 1.32588377423235 x0= 1.32493936340188 x0= 1.32476001129270 x0= 1.32472594522689 x0= 1.32471947453436 x0= 1.32471824544894 x0= 1.32471801198820 x0= 1.32471796764309 x0= 1.32471795921988 x0= 1.32471795761992 x0= 1.32471795731601 x0= 1.32471795725828 x0= 1.32471795724732 x0= 1.32471795724523 x0= 1.32471795724484

文档评论(0)

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

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

1亿VIP精品文档

相关文档