收藏 分享(赏)

计算方法课件5.pptx

上传人:hwpkd79526 文档编号:6657999 上传时间:2019-04-19 格式:PPTX 页数:83 大小:654.52KB
下载 相关 举报
计算方法课件5.pptx_第1页
第1页 / 共83页
计算方法课件5.pptx_第2页
第2页 / 共83页
计算方法课件5.pptx_第3页
第3页 / 共83页
计算方法课件5.pptx_第4页
第4页 / 共83页
计算方法课件5.pptx_第5页
第5页 / 共83页
点击查看更多>>
资源描述

1、第五章 非线性方程的数值解法,2/47,本章内容,5.1 引言 5.2 二分法 5.3 迭代法 5.4 牛顿雷扶生法 5.5 正割法 5.6 迭代法的收敛阶和Aitken加速方法(*) 小结 作业与实验,3/47,本章要求,1. 理解方程有根的判别定理; 2. 掌握二分法基本原理,掌握二分法的算法流程; 3. 掌握理解单点迭代的基本思想,掌握迭代的收敛条件; 4. 掌握Newton迭代的建立及几何意义,了解Newton迭代的收敛性; 5. 掌握Newton下上法,掌握正割法,了解抛物线法。,4/47,5.1 引言,本节内容 一. 非线性方程定义 二. 方程求根特点 返回章节目录,5/47,5.

2、1 引言,在科学研究中,常常会遇到非线性方程或非线性方程组的问题。例如解方程或一般的,我们记非线性方程为,6/47,5.1 引言,一. 非线性方程定义 方程f (x)=0,当f (x)是一次多项式时,称f (x)=0为线性方程;否则称之为非线性方程。,7/47,5.1 引言,(1)求解f (x)=0,解x*称为方程的根,即f (x)的零点。 (2) f (x)为n次多项式就是n 次代数方程(n=5,不能用解析式表示解),f (x)为超越函数时,就是超越方程。 (3)若f (x)=(x-x*)m g(x),g(x)0,m为正整数,则称 x*为f (x)=0的m重根,或为f (x)的m重零点。 m

3、=1时,称x*为f(x)=0的单根。,8/47,5.1 引言,9/47,线性的(一次解)单个方程 多项式(n个解) 代数方程 非线性超越的(解的数目不定)线性(一组解)方程组 非线性(多组解)f (x)=0根或 f (x)零点,当 f (x)复杂时,很难求实际应用中只需求得满足一定精度的近似根即可(找近似有效简单方法) 。,5.1 引言,10/47,5.1 引言,二. 方程求根特点 1. 根的存在性 方程有没有根,有几个根? 定理1(代数基本定理):在复数范围内,n次代数方程至少有一个根。f (x)=anxn+an-1xn-1+a1x+a0=0其中:n正整数,x复变量,a0an为实、复常数。

4、定理2:n 次代数方程有 n 个根。,11/47,5.1 引言,2. 根的分布(有根区间) 求根的隔离区间,定一个a, b,使a, b内有且只有一个x*使f(x*)=0 定理3:设函数f(x)在a, b内连续,严格单调,且f(a)*f(b)0,则在a, b内f(x)=0有且仅有一个实根。 通常有两种做法来确定隔离区间: (1)作y = f(x)的草图,看f(x)在x轴的交点位置来定区间a, b (2)逐步搜索,在连续区间a, b内,选取适当的x1,x2(a, b),若f(x1)*f(x2)0,则x1, x2内有根。,12/47,例1:求xex-2 =0的有根区间 解:变形ex =2/x。则分别

5、做f(x)= ex, g(x)=2/x的草图,f(x)与g(x)的交点的横坐标即是根的大致位置0.5,1内有唯一实根。,5.1 引言,13/47,例2:求f(x)=x3-3x2+4x-3=0的有根区间。 解:三次多项式,作图复杂f(x)= 3x2-6x+4=3(x-1)2 +1在(-,+)内f(x)0,即f(x)为一单调递增函数。那么f(x)=0在(-,+)内最多只有一个实根。又 f(0)= 03-3*02+4*0-3=-30f(0)*f(2)0,故在0,2内有唯一实根。,5.1 引言,14/47,3. 根的精确化已知根的近似值后,将其精确化,满足精度要求。如例2中若取根x*=0.5*(0+2

6、)=1,不精确但若将0,2进一步缩小,则f(1.5)0,故1.5,2内有根,取x*=1/2(1.5+2)=1.75,这样精度就提高了。,5.1 引言,15/47,5.2 二分法,本节内容 一. 原理 二. 过程 三. 方法 四. 二分法收敛性 五. 二分法优缺点 六. 二分法的NS图 返回章节目录,16/47,二分法(Bisection Method)又叫对分法,是一种直接法,直观、简单。 一. 原理 设 f (x)=0在a, b内连续,严格单调,且f (a) * f (b)0,则f (x)=0在a, b内必有一根。 二. 过程 将区间对分,判别f (x)的符号,逐步缩小有根区间。,5.2 二

