求多项式浮点java思路_求解多项式方程所有实根的算法及程序实现.PDF

求解多项式方程所有实根的算法及程序实现

垫!!垒坚:i!

Scienceand lnnovetionHerebo

Technology

工程技术

求解多项式方程所有实根的算法及程序实现

贾小涛 倪旭敏

(北京交通大学理学院 北京 100044)

摘要:多呵式方程求根同是在工程实最中有着奉足轻重的地住,牛顿造代法由于其良好的收敛速度而敖广泛应用。文幸介格了根据牛

顿速代法的全局收敛定理,结合函数的一阶导莪.二阶导数信息求得多嘎式方程在耒一区闻内的所有实根,以及每一个实根的重苁。置后利

用c/c++语言实现了算法。例证表明,试方法毙有效的求得多项式方程在耒一蛤定区间内的所有实根及实根重敦。

关键词:多嘎式 牛顿迭代 实根 重敖

4

中图分类号:01 文献标识码:A 文章编号:1674--098X(2010)1l(a)-0107-02

1引言

多项式方程求根是工程实践中经常遇到问题。在工程实践中

有着举足轻重的地位。牛顿法由于其良好的计算速度以及较少的

为了判段子区间内是否有方程一’1)=0的根,需要判断条件1是否

空间需求,在求根问题中得到了广泛应用。但牛顿法具有局部收敛

满足。此时有以下几种情况:

的局限性,也不能求得某区间内的所有实根。本文根据牛顿法的全

·两个子区间均满足条件l(或有一个区间满足条件1),此时

局收敛定理,设计出求解多项式方程所有实根的算法,同时还可以

求得每一个实根的重数。 可利用牛顿迭代求解每个子区间内的根口(毛-Ll,1)记为矸一.

口(毛一1,2,1)记为霹‘1。

2算法理论及思想

定理l(整体收敛定理):设函数f(x)在区间【口,明上存在二阶 气q={砰一,磅‘1)气一。={口,砰~,砰,磅一,b】

然后需要确定初始值,口,b由收敛定理条件i和2可知,有且只

连续导数,且满足条件:

有一个满足条件4,通过条件4,确定初始值。但在程序设计中,需要

(1)/(口)/(6)

(2),。x)在区间【a,b】上不变号。 ·两个子区间均不满足条件1,但厂帕1’(矸)=0,此时砰为

(3)当苫∈(a,b)时,厂’(z)≠o, ∥铲1J=0的二重根,记为口(毛一1,l,2)

(4)对所选初值而∈【口,b】,有f(xo)f。Xo)>o。 气q={砰叫(=钟)j气一-=a,钟,bJ

则由牛顿迭代法产生的序列{t}单调收敛于方程f(x)=0在

·两个子区间均不满足条件1,且,妯“’(钟)≠0,此时

la,bI内唯一的根x’。

根据以上所给出的收敛定理,我们只需要找出满足定理要求 乞一·=a民一,=毛=p,钟,6,

的区间l口,bl以及初值%即可找到区间I口,bl内的唯一的根。 在此步我们暂且假设,每个子区间内各有一个根,即有

对于一个比较大且可能包含方程f(x)=0多个根的区间I口,bI,

如果要找到其所有根,需要把其分解成多个小区间,然后判断这些

(3)对方程∥铲2J=0:根据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值