- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
实验1 方程根的近似计算
一、问题
求非线性方程的根
二、预备知识
方程的根是初等数学的重要内容之一,也是科学和工程
中经常碰到的数值计算问题。它的一般形式是求方程
。f(x)?0
。
如果有x*使得f(x*)?0
则称x*为f(x)?0的根,
,或者函数f(x)的零点。并非所有的袋鼠方程都能求出精确解或解析解。理论上已经证明,用代数方法可以求出不超过3次的代数方程的解析解,但对于次数大于等于5的代数方程,没有代数求根方法,即它的根不能用方程系数的解析式表
,
示。至于超越方程,通常很难求出其解析解。不存在解析解的方程就需要结合具体方程(函数)的性质,使用作图法或数值法求出近似解。而计算机的发展和普及又为这些方法提供了广阔的发展前景,使之成为科学和工程中最实用的方法之一。
三、求方程近似解的简单方法
图形方法——放大法求根
图形的方法是分析方程根的形态最简捷的方法。不过,不要总是想得到根的精确值。这些值虽然粗糙但直观,多少个根,在何范围,一目了然。而且还可以借助图形局部放大功能,将根定位得更加准确一些。
例1.求方程x5
围。
?2x2
4?0的所有实根及大致分布范
解:(1)首先画出函数f(x)?x5
?2x2
4的图形,确定
方程的实数根的大致范围。为此,在MATLAB命令窗口输入
ezplot(x^5+2*x^2+4)gridon
回车得出图1.由图可知,它有一个实数根,大致分布在
-2与2之间。
图1
(2)将作图范围不断缩小,用放大法可以得到精确度越来越高的近似值。在MATLAB命令窗口先后键入
ezplot(x^5+2*x^2+4,[-2,2])gridon
ezplot(x^5+2*x^2+4,[-2,-1.5])gridon
ezplot(x^5+2*x^2+4,[-1.55,-1.5])gridon
ezplot(x^5+2*x^2+4,[-1.545,-1.54])gridon
可得下面各图,可知方程的根在-1.544与-1.5435之间。当然,还可以将这样的过程再继续下去,从而得到更精
确的解的区间。
注:用roots命令求出该方程的实数根为-1.5437。
数值方法——根的隔离与二分法
根的隔离思想来源于连续函数的零点定理:若函数f(x)在闭区间[a,b]上连续,且f(a)f(b)?0,则方程f(x)?0在(a,b)内至少有一个根x*。
二分法是最简单的求根方法,它是利用连续函数的零点定理,将含根区间逐次减半缩小,取区间的中点构造收敛点
列?x ?来逼近根x*。
n
用该方法求f(x)?0的近似解可分两步做:第一步是确定根的近似位臵或大致范围,即确定一个区间[a,b],使得所
求根是位于这个区间内的唯一实根。这个区间称为根的隔离区间。这可以通过函数作图达到:先画出y?f(x)的图形,然后从图上定出它与x轴交点的大概位臵。
第二步,以根的隔离区间[a,b]的端点作为根的初始近似
值,用二分法逐步改进根的近似值的精确度,直至求得满足精确度的近似解。具体步骤如下:
取[a,b]的中点x
?(a?b)/2,若f(x
)?0,则x 就是
0 0 0
f(x)?0的根x*。若f(a)f(x )
0? ,则根x*必在区间(a,x )
0 0
内,取a
1
?a,b
1
? x;否则,根x*必在区间(x
0 0
,b)内,取
a ?x,b
1 0 1
? b。这样,得到新区间[a,b
1 1
],其长度为[a,b]的
一半。如此继续下去,进行n次等分后,得到一组不断缩小
的区间系列[a,b],[a,b
1 1
],...,[a ,b
n n
],...,和对应区间的中点数
列x ?(a ?b)/2,n?0,1,2,...。其中每个区间都含有根x*,
n n n
满足[a,b]?[a,b
1 1
]?...?[a ,b
n n
]?...。且每个区间的长度
都是前一区间长度的一半。由于[a ,b]的长度为(b?a)/2n,
n n
当n不断变大时,这些区间将收敛于一点x
的根。
。当做到第n步时,有
。
*,该点即为所求
x ?x* ?1(b
n 2 n
?a )?1
n 2n?1
(b?a)
选择适当的步数,就可以达到满意的精度。
四、实验过程
例2.编写二分法程序,求方程
x3?1.1x2?0.9x?1.4?0
实根的近似值
文档评论(0)