现代数值计算方法第七章ppt课件.ppt

现代数值计算方法第七章ppt课件.ppt

ID:59031101

大小:1.31 MB

页数:65页

时间:2020-09-26

现代数值计算方法第七章ppt课件.ppt_第1页
现代数值计算方法第七章ppt课件.ppt_第2页
现代数值计算方法第七章ppt课件.ppt_第3页
现代数值计算方法第七章ppt课件.ppt_第4页
现代数值计算方法第七章ppt课件.ppt_第5页
资源描述:

《现代数值计算方法第七章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章非线性方程迭代法求f(x)=0的根其中是连续的非线性函数。而方程按是多项式或超越函数又分别称为代数方程和超越方程。例如,代数方程超越方程已经证明,对于5次及5次以上的一元多项式方程不存在精确的求根公式,至于超越方程就更难求其精确解了。鉴于此,如何求得满足一定精度的方程的近似根,已成为广大科研工作者迫切需要解决的问题。本章要介绍:二分法,迭代法及其加速,牛顿法§7.1根的插索与二分法原理:若fC[a,b],且f(a)·f(b)<0,则f在(a,b)上必有一根。7.1.1隔根区间在用近似方法求方程的根时,需要知道方

2、程的根所在的区间。如果在区间[a,b]内只有方程的一个根,则称区间[a,b]为隔根区间。通常可以用逐步扫描法来寻找隔根区间。算法的基本思想是:先确定方程的所有实根所在的区间[a,b],再按选定的步长(n为正整数),逐点计算处的函数值当与的值异号时,则即为方程的一个隔根区间。算法7.1(逐步搜索法)步1输入步2置步3while(循环开始)ifthenelsecontinue;(返回循环的入口)endend(循环结束)步4输出有根区间分别用向量x1,x2存放隔根区间的左、右端点检测下一个区间!检测下一个区间!functio

3、nmasearch(fun,a,b,h)%用途:搜索非线性方程f(x)=0的有根区间%格式:masearch(fun,a,b,h)fun为函数表达式,%a,b为区间左右端点,h为搜索步长n=(b-a)/h;a1=zeros(1,n);b1=zeros(1,n);aa=a;bb=aa+h;k=1;whilebb

4、i=1:kifa1(i)-b1(i)~=0[a1(i),b1(i)]endend例7.1试用逐步搜索法确定方程>>masearch(inline(‘x^3_x^2-3*x-3’),-3,3,0.6)得计算结果:ans=-1.8000-1.2000ans=-1.2000-0.6000ans=1.20001.8000即有三个根,分别在区间[-1.8,-1.2],[-1.2,-0.6],[1.2,1.8]的有根区间。容易看出,当时,保持符号不变,故其根必定全部落在区间[-3,3]内,即可初步确定取步长h=0.6,利用算法7.

5、1的通用程序masearch.m,在MATLAB窗口执行:7.1.2二分法及其程序实现二分法的基本思想是通过计算隔根区间的中点,逐步将隔根区间缩小,从而可得到方程的近似根数列。具体地说,设为连续函数,又设方程的隔根区间为即记取其中点若则去掉右半区间,即令否则,去掉左半区间,即令一般地,记当前有根区间为取若则令否则,令再取一直做下去,直到满足精度为止。abx1x2ab什么时候停止?或不能保证x的精度x*2xx*算法7.2(二分法)步1由算法7.1得到隔根区间设定精度要求步2置步3若输出停算;否则,转步4;步4若则置否则

6、,置步5置若输出停算;否则,转步3。functionx=mabisec(fun,a,b,ep)%用途:用二分法求非线性方程f(x)=0有根区间[a,b]中的一个根%格式:x=mabisec(fun,a,b,ep)fun为函数表达式,%a,b为区间左右端点,ep为精度,x返回近似根x=(a+b)/2.0;k=0;whileabs(feval(fun,x))>ep

7、(b-a>ep)iffeval(fun,x)*feval(fun,a)<0b=x;elsea=x;endx=(a+b)/2.0;k=k+1;enddisp(['

8、k=',num2str(k)])>>mabisec(inline(‘x*exp(x)-1’),0,1,1e-5)得计算结果:k=16x=0.5714630126953即迭代16次后,得到满足精度的近似根。例7.2用二分法程序mabisec.m求方程在[0,1]内的一个实根,取定精度解在MATLAB窗口执行:误差分析:第1步产生的有误差第k步产生的xk有误差对于给定的精度,可估计二分法所需的步数k:①简单;收敛②对f(x)要求不高(只要连续即可).①无法求复根及重根②收敛慢7.1.3二分法的收敛性分析同时由知由此可知,

9、序列{xk}的收敛性与区间[a,b]无关,故对任给区间[a,b],{xk}均收敛例7.3用二分法求方程在区间[1,2]内的根,使其精度达到两位有效数字。问需要将区间二分多少次?并求出满足精度的近似根。解根据(7.3)可以估计二分次数k的大小。设其中精度那么可求得取k=4即可,用公式(7.2)求解得具体过程如下kakbkxkbk-a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。