数值分析2.2-1方程求根(二分法).pptVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数值分析2.2-1方程求根(二分法)

* 1.数值计算中的基本原则 2.算法的数值稳定概念 3.方程求根问题引例 4.二分法算法及其应用 《科学计算方法》2 ? ? ? ? 数值计算中的基本原则 (1)避免绝对值小的数做除数; (2)避免两相近数相减; (3)防止大数“吃”小数现象 a = 109,b = 9,在8位浮点数系统中做加法 a + b =1.0000000 ×109+ 0.000000009 ×109 由于只保留8位有效数,处于第九、十位的数09被舍去,实际操作是: 将 a 的数据作为加法计算的最终结果. 2/16 (4)尽量减少计算工作量(乘、除法次数) 例 计算 P(x) = 1+2x+3x2+4x3 + 5x4 的值 秦九韶算法 P(x)=1+x(2+x(3+x(4+5x))) 应用: 2进制数转换为10进制数算法 (1 1 1 0 1 1 1 0)2 = 27+26 +25 +0 +23 +22 +2 +0 =((((((1·2+1)2+1)2+0)2+1)2+1)2+1)2+0 =238 3/16 例1 计算 ( n =0,1,···, 20 ) 4/16 (分部积分法) 初值: I0 = 1 – e –1 ≈0.63212055882856 n=20时,S20= -30.19239488558378 递推公式: In = 1 – nIn-1 (I0 = 1- e-1) S0=1-exp(-1); S(1)=1-S0; for n=2:20 S(n)=1-n*S(n-1) end 实际计算: Sn=1-nSn-1,S0=0.63212055882856 |e(S0)|=|S0 –I0|0.5·10-14 error 5/16 由In=1 - nIn-1 Sn- In=- n(Sn-1 - In-1) 则e(Sn)= –ne(Sn-1)=······= (n!)(–1)ne(S0) 新算法: In-1 = (1 - In)/n S(30)=1/31 for n=30:-1:2 S(n-1)=(1-S(n))/n; end S0=1-S(1),S(1:21) 初值误差在算法执行过程中不断增大,这种算法称为数值不稳定算法。 6/16 Sn-1-In-1= –(Sn - In)/n 和Sn=1-nSn-1得 Sn-1 = (1 - Sn)/n 在算法执行过程中,舍入误差对计算结果影响不大的一类算法被称为数值稳定算法;否则称为不稳定算法. 初始误差在算法执行过程中不断减小,这种算法称为数值稳定算法。 |e(S20)|=|S20-I20|=|(1-S21/21)-(1-I21/21)| =|S21-I21| /21 =·······=|S30-I30|/(21·22·23·····30) 7/16 r d 例2.水中浮球问题 有一半径r =10 cm的球体,密度? =0.638.球体浸入水中后,浸入水中的深度d 是多少? 根据阿基米德定律,物体排开水的质量就是水对物体的浮力。 整理得: d 3 – 3 r d 2 + 4 r 3? = 0 注意:上式已知物体密度? =0.638, r = 10,水的密度为1. 由? =0.638, r = 10.代入,得d 3 – 30 d 2 + 2552 = 0 令 f (x) = x 3 – 30 x 2 + 2552 ,函数图形如下所示 求解方程 f(x)=0,即 是求函数 f(x)的零 点. f(x) 的零点所 在区间为:[0, 20] 9/16 roots([l -30 0 2552]) ans = 26.3146 11.8615 -8.1761 第一步:对根进行隔离,找出隔根区间,或在隔根区间内确定一个解的近似值x0; 设f(x) = 0的根为 x*,通过迭代计算,产生序列: x0 ? x1 ? x2 ? ··· ? xn·········

文档评论(0)

ipad0d + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档