牛顿迭代法论文
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二 .牛顿迭代法的分析
2.1 牛顿迭代法的思想
多数情况下是得不到一般数学方法所需的函数表达式,或难以找到原函数。 线性方程组的求解更是让人望而生畏,往往因为计算机工作量太大而无法实施。 对这些问题,都可以利用数值方法来求解,在计算机中实现的数值方法也称为数 值算法。牛顿迭代法是数值分析中一个重要的计算方法和思想。迭代法的主要功 能:计算方程时可以比较快速。
-5-
由此得一次方程
求解,得
f (x0 ) (x x0 ) f (x0 ) 0
图 1 牛顿迭代法示意图
x1
x0
f (x0 ) f (x0 )
如图 1 所示,x1 比 x0 更接近于 x*。该方法的几何意义是:用曲线上某点(x0,y0)的切线
代替曲线,以该切线与 x 轴的交点(x1,0)作为曲线与 x 轴的交点(x*,0)的近似(所以
O
x* x1 x0
x
过程,将方程 f(x) = 0 在 x1 处局部线性化计算出
x2,求得近似解 x2,……。详细叙述如下:假设方程的解 x*在 x0 附近(x0 是方程解 x*的近
似),函数 f(x)在点 x0 处的局部线化表达式为 f (x) f (x0 ) (x x0 ) f (x0 )
在工程实践中,有许多问题往往归结为求一元非线性方程的实根、求函数 的定积分、求线性方程组的解等。而即使对于求一元方程实根这类问题,也只有 在少数简单的情况下,才可以用传统的方法得到根的数学表达式。对于需要计算 定积分的问题,便的计算出来结果但并不影响计算出来结果的精确度,运用于多 种工业设计和数学设计方面。
牛 顿 迭 代 法 用 到 导 数 f'(x), 但 有 时 求 导 困 难 , 如 果 导 数 用 差 商 (y2-y1)/(x2-x1)逼近,便是一种快速的截弦法。取两个x值作试探,判断f(x)是否 副近于0,如果f(x)不理想,用经过(x1,y1)、(x2,y2)的直线(截弦)代替f(x)求根, 近似根x外推=x1-(x2-x1)*y1/(y2-y1),此x靠性会更好些。求根过程:是叠代过 程,即由(x1,x2)→f(x1)、f(x2)、f(x中)或f(x外推)→(X1,X2),大写X1,X2就 是下一轮计算的小写x1,x2,二分法、截弦法、牛顿迭代法计算公式不同,一个 用中值外推,后二者用直线外推,二者用直线外推,但它们计算过程几乎相同, 具体程序详见本源代码。对截弦法而言,x1,y1是起点,x2,y2直的控制点,,x1,y1 是起点,x2,y2直的控制点,x2不能与x1相等,否则直线画不出来,但x1与x2应
牛顿迭代法又称为切线法)。设 xn 是方程解 x*的近似,迭代格式
xn1
xn
f (xn ) f (xn )
( n = 0,1,2,……)
就是著名的牛顿迭代公式,通过迭代计算实现逐次逼近方程的解。牛顿迭代法的最大优点是 收敛速度快,具有二阶收敛。
三 牛顿迭代求根的方法...................................................................................7 四 牛顿迭代法具体例子的实现..............................................................................7 伍 牛顿迭代法的收敛性..........................................................................................10 六、迭代求根应注意的事项..........................................................百度文库....................10 七、 参考文献.......................................................................................................11 八 附录.c语言代码...........................................................................................13
二 牛顿迭代法的分析........................................................................................4
2.1 牛顿迭代法的思想............................................................................................4 2.2 牛顿迭代法的要求............................................................................................5 2.3 牛顿.迭代法.......................................................................................................6
2.2 牛顿迭代法的要求
牛顿迭代法方法简单,每次迭代都是简单的重复运算,易于编制程序;与 求解线性方程的精确法相比,简单迭代法对于字长位数较少的计算机更为适用, 它可以用增加迭代次数来弥补字长位数少的不足.初值可以任取,因而中间结果 偶然错误不影响最后结果的获得。缺点:迭代速度较慢。
2.3 牛顿迭代法
关键字: 牛顿 迭代 方程 根 算法
-2-
一 .牛顿迭代法简介
1.1 牛顿迭代法的产生背景 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson method),
它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。多数方程不存在求 根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。方 法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x) = 0的根。牛顿迭代法是求方程根的重 要方法之一,其最大优点是在方程f(x) = 0的单根附近具有平方收敛,而且该法还可以用来 求方程的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。另外该方法广 泛用于计算机编程中。 1.2 牛顿迭代法的概述
-1-
题目:
牛顿法---插值方法
摘要: 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson
method),它是牛顿在 17 世纪提出的一种在实数域和复数域上近似求解方程的方 法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找 方程的近似根就显得特别重要。牛顿迭代法是求方程根的重要方法之一,其最大 优点是在方程 f(x) = 0 的单根附近具有平方收敛,而且该法还可以用来求方程 的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。另外该方 法广泛用于计算机编程中。牛顿迭代法是一个重要的计算方法和思想。牛顿迭代 法的主要功能:计算方程时可以比较快速方便的计算出来结果但并不影响计算出 来结果的精确度,运用于多种工业设计和数学设计方面.
-4-
尽量靠近,远了作出的直线准确度下降。在求根过程中会用到牛顿迭代伪代码: 牛顿迭代法伪代码: x1=-2,y1=f(x1) x2=-2,y2=f(x2) while(){//循环 x=x1-(x2-x1)*y1/(y2-y1),y=f(x) 如果|x-x2|<0.01或y为0则跳出循环 x1=x2,y1=y2 x2=x,y2=y
1.牛顿迭代法
方法的基本思路是利用一个根的猜测值 x0 做
初始近似值,使用函数 f(x)在 x0 处的泰勒级数展
y
式的前两项做为函数 f(x)的近似表达式。由于该表
达式是一个线性函数,通过线性表达式替代方程
f(x) = 0 中的 f(x)求得近似解 x1。即将方程 f(x) =
0 在 x0 处局部线性化计算出近似解 x1,重复这一
目录
一 牛顿迭代法的简介........................................................................................4
1.1 牛顿迭代法的产生背景......................................................................................4 1.2 牛顿迭代法的概述...............................................................................................4 1.3 牛顿迭代法的优点..............................................................................................4
1.3 牛顿迭代法的优点
迭代法是求方程近似根的一个重要方法,也是计算方法中的一种基本方法, 它的算法简单,是用于求方程或方程组近似根的一种常用的算法设计方法。牛顿 迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0的单根附近具
-3-
有平方收敛,而且该法还可以用来求方程的重根、复根。牛顿法是方程求根的一 个有力方法,常常能快速求出其他方法求不出或者难以求出的解。假定有一个函 数y=f(x),方程f(x)=0在 x = r 处有一个根,对于此根,先估计一个初始值 Xo (可以是猜测的)。得到一个更好的估计值X1。为此f(X)=Xo处作该曲线的切线, 并将其延长与 x 轴相交。切线与x轴的交点通常很接近 r ,我们用它作为下一 个估计值X1,求出X1后,用X1代替Xo。重复上述过程,在x=X1处作曲线的另一条 切线,并将其延长至与x轴相交,用切线的x轴截距作为下一个近似值X2……这样 继续下去,所得出的这个x轴截距的序列通常迅速接近根r。
牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson method),它是牛顿在 17 世纪提出的一种在实数域和复数域上近似求解方程的方 法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找 方程的近似根就显得特别重要。方法使用函数 f(x)的泰勒级数的前面几项来寻 找方程 f(x) = 0 的根。设 r 是 f(x) = 0 的根,选取 x0 作为 r 初始近似值,过 点(x0,f(x0))做曲线 y = f(x)的切线 L,L 的方程为 y = f(x0) f'(x0)(x-x0), 求出 L 与 x 轴交点的横坐标 x1 = x0-f(x0)/f'(x0),称 x1 为 r 的一次近似值。 过点(x1,f(x1))做曲线 y = f(x)的切线,并求该切线与 x 轴的横坐标 x2 = x1-f(x1)/f'(x1),称 x2 为 r 的二次近似值。重复以上过程,得 r 的近似值序列, 其中 x(n+1)=x(n)-f(x(n))/f'(x(n)),称为 r 的 n+1 次近似值,上式称为牛顿 迭代公式。解非线性方程 f(x)=0 的牛顿法是把非线性方程线性化的一种近似方 法。把 f(x)在 x0 点附近展开成泰勒级数 f(x) = f(x0)+(x-x0)f'(x0)+(x- x0)^2*f''(x0)/2! +… 取其线性部分,作为非线性方程 f(x) = 0 的近似方程, 即泰勒展开的前两项,则有 f(x0)+f'(x0)(x-x0)=f(x)=0 设 f'(x0)≠0 则其解 为 x1=x0-f(x0)/f'(x0) 这样,得到牛顿法的一个迭代序列:x(n+1)=x(n)- f(x(n))/f'(x(n))。
2.1 牛顿迭代法的思想
多数情况下是得不到一般数学方法所需的函数表达式,或难以找到原函数。 线性方程组的求解更是让人望而生畏,往往因为计算机工作量太大而无法实施。 对这些问题,都可以利用数值方法来求解,在计算机中实现的数值方法也称为数 值算法。牛顿迭代法是数值分析中一个重要的计算方法和思想。迭代法的主要功 能:计算方程时可以比较快速。
-5-
由此得一次方程
求解,得
f (x0 ) (x x0 ) f (x0 ) 0
图 1 牛顿迭代法示意图
x1
x0
f (x0 ) f (x0 )
如图 1 所示,x1 比 x0 更接近于 x*。该方法的几何意义是:用曲线上某点(x0,y0)的切线
代替曲线,以该切线与 x 轴的交点(x1,0)作为曲线与 x 轴的交点(x*,0)的近似(所以
O
x* x1 x0
x
过程,将方程 f(x) = 0 在 x1 处局部线性化计算出
x2,求得近似解 x2,……。详细叙述如下:假设方程的解 x*在 x0 附近(x0 是方程解 x*的近
似),函数 f(x)在点 x0 处的局部线化表达式为 f (x) f (x0 ) (x x0 ) f (x0 )
在工程实践中,有许多问题往往归结为求一元非线性方程的实根、求函数 的定积分、求线性方程组的解等。而即使对于求一元方程实根这类问题,也只有 在少数简单的情况下,才可以用传统的方法得到根的数学表达式。对于需要计算 定积分的问题,便的计算出来结果但并不影响计算出来结果的精确度,运用于多 种工业设计和数学设计方面。
牛 顿 迭 代 法 用 到 导 数 f'(x), 但 有 时 求 导 困 难 , 如 果 导 数 用 差 商 (y2-y1)/(x2-x1)逼近,便是一种快速的截弦法。取两个x值作试探,判断f(x)是否 副近于0,如果f(x)不理想,用经过(x1,y1)、(x2,y2)的直线(截弦)代替f(x)求根, 近似根x外推=x1-(x2-x1)*y1/(y2-y1),此x靠性会更好些。求根过程:是叠代过 程,即由(x1,x2)→f(x1)、f(x2)、f(x中)或f(x外推)→(X1,X2),大写X1,X2就 是下一轮计算的小写x1,x2,二分法、截弦法、牛顿迭代法计算公式不同,一个 用中值外推,后二者用直线外推,二者用直线外推,但它们计算过程几乎相同, 具体程序详见本源代码。对截弦法而言,x1,y1是起点,x2,y2直的控制点,,x1,y1 是起点,x2,y2直的控制点,x2不能与x1相等,否则直线画不出来,但x1与x2应
牛顿迭代法又称为切线法)。设 xn 是方程解 x*的近似,迭代格式
xn1
xn
f (xn ) f (xn )
( n = 0,1,2,……)
就是著名的牛顿迭代公式,通过迭代计算实现逐次逼近方程的解。牛顿迭代法的最大优点是 收敛速度快,具有二阶收敛。
三 牛顿迭代求根的方法...................................................................................7 四 牛顿迭代法具体例子的实现..............................................................................7 伍 牛顿迭代法的收敛性..........................................................................................10 六、迭代求根应注意的事项..........................................................百度文库....................10 七、 参考文献.......................................................................................................11 八 附录.c语言代码...........................................................................................13
二 牛顿迭代法的分析........................................................................................4
2.1 牛顿迭代法的思想............................................................................................4 2.2 牛顿迭代法的要求............................................................................................5 2.3 牛顿.迭代法.......................................................................................................6
2.2 牛顿迭代法的要求
牛顿迭代法方法简单,每次迭代都是简单的重复运算,易于编制程序;与 求解线性方程的精确法相比,简单迭代法对于字长位数较少的计算机更为适用, 它可以用增加迭代次数来弥补字长位数少的不足.初值可以任取,因而中间结果 偶然错误不影响最后结果的获得。缺点:迭代速度较慢。
2.3 牛顿迭代法
关键字: 牛顿 迭代 方程 根 算法
-2-
一 .牛顿迭代法简介
1.1 牛顿迭代法的产生背景 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson method),
它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。多数方程不存在求 根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。方 法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x) = 0的根。牛顿迭代法是求方程根的重 要方法之一,其最大优点是在方程f(x) = 0的单根附近具有平方收敛,而且该法还可以用来 求方程的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。另外该方法广 泛用于计算机编程中。 1.2 牛顿迭代法的概述
-1-
题目:
牛顿法---插值方法
摘要: 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson
method),它是牛顿在 17 世纪提出的一种在实数域和复数域上近似求解方程的方 法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找 方程的近似根就显得特别重要。牛顿迭代法是求方程根的重要方法之一,其最大 优点是在方程 f(x) = 0 的单根附近具有平方收敛,而且该法还可以用来求方程 的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。另外该方 法广泛用于计算机编程中。牛顿迭代法是一个重要的计算方法和思想。牛顿迭代 法的主要功能:计算方程时可以比较快速方便的计算出来结果但并不影响计算出 来结果的精确度,运用于多种工业设计和数学设计方面.
-4-
尽量靠近,远了作出的直线准确度下降。在求根过程中会用到牛顿迭代伪代码: 牛顿迭代法伪代码: x1=-2,y1=f(x1) x2=-2,y2=f(x2) while(){//循环 x=x1-(x2-x1)*y1/(y2-y1),y=f(x) 如果|x-x2|<0.01或y为0则跳出循环 x1=x2,y1=y2 x2=x,y2=y
1.牛顿迭代法
方法的基本思路是利用一个根的猜测值 x0 做
初始近似值,使用函数 f(x)在 x0 处的泰勒级数展
y
式的前两项做为函数 f(x)的近似表达式。由于该表
达式是一个线性函数,通过线性表达式替代方程
f(x) = 0 中的 f(x)求得近似解 x1。即将方程 f(x) =
0 在 x0 处局部线性化计算出近似解 x1,重复这一
目录
一 牛顿迭代法的简介........................................................................................4
1.1 牛顿迭代法的产生背景......................................................................................4 1.2 牛顿迭代法的概述...............................................................................................4 1.3 牛顿迭代法的优点..............................................................................................4
1.3 牛顿迭代法的优点
迭代法是求方程近似根的一个重要方法,也是计算方法中的一种基本方法, 它的算法简单,是用于求方程或方程组近似根的一种常用的算法设计方法。牛顿 迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0的单根附近具
-3-
有平方收敛,而且该法还可以用来求方程的重根、复根。牛顿法是方程求根的一 个有力方法,常常能快速求出其他方法求不出或者难以求出的解。假定有一个函 数y=f(x),方程f(x)=0在 x = r 处有一个根,对于此根,先估计一个初始值 Xo (可以是猜测的)。得到一个更好的估计值X1。为此f(X)=Xo处作该曲线的切线, 并将其延长与 x 轴相交。切线与x轴的交点通常很接近 r ,我们用它作为下一 个估计值X1,求出X1后,用X1代替Xo。重复上述过程,在x=X1处作曲线的另一条 切线,并将其延长至与x轴相交,用切线的x轴截距作为下一个近似值X2……这样 继续下去,所得出的这个x轴截距的序列通常迅速接近根r。
牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson method),它是牛顿在 17 世纪提出的一种在实数域和复数域上近似求解方程的方 法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找 方程的近似根就显得特别重要。方法使用函数 f(x)的泰勒级数的前面几项来寻 找方程 f(x) = 0 的根。设 r 是 f(x) = 0 的根,选取 x0 作为 r 初始近似值,过 点(x0,f(x0))做曲线 y = f(x)的切线 L,L 的方程为 y = f(x0) f'(x0)(x-x0), 求出 L 与 x 轴交点的横坐标 x1 = x0-f(x0)/f'(x0),称 x1 为 r 的一次近似值。 过点(x1,f(x1))做曲线 y = f(x)的切线,并求该切线与 x 轴的横坐标 x2 = x1-f(x1)/f'(x1),称 x2 为 r 的二次近似值。重复以上过程,得 r 的近似值序列, 其中 x(n+1)=x(n)-f(x(n))/f'(x(n)),称为 r 的 n+1 次近似值,上式称为牛顿 迭代公式。解非线性方程 f(x)=0 的牛顿法是把非线性方程线性化的一种近似方 法。把 f(x)在 x0 点附近展开成泰勒级数 f(x) = f(x0)+(x-x0)f'(x0)+(x- x0)^2*f''(x0)/2! +… 取其线性部分,作为非线性方程 f(x) = 0 的近似方程, 即泰勒展开的前两项,则有 f(x0)+f'(x0)(x-x0)=f(x)=0 设 f'(x0)≠0 则其解 为 x1=x0-f(x0)/f'(x0) 这样,得到牛顿法的一个迭代序列:x(n+1)=x(n)- f(x(n))/f'(x(n))。