求一个数的n次方根.doc

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

数值计算 探讨求解的几种方法 摘要 很多科学计算问题都遇到非线性方程的求解问题。设非线性方程为 方程的解称为方程的根或函数的零点。对于非线性方程的求解一般没有特殊公式,因此研究其数值解法是很有必要的,在此以求一个数的次方根为例探讨几种求近似根的常用方法,即二分法、牛顿迭代法、简化牛顿迭代法法以及割线法。 一、算法设计 计算机配置 内存:2G 处理器主频:2.53GHz MATLAB版本:R2011b 1.1二分法 设在区间上连续,,则内有方程的根。取的中点,将区间一分为二。若,则就是方程的根,否则判别根在的左侧还是右侧。 若,则,令; 若,则,令。 不论出现那种情况,均为新的有根区间,它的长度只有原有根区间长度的一半,达到了压缩有根区间的目的。 对压缩了的有根区间,又可施行同样的步骤,再次压缩有根区间。如此反复进行下去,即可得一系列有根区间套 由于每一区间都是前一区间的一半,因此区间的长度为 若每次二分时所取区间中点都不是根,则上述过程将无限的进行下去。当时,区间必将最终收缩为一点,显然就是所求之根。若取区间的中点作为的近似值,则有下述误差估计式 只要足够大(即区间二分次数足够多),的误差就可足够小。 值得注意的是,由于在偶重根附近曲线为向上凹或向下凹,即与的正负号相同,因此不能用二分法求偶重根。 1.2二分法MATLAB程序设计 1.3牛顿迭代法 设已知方程近似根,且在附近可用一阶泰勒多项式近似,表示为 当时,方程可用线性方程近似代替,即 解此线性方程得 取此作为原方程的新近似根,重复以上步骤,于是得迭代公式 此式称为牛顿迭代公式,其迭代函数为 当为单根时,,,故 不一定为0,根据定理3,牛顿迭代法在根的邻近是平方收敛的。 1.4牛顿迭代法MATLAB程序设计 1.5简化牛顿迭代法 在牛顿迭代公式中,用一常数代替,得 此式称为简化牛顿迭代公式,只要选择得当,该式子总是收敛的,不过其收敛速度降为线性。其几何意义可描述为用平行线代替牛顿法中的切线。 1.6简化牛顿迭代法MATLAB程序设计 1.7割线法 用常数来代替虽然简单,但没有充分利用本身的特性,因此收敛较慢,若在牛顿迭代公式中改用差商代替导数,得迭代公式 可以证明,它的收敛阶为,确实比简化牛顿迭代公式收敛快。连接曲线上的两点与,所得弦线与轴交点的横坐标即为由此式求出的。因此,称之为双点割线法。 为了使程序简单,也将上述迭代公式中的改为,即 每步迭代时只利用一个新点,这样的迭代格式称为单点割线法,然而它的收敛速度只是线性的。 1.8割线法MATLAB程序设计 二、数值试验 2.1二分法求解 2.1.1运行结果 ,精度为8;迭代次数为8;最终收敛值为1.7099758; 误差为;运行时间0.188549秒; 2.1.2收敛图 2.2牛顿迭代法求解 2.2.1运行结果 精度为8;迭代次数为4;最终收敛值为1.7099759; 误差为;运行时间0.000453秒; 2.2.2收敛图 2.3简化牛顿迭代法求解 2.3.1运行结果 精度为8;迭代次数为11;最终收敛值为1.7099761; 误差为;运行时间0.004333秒; 2.3.2收敛图 2.4割线法求解 2.4.1运行结果 精度为8;迭代次数为6;最终收敛值为1.7099759; 误差为;运行时间0.005842秒; 2.4.2收敛图 2.5计算结果比较 算法结果误差迭代次数函数值时间二分法1.70997588-1.4511e-060.188549牛顿迭代法1.709975941.1928e-120.000453简化牛顿迭代法1.7099761111.6605e-060.004333弦截法1.70997596-7.6488e-080.0058422.6计算结果分析 1、二分法相对于其他几种算法,收敛时间较长,即二分法是在大范围内收敛的。 2、牛顿迭代法收敛较快,精度高,误差小。 3、简化牛顿法的收敛也较快,迭代次数多,导致误差较大。 4、弦截法的收敛速度快,迭代次数少,误差最小,总体上较好。 三、参考文献 【1】曹德欣,曹璎珞,计算方法,中国矿业大学出版社,2001。 【2】王正盛,MATLAB与科学计算,国防工业出版社,2011。

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档