7、分法,17/47,5.2 二分法,三. 方法取xmid=0.5*(a+b)若f(xmid) 0,则取a1=xmid,b1=b此时有根区间缩小为a1, b1,区间长度为b1-a1=0.5*(b-a)再对a1, b1进行上述过程,直到满足 。,18/47,5.2 二分法,x1,x2,a,b,中止条件,或,不能保证 x 的精度,x*,2,19/47,5.2 二分法,四. 二分法收敛性,20/47,5.2 二分法,四. 二分法收敛性,21/47,注:用二分法求根,最好先给出 f (x) 草图以确定根的大概位置。或用搜索程序,将a, b分为若干小区间,对每一个满足 f (ak) * f (bk) 0 的

8、区间调用二分法程序,可找出区间a, b内的多个根,且不必要求 f (a) * f (b) 0。,5.2 二分法,22/47,5.2 二分法,23/47,5.2 二分法,24/47,5.2 二分法,25/47,5.2 二分法,例3:用二分法求f(x)=x6-x-1=0于1,2内的一个实根,且要求精确到小数后第3位(即要求|x*-xk|ln(b-a)-ln/ln2可确定所需分半次数k=11。计算结果见表51。 即结果是x11=1.134277,26/47,5.2 二分法,五. 二分法优缺点 优点:计算简单,方法可靠,只要求f (x)连续,在两个点上异号。 缺点:不能求偶数重根, 也不能求复根, 收

9、敛速度不算太快(与以1/2为比值的等比级数相同)。 因此,一般在求方程近似根时,不单独使用,常用来为其它方法提供好的初值。 对于方程求根,最常用方法是迭代法。,27/47,5.2 二分法,定义函数 f(x)=,读入数据 a,b,eps,x=(a+b)/2,k=1,|x-a|=eps or |f(x)|=eps,输出 x,f(x),f(x)*f(b)0,Y,N,a=x,b=x,x=(a+b)/2,k=k+1,结束,N,Y,六. 二分法的NS图,28/47,5.3 迭代法,本节内容 一. 迭代格式的构造 二. 迭代过程的几何表示 三. 迭代法的收敛性 四. 整体收敛性 五. 局部收敛性 六. 迭代

10、法N-S图 返回章节目录,解x=g(x)的简单迭代法,29/47,f (x) = 0,x = g (x),f (x) 的根,g (x) 的不动点,5.3 迭代法,迭代法 /* Fixed-Point Iteration */,30/47,5.3 迭代法,一. 迭代格式的构造,31/47,5.3 迭代法,二. 迭代过程的几何表示,O x* x2 x1 x0 x,y,y=x,y=g(x),P0,P1,P2,P*,Q1,Q2,32/47,5.3 迭代法,例1:用迭代法求方程f(x)=x2-2x-3=0的根(x1=3,x2= -1)解:(1)方程改写成 x=(2x+3)1/2 建立迭代公式 xk+1=

11、(2xk+3)1/2 (k=0,1,2),取x0=4,x1=3.316,x2= 3.104,x3=3.034,x4= 3.011,x5= 3.004当k, xk 3,收敛;(2)方程改写成 x=1/2*(x2-3)建立迭代公式 xk= 1/2 *(xk 2-3) (k=0,1,2),取x0=4, x1=6.5 ,x2=19.625 , x3= 191.0当k, xk ,发散。,33/47,5.3 迭代法,例2:求方程f(x)=x3-x-1=0在x0=1.5附近的根x*。 解:(1)方程改写成x=(x+1)1/3 ,收敛;(2)方程改写成x=(x3-1) ,发散。,34/47,5.3 迭代法,例

12、3: 对f(x)=x3+4x2-10=0(此方程在1,2中有唯一根)用不同方法化成等价方程。解:可化成很多不同等价方程,例如,35/47,5.3 迭代法,取初始近似值x0=1.5,迭代结果 迭代过程(a)、(b)不适定,(c)、(d)、(e)都收敛,但收敛速度相差很大。,36/47,5.3 迭代法,三. 迭代法的收敛性g(x)如何构造基本问题 xk的收敛性(收敛否?如何加速?)误差估计从几何上考察迭代法的收敛性,见下页(另见教材P18),37/47,5.3 迭代法,38/47,5.3 迭代法,具体的迭代收敛定理, 以及如何加速收敛, 待续。,39/47,5.3 迭代法,四. 整体收敛性,40/

13、47,5.3 迭代法,依此类推,41/47,5.3 迭代法,42/47,5.3 迭代法,五. 局部收敛性,43/47,5.3 迭代法,证明:,44/47,5.3 迭代法,45/47,5.3 迭代法,六. 迭代法N-S图,Y,N,46/47,5.4 牛顿雷扶生法,本节内容 一. 迭代格式的构造 二. Newton迭代法的几何意义 三. Newton迭代法收敛定理 四. 牛顿迭代法N-S图 五. 简化牛顿法 返回章节目录,解f(x)=0的Newton迭代法,47/47,5.4 牛顿雷扶生法,牛顿雷扶生法(Newton - Raphson Method)一般迭代法的特例,且迭代函数有固定的形式。 一

14、. 迭代格式的构造 1. 原理 构造 g(x) 的一条重要途径:用近似方程代替原方程求根。 牛顿法是将非线形方程线性化。,48/47,Taylor展开线性化(重要思想),5.4 牛顿雷扶生法,2. 方法,49/47,5.4 牛顿雷扶生法,二. Newton迭代法的几何意义,实际上牛顿迭代公式是曲线在xk点上的切线与x轴交点的横坐标,即用切线与x轴交点的坐标近似代替曲线与x轴的交点坐标,故也称切线法。,50/47,产生的序列单调有界, 保证收敛.,5.4 牛顿雷扶生法,1. 收敛的充分条件 设 f C2a, b,若 (1) f (a) f (b) 0; 则牛顿法产生的序列 xk 收敛到f (x)

15、 在 a, b 的唯一根。,有根,根唯一,三. Newton迭代法收敛定理,51/47,5.4 牛顿雷扶生法,52/47,5.4 牛顿雷扶生法,53/47,5.4 牛顿雷扶生法,由 Taylor 展开:,只要 f (x*) 0,则令 可得结论。,在单根 /*simple root */ 附近收敛快,此时可直接使用定理(见教材),54/47,5.4 牛顿雷扶生法,3. x0的选取对牛顿法收敛性的影响即:牛顿法的收敛性依赖于x0的选取。取 x0 使 f ( x0 )f” ( x0 )0,则收敛速度增大。常用二分法获取初值 x0,再进行迭代求解。迭代过程中若f(x0)0或迭代次数超过某个上界M, 仍

16、达不到要求的精度, 则迭代计算失败。,x*,55/47,改进与推广 重根 /* multiple root */ :加速收敛法 正割法 /* Secant Method */ 下山法 /* Descent Method */ :牛顿法局部微调,5.4 牛顿雷扶生法,56/47,例1:,5.4 牛顿雷扶生法,57/47,5.4 牛顿雷扶生法,58/47,例2:,5.4 牛顿雷扶生法,59/47,5.4 牛顿雷扶生法,例4:用牛顿法求x-sinx=0.5的根,精确到0.0001 解:f(x)=x-sinx-0.5 f(1)=-0.3401,2间有一个根。f(x)=1-cosx, f”(x)=sin

17、xxk+1=xk-f(xk)/f(xk)=xk-(xk-sinxk-0.5)/(1-cosxk)f(2)0, f”(2)=sin20即f(2)*f”(2)0,故选择x0=2x1=x0-(x0-sinx0-5)/(1-cosx0)=1.5829x2=1.5009,x3=1.4973,x4=1.4973x4-x3=00.0001 故取x=x4为近似值。,60/47,5.4 牛顿雷扶生法,四. 牛顿迭代法N-S图,定义导数函数 f1(x)=.,读入数据 x0,eps,x= x0-f(x0)/f1(x0), k=1,|x-x0|=eps,输出 k, x,x0=x,x= x0-f(x0)/f1(x0),

18、结束,定义函数 f(x)=.,k=k+1,61/47,5.4 牛顿雷扶生法,牛顿法需计算f(xk),若用一个给定常数值c代f(x), 则 xk+1=xk-f(xk )/c 要使该式收敛,则g(x) = x-f(x)/cg(x) = 1-f(x)/cg(x)=1-f(x)/c1 即0f(x)/c2 取c与f(x)同号,且f(x)/c2即可,这是切线方程 的固定斜率。,五. 简化牛顿法,62/47,例6:在例4中,x*在1.57附近。f(1.5)=1-cos1.50.9取c=0.9 f(1.5)/c2xk+1=xk-(xk-sinxk-0.5)/0.9取x0=2经x1x5=1.497209,x6=

19、1.49730迭代了6次。收敛速度降低,但计算量减小了。,例4: 用牛顿法求x-sinx=0.5 的根,精确到0.0001,5.4 牛顿雷扶生法,63/47,5.4 牛顿雷扶生法,六. 牛顿下山法,64/47,5.4 牛顿雷扶生法,65/47,5.4 牛顿雷扶生法,66/47,5.4 牛顿雷扶生法,举例:,解:,若取初值1.5,满足收敛条件.但若取,计算得,与可能值的差距加大,即使能收敛速度也会很慢.,此时用牛顿下山,法,设下山因子为t ,则计算结果如下表:,此时,计算方法:,67/47,5.4 牛顿雷扶生法,如表所示,用牛顿下山法,第1次就落入了局部收敛的领域,到第4 次时近似值的精度已经相

20、当高了。,68/47,5.5 正割法,本节内容 一. 引入意义 二. 正割法基本思想 三. 正割法几何意义 四. 正割法算法实现 返回章节目录,弦截法,69/47,5.5 正割法,一. 引入意义 牛顿迭代法虽然具有收敛速度快的优点,但每迭代一次都要计算导数 , 当 比较复杂时, 不仅每次计算 带来很多不便,而且还可能十分麻烦,如果用不计算导数的迭代方法,往往只有线性收敛的速度。本节介绍的弦截法便是一种不必进行导数运算的求根方法。弦截法在迭代过程中不仅用到前一步 处的函数值,而且还使用 处的函数值来构造迭代函数,这样做能提高迭代的收敛速度。,70/47,5.5 正割法,二. 正割法基本思想,71

21、/47,5.5 正割法,三. 正割法几何意义,72/47,5.5 正割法,例:用正割法解方程的根,由正割法,达到精度10-8,正割法迭代5次,x0=0.5; x1=0.4; x2 = 0.3430962343 x3 = 0.3473897274,x4 = 0.3472965093 x5 = 0.3472963553 x6 = 0.3472963553,73/47,5.5 正割法,例: 用正割法求方程 在 初始 值邻近的一个根。要求 解:取 , , 令 利用正割迭代公式计算过程略,取近似根则可满足精度要求。,74/47,5.5 正割法,四. 正割法算法实现,75/47,5.6 迭代法的收敛阶和A

22、itken加速方法,本节内容 一. 迭代过程的收敛速度 二. 常见迭代过程的收敛阶 三. 埃特金(Aitken)加速法 四. 斯蒂芬森(Steffensen)法 返回章节目录,76/47,5.6 迭代法的收敛阶和Aitken加速方法,一. 迭代过程的收敛速度一种迭代法要具有实用价值,不但要肯定它是收敛的,还要求它收敛的比较快。所谓迭代过程的收敛速度,是指在接近收敛时迭代误差的下降速度,具体地说,如果迭代误差 当 时成立则称迭代过程是 p 阶收敛的。,77/47,5.6 迭代法的收敛阶和Aitken加速方法,特别地, p = 1 (且 0 1 时称超线性收敛, 其中 p = 2 时称二次收敛(或

23、称为平方收敛)。p 越大, xk 收敛于 x* 的速度就越快。p 值的大小是衡量一个迭代过程优劣的标志之一。,78/47,5.6 迭代法的收敛阶和Aitken加速方法,二. 常见迭代过程的收敛阶一般迭代法:p1,线性收敛 牛顿法:p2,二阶收敛(当x*为二重根时,线性收敛) 正割法:p=1.618,超线性收敛 抛物线法:p=1.84,超线性收敛对收敛较慢数列 xk ,一个补救的方法是采用加速公式。,79/47,5.6 迭代法的收敛阶和Aitken加速方法,三. 埃特金(Aitken)加速法,80/47,5.6 迭代法的收敛阶和Aitken加速方法,P(x0, x1),P(x1, x2),81/47,5.6 迭代法的收敛阶和Aitken加速方法,82/47,四. 斯蒂芬森(Steffensen)法,5.6 迭代法的收敛阶和Aitken加速方法,83/47,小结,5.1 引言 5.2 二分法 5.3 迭代法 5.4 牛顿雷扶生法 5.5 正割法 5.6 迭代法的收敛阶和Aitken加速方法(*),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 中等教育 > 职业教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报