非线性方程求解:牛顿法与割线法(Newton-Raphson and Secant method)_百 ...
发布网友
发布时间:2024-09-17 07:53
我来回答
共1个回答
热心网友
时间:2024-09-29 04:35
牛顿法
对一个性质良好的函数[公式] ,我们任取一个点 [公式] ,对函数作泰勒展开得到
[公式]
对于函数的零点[公式] ,有 [公式] ,将这个值代入到上式中
[公式]
如果假设点[公式] 与零点 [公式] 充分接近,那么
[公式]
忽略高阶小量
[公式]
对该式进行变形,则可得到
[公式]
根据这个式子,构造出牛顿法求根的迭代公式为
[公式]
因此,牛顿法求根的步骤为
(1)选取一个离零点不太远的初始点[公式]
(2)[公式] [公式] .使用此式进行迭代
牛顿法在具有单重零点的情况下,具有二阶收敛速度,而在当所求的根是m重零点时[公式] ,具有线性收敛速度,下面我们将证明这一点.
[公式]
容易注意到的是,对于牛顿法迭代式[公式] ,其实本质是不动点迭代 [公式]
此时[公式] ,所以牛顿法的收敛性我们无需再证明.
值得探讨的是,既然牛顿法的本质是不动点迭代,在我们讲不动点迭代时,证明了不动点迭代的收敛速度是线性的,那么为什么牛顿法的收敛速度又有可能是二阶收敛呢?
回顾之前的证明,我们使用拉格朗日中值定理证明了不动点迭代为线性收敛
[公式]
但这会产生局限性,当[公式] 时,虽然满足线性收敛,但这代表 [公式] 是 [公式] 的高阶无穷大量,这说明序列的收敛速度是可能比线性收敛更快的,所以我们需要找到能够使 [公式] 与 [公式] 同阶的次幂 [公式] .
现在给出不动点迭代收敛速度的补充证明
对于函数[公式] ,如果满足 [公式] , [公式] ,此时不动点迭代为 [公式] 阶收敛.
[公式]
函数[公式] 在 [公式] 作泰勒展开得到
[公式]
由条件[公式] , [公式] ,上式化为
[公式]
将[公式] 代入到上式
[公式]
由不动点迭代的性质
[公式]
当[公式] , [公式]
随后我们就可以计算出收敛速度为
[公式]
[公式]
现在让我们重新关注到牛顿迭代上来
对于它来讲,[公式]
对于单重根的函数[公式] ,我们一定可以将其变形为 [公式] 的形式, [公式]
此时显然有[公式] , [公式] ,故而此时为二阶收敛.
对于有m重根的函数[公式] ,我们可以将其变形为 [公式] , [公式]
此时[公式] 不定式,我们假设该极限存在并且 [公式] ,且 [公式] .此时则满足线性收敛.
割线法
为了避免在Newton迭代法中每一步都计算导数值,我们用相邻两步的函数值作差商来逼近导数值,即
[公式]
对上式变形得到割线法的迭代式
[公式]
对于割线法,有定理
设[公式] 在其零点 [公式] 附近性质足够良好,且 [公式] .如果初值 [公式] 充分接近 [公式] ,则迭代序列收敛于 [公式] ,且为 [公式] 阶收敛.
该定理这里不再证明.