66 一元非线性方程的解法习题课.docx
《66 一元非线性方程的解法习题课.docx》由会员分享,可在线阅读,更多相关《66 一元非线性方程的解法习题课.docx(17页珍藏版)》请在冰豆网上搜索。
66一元非线性方程的解法习题课
第六章一元非线性方程的解法习题课
一、教学目标及基本要求
通过对本节课的学习,使学生掌握方程求根的数值解法。
二、教学内容及学时分配
本章主要介绍方程求根的迭代法。
三、教学重点难点
1.教学重点:
各种方法串讲一遍,并举例说明用法。
2.教学难点:
非线性方程迭代法。
四、教学中应注意的问题
多媒体课堂教学为主。
适当提问,加深学生对概念的理解迭代收敛性。
五、正文
若(x)是非线性函数,则(x)=0称为一元非线性方程
若(x)是多项式函数,则(x)=0称为代数方程
若(x)是含超越函数,则(x)=0称为超越方程
若(x*)=0,则称x*为方程(x)=0的根,或称为函数(x)的零点。
若(x)=(x-x*)kg(x),g(x*)0,则称x*为方程(x)=0的k重根,或称为函数(x)的k重零点。
x*为函数(x)的k重零点(x*)=(x*)=…=(k-1)(x*)=0,(k)(x*)0
1、二分法
二分法或称对分法是求方程近似解的一种简单直观的方法。
问题:
设函数(x)在[a,b]上连续,且(a)(b)<0,则(x)=0在[a,b]内至少有一零点,[a,b]称有根区间,若(x)=0在[a,b]内有唯一根x*,求满足精度要求的近似根.。
二分法的基本思想:
-----计算中通过对分区间、缩小区间范围的步骤搜索零点的位置。
二分法的计算过程如下:
(结合图,教学)
(1)把[a,b]二等分,分点x0=(a+b)/2,
若(x0)=0,则实根x*=x0,计算结束,否则
若(x0)(a)<0,则x*(a,x0),取a1=a,b1=x0,否则x*(x0,b),取a1=x0,b1=b,
得有根区[a1,b1],其长度是原[a,b]的一半。
(2)重复上述步骤,把[a1,b1]二等分,分点x1=(a1+b1)/2,
若(x1)0,又的得有根区[a2,b2],其长度是[a1,b1]的一半。
(3)如此反复下去,若(xk)0,则可的一列有根区间:
[a,b][a1,b1][a1,b1]…[ak,bk]…
其中[ak,bk]的长度是[ak-1,bk-1]的一半,lin(bk-ak)=0,limxk=x*
实际计算时,可按精度要求结束二分法过程:
(1)当bk+1-ak+1<时,有x*-xk<,计算结束
(2)要x*-xk<,只需
即k+1>
∴作k+1次二分法,计算结束。
例用二分法求解(x)=x4-x-10.27=0在区间(1,2)上的根,精确到10-2。
解:
(1)
(1)=-10,
(2)=4,有根区间[1,2]
(2)x0=(1+2)/2=1.5,(1.5)=-6.707,有根区间[1.5,2]
(3)x2=(1.5+2)/2=1.75,(1.75)=-2.641,有根区间[1.75,2]
…
结果见表2.1
b7-a7≈0.0078<10-2,x*-x7<=0.510-2,∴x*≈x=1.863
例证明1-x-sinx=0在[0,1]内有唯一实根,使用二分法求误差不大于0.510-4的根要二分多少次?
解:
(1)(x)=1-x-sinx,(0)=1>0,
(1)=-sin1<0,∴(x)在[0,1]内有实根;
又在(0,1)内(x)=-1-conx<0,(x)单调减少,∴(x)在[0,1]内有唯一实根,
(2)=0.510-4,k+1>
=
≥14.2788
∴要二分15次
计算机上机时二分法的计算步骤:
------(课外阅读)
二分法的特点:
------(课外阅读)
§6.2迭代法(逐次逼近法)
1.迭代法及其几何意义
问题:
若(x)=0在[a,b]内有一根x*,求(x)=0满足精度要求的近似根.。
迭代法思想方法:
-----
(1)将(x)=0转换成等价形式:
x=g(x),(g(x)称迭代函数)
(2)给定初值x0,构造迭代序列:
xx+1=g(xx),k=0.1.2.…
(3)limxk+1=limg(xk)=a时迭代法收敛(否则发散),则a就是方程(x)=0的根。
kk
在计算中,当xk+1-xk<时取a=xk+1为方程的根。
几何意义------
(1)将求(x)=0的根转换成求:
y=x,y=g(x)的交点P*(x,g(x))
(2)构造点列:
{Pk(xk,g(xk))}逼近交点P*(x,g(x))(图2-2)
例求(x)=x5-2x-1=0在区间(1,2)内的根,用6位有效数字计算。
解:
(1)=-2,
(2)=27,又在(1,2)内(x)=5x4-2>0,∴(x)在(1,2)内有唯一实根,
(1)将x5-2x-1=0转换成x=g(x)=
得迭代公式:
xk+1=
k=0.1.2.…
取初值x0=1.5,计算得:
x1=1.31951,…,x5=x6=1.29065
∴x*≈1.29065是所求的根。
(2)若将x5-2x-1=0转换成x=0.5(x5-1)
得迭代公式:
xk+1=0.5(x5k-1),k=0.1.2.…
取初值x0=1.5,计算x1=3.29688,…,迭代法发散.
对于方程(x)=0构造的多种迭代格式xk+1=g(xk),怎样判断构造的迭代格式是否收敛?
收敛是否与迭代的初值有关?
2、迭代法的收敛条件和误差估计
定理设迭代函数g(x)满足
(1)对任意x[a,b]有a≤g(x)≤b
(2)g(x)可微,且存在正数q<1,使对任意x[a,b]有g(x)≤q<1
则迭代公式xk+1=g(xk)对任意初值x0[a,b]均收敛于方程x=g(x)在区间[a,b]上的唯一根x*,且有如下误差估计式
证:
(1)先证明存在性:
令(x)=x-g(x),则有
(a)=a-g(a)≤0,(b)=b-g(b)≥0,
故有a≤x*≤b,使得(x*)=x*-g(x*)=0,或x*=g(x*)
(2)再证明惟一性:
设x*,y*是x=g(x)的根,则有
∵q<1,∴x*,=y*
(3)证明迭代序列收敛
∵q<1,∴k+时,qk0,有x*-xk0,从而序列{xk}收敛于x*
(4)证明误差估计式,
xk+t-xk+t-1≤qtxk-xk-1,
∴设k固定,对于任意的正整数p,
xk+p-xk≤xk+p-xk+p-1+xk+p-1-xk+p-2+…+xk+1-xk
≤(qp+qp-1+…+q)xk-xk-1=
≤
令p+,有xk+px*,qp0,有
注:
(1)由误差估计式可见:
当xk+1-xk<时可结束计算;
(2)q越小收敛速度越快,q接近1,收敛缓慢,甚至造成迭代失败。
(2)定理2.1是判断迭代法收敛的充分条件,而非必要条件。
迭代公式发散的充分条件:
若
,迭代公式x=g(x)发散。
例已知(x)=x-lnx-2=0在(2,4)内有一根,其等价形式:
(1)xk=lnx+2
(2)x=ex-2
判断对应的迭代法的敛散性,
解:
(1)g(x)=lnx+2,g(x)=
∴对应的迭代法的收敛。
(2)g(x)=ex-2,g(x)=ex-2
∴对应的迭代法的发散。
例求x=e—x在x=0.5附近的一个根,按五位小数计算,精度ε=10-3
解:
(1)确定有根区间:
(x)=x-e-x=0,(0.5)≈-0.10653<0,
(x)=1+e-x>0,(0.6)≈0.05119>0,得有根区间:
(0.5,0.6)
(2)构造迭代公式:
,
g(x)=e-x,g(0.5)≈0.60653(0.5,0.6),[g(0.7)≈0.49659(0.5,0.7)]*,
g(0.61)≈0.54335(0.5,0.61),
∴在(0.54.0.61)内满足定理2.1
(1)
∴迭代公式收敛。
(3)取x0=0.5,计算,得表2-2:
可见:
x*≈x10=0.567
为了保证迭代收敛,我们要考虑在根附近的收敛性。
3、局部收敛性与迭代法的阶
定义若存在D:
x-x*<,使迭代公式xk+1=g(xk)对任意初值x0D收敛,则称它在根
x*附近的局部收敛。
定理设g(x)在方程x=g(x)的根x*附近具有一阶连续导数,且g(x)1,则
迭代公式xk+1=g(xk)在x*附近局部收敛。
例:
在例5中,g(x)=e-x,在(0.1)内g(x)=e-xe0=1,
∴迭代公式在根x*附近局部收敛。
例已知x=(x)在[a,b]内有根x*,且在[a,b]上满足(x)-3<1,试构造g(x),使xk+1=g(xk)(k=1,2…)局部收敛于x*。
分析:
令g(x)=[(x)-3],≤1,则在[a,b]内g(x)=(x)-3<1
x=g(x)=[(x)-3x]+C=[x-3x]+C=-2x+C,
∴=
.C=0,g(x)=
定义设迭代序列{xk}收敛于的根x*,迭代误差ek=xk-x*(k=1,2…),
若存在常数p≥1和C>0,有:
则称{xk}是p阶收敛的,
当p=1,0当1
当p=2时,称为平方收敛
若由迭代函数g(x)产生的序列{xk}是p阶收敛的,则称g(x)是p阶迭代函数,并称迭代公式
xk+1=g(xk)是p阶收敛.
一般来说,阶数P越高,收敛速度越块。
阶数是衡量收敛好坏的标志之一。
定理若g(x)在g(x)=0的根x*附近有连续的p阶导数,且g(x*)=g(x*)=…=g(p-1)(x*)=0,
g(p)(x*)0。
则迭代公式xk+1=g(xk)在x*的邻域内是p阶收敛的,且
证:
(1)由g(x*)=0,知迭代公式xk+1=g(xk)在x*附近局部收敛。
,
(2)把g(x)在x*处泰勒展开
在西xk与x*之间。
ek+1=xk+1-x*=g(xk)-g(x*)=
∴
∴迭代公式p阶收敛
例已知迭代公式
局部收敛于
的根x*=1,证明迭代公式平方收敛。
证法一:
(应用定理2.3)
g
(1)=0,g
(1)0
∴迭代公式平方收敛。
证法二:
(应用定义2.2)
∴
∴迭代公式平方收敛。
计算机上机时迭代法的计算步骤:
------(课外阅读)
4、牛顿迭代法
对方程(x)=0,可构造多种迭代公式xk+1=g(xk),牛顿迭代法是借助于对函数(x)作一阶泰
勒展开而构造的一种迭代格式。
将(x)在(x)=0在近似根xk作一阶泰勒展开:
(x)=0可近似表示成:
设其根为xk+1,有:
当(xk)0,有:
(牛顿迭代公式)
用此迭代公式求方程的近似根的方法称为牛顿迭代法。
牛顿法的几何意义
作y=(x)在x0点的切线与x轴的交点x1,再作y=(x)在x1点的切线与x轴的交点x2,…,这样逐步逼近方程的根x*。
如图:
牛顿切线法示意图
所以牛顿迭代法也称切线法。
例用牛顿迭代法求方程x=e–x在[0,1]中的近似根。
解:
把方程改为:
(x)=xex-1=0,
(x)=ex+xex,
得迭代公式:
(k=0,1,2…)
取x0=0.5,计算结果(列于表2.3中):
k
0
1
2
3
xk
0.5
0.57102
0.56716
0.56714
x3-x20.00002,xx3=0.56714,
说明:
与例2.5比较,以看到牛顿迭代法的收敛速度明显于对分法。
例用牛顿迭代法计算
取=10-6
解:
x=
是方程(x)=x2-31=0的正实根
(x)=2x,
得迭代公式:
(k=0,1,2…)
(5,6),取x0=5.5,计算结果:
k
0
1
2
3
xk
5.5
5.56818182
5.56776438
5.56776436
x3-x20.00000002<
x3=5.56776436,
例应用牛顿迭代法于方程(x)=xn-a=0,和(x)=1-
=0,分别导出求
(a>0)的迭代公式
解:
(1)(x)=xn-a=0,(x)=nxn-1,
得迭代公式:
(k=0,1,2…)
(2)(x)=1-
=0,(x)=
得迭代公式:
(k=0,1,2…)
5、牛顿迭代法的收敛速度
定理设x*是方程(x)=0的单根,且(x)在x*的某邻域有二阶连续导数,则牛顿法在x*
附近局部收敛,且至少二阶收敛。
有
证:
牛顿迭代函数:
g(x)=x-
x*是(x)=0的单根,且(x*)=0,(x*)0,
g(x*)=
由定理知牛顿法在x*附近局部收敛,且至少二阶收敛。
牛顿迭代法也有局限性:
(1)若x是(x)的重根,迭代法也收敛,但已是一`阶收敛;
(2)当迭代的初始值x0在某根的附近时迭代才能收敛到这个根,尤其在(x0)数值很小时,会
发生从一个根附近跳向另一个根附近的情况,如图
图2.3失效的牛顿迭代法
牛顿迭代法对初值要求比较高,我们有:
定理2.5若在[a,b]上,(a)(b)<0,(x)0,(x)连续不变号,初值x0[a,b],(x0)(x0)>0,牛顿迭代序列单调收敛到(x)=0的单根。
证略,其几何意义如图:
6、牛顿下山法:
牛顿迭代法,当初值x0离单根太远,迭代法发散,但一旦收敛域会平方收敛,为扩大收敛域,可用下山法:
将迭代公式改为:
其中参数(0<<1)称下山因子,的选取使满足:
(xk+1)<(xk)
为方便起见,开始可取=1,然后逐步分半减少,既逐次取为1,1/2,1/22,…,直至找到满足条件(xk+1)<(xk)的的值。
例求方程x3-x-1=0在x=1.5附近的根。
=10-4
解:
(1)(x)=x3-x-1=0,(x)=3x2-1
(x)=ex+xex,
得迭代公式:
(k=0,1,2…)
(2)若取x0=0.7,得x=3.587234,可见偏离根x*.
(3)改用下山法,令
(k=0,1,2…)
仍取x0=0.7,逐次取为1,1/2,1/22,…,搜索,当取=1/22=0.25时,x1=1.421809,已满足条件
(xk+1)<(xk),计算结果见表2-4---,x4-x3<,x*x4=0.567:
7、弦截法(割线法)
为避免导数的计算,在牛顿迭代公式中:
用差商:
代替导数(xk),就得到弦截法迭代公式:
对应的迭代法称为弦截法。
弦截法的几何意义
过两点P0(x0,(x0))和P1(x1,(x1))的做一条割线(弦),该割线与轴的交点就是生成的迭代点x2,再做过P1(x1,(x1))和P2(x2,(x2))的一条割线,该割线与x轴的交点是x3,继续做下去得到方程(x)=0的根,如图2.4所示
图弦截法示意图
事实上,差商:
是割线的斜率。
弦截法迭代与牛顿迭代法比较:
(1)都是线性迭代法;
(2)牛顿迭代法计算xk+1时,只用到前一步的xk,称单点迭代法,而弦截法迭代,要用到前两步的xk,xk-1,称多点迭代法,
(3)用弦截法迭代求根,每次只需计算一次函数值,而用牛顿迭代法每次要计算一次函数值和一次导数值。
(4)弦截法收敛速度稍慢于牛顿迭代法。
收敛的阶为1.618
例用弦截法求方程x=e–x在x=0.5附近的根,=10-3
解:
(x)=x-e-x,取x0=0.5,x1=0.6
迭代公式:
(k=0,1,2…)
计算结果见表2-5---,x3-x2<,x*x3=0.567
8、埃特金(Aitken)迭代法
埃特金(Aitken)迭代法是一种迭代加速方法。
假设迭代公式:
xk+1=g(xk)收敛速度太慢,在有根区间g(x)L(变化不大),
先作两次迭代:
由微分中值定理有:
由此消去L,得:
从而得改进迭代式:
埃特金迭代公式:
两次迭代:
改进:
例用埃特金迭代法求方程x=0.99cosx+1在(1,2)内的根,=10-5
解:
建立迭代公式:
xk+1=0.99cosxk+1,
g(x)=0.99cosx+1,在(1,2)内g(x)=-0.99sinx≤0.99<1,迭代法收敛,但q=0.991,
收敛速度太慢。
构造埃特金迭代公式:
取x0=1.5,计算结果见表2-6---,x3-x2=0.000001<,x*x3=1.282975