第2章计算方法教材课件_第1页
第2章计算方法教材课件_第2页
第2章计算方法教材课件_第3页
第2章计算方法教材课件_第4页
第2章计算方法教材课件_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章一元非线性方程的解法设非线性方程为f(x)=0(2-1)方程(2-1)的解x*称为方程的根或函数f(x)的零点。若f(x)可表示为f(x)=(x-x*)mg(x)其中m为大于1的整数,且g(x)≠0,称x*为方程(2-1)的m重根,或函数f(x)的m重零点.若f(x)为n次多项式,则称f(x)=0为n次代数方程;若f(x)为超越函数,则称f(x)=0为超越方程。若f(x)在[a,b]内连续,且f(a)•f(b)<0,则f(x)=0在[a,b]内必有根;若f(x)在[a,b]内还严格单调,则f(x)=0在[a,b]内只有一根。据此可得求隔根区间的两种方法。1.做图法画出y=f(x)的草图,由f(x)与横轴交点的大概位置来确定隔根区间;或者利用导函数f'(x)的正、负与函数f(x)的单调性的关系确定根的大概位置。第一节二分法一、求隔根区间的一般方法若f(x)比较复杂,还可将方程f(x)=0化为一个等价方程φ(x)=ψ(x),

则曲线y=φ(x)与y=ψ(x)之交点A(x*,y*)的横坐标x*即为原方程之根,据此也可通过作图求得x*的隔根区间.例1

判别下列方程有几个实根,并求隔根区间。(1)

f(x)=x3-x-1=0

(2)f(x)=x4-4x3+1=0

解将方程变形为x3=x+1,绘曲线y=x3及y=x+1,由图可知,方程只有一个实根x*(1,1.5),所以(1,1.5)即为其隔根区间。方程f(x)=x4-4x3+1=0,由

f(x)=4x2(x-3)=0得驻点x1=0,x2=3.该二点将实轴分为三个区间:(-∞,0),(0,3),(3,+∞)f(x)

在此三区间的符号分别为“-”、“-”、“+”.又知f(-∞)>0,f(0)=1>0,f(3)=-26<0,f(+∞)>0可见f(x)仅有两个实根,分别位于(0,3),(3,+∞),又f(4)=1>0,

所以第二根的隔根区间可缩小为(3,4)。以上分析可用下表表示x(-∞,0)0(0,3)3(3,4)4(4,+∞)

f(x)f(x)

-↘0+

-↘0-+↗+++↗隔根区间(0,3)(3,4)2.逐步搜索法从区间[a,b]的左端点a出发,按选定的步长h一步步向右搜索,若f(a+jh)·f(a+(j+1)h)<0

(j=0,1,2,…)则区间[a+jh,a+(j+1)h]内必有根。搜索过程也可从b开始,这时应取步长h<0。二、二分法设f(x)在区间[a,b]上连续,f(a)·f(b)<0,则[a,b]内有方程的根。取[a,b]的中点将区间一分为二。若f(x0)=0,则x0就是方程的根,否则判别根x*在x0

的左侧还是右侧。若f(a)·f(x0)

<0,则x*∈(a,x0

),令a1=a,b1=x0;若f(x0)·f(b)>0,则x*∈(x0,b),令a1=x0

,b1=b.不论出现哪种情况,(a1

,b1

)均为新的有根区间,它的长度只有原有根区间长度的一半,达到了压缩有根区间的目的。对压缩了的有根区间,又可实行同样的步骤,再压缩。如此反复进行,即可的一系列有根区间套由于每一区间都是前一区间的一半,因此区间[an,bn

]的长度为若每次二分时所取区间中点都不是根,则上述过程将无限进行下去。当

n→∞

时,区间必将最终收缩为一点x*

,显然x*就是所求的根。若取区间[an,bn

]的中点作为x*的近似值,则有下述误差估计式只要

n足够大,即区间二分次数足够多),误差就可足够小。由于在偶重根附近曲线y=f(x)为上凹或下凸,即f(a)

与f(b)

的符号相同,因此不能用二分法求偶重根.例2用二分法求例1中(1)方程的实根,要求误差不超过0.005。解由例1可知x*

(1,1.5),要想满足题意,即:|x*

-xn|≤0.005,则要由此解得取n=6。按二分法计算过程见下表。x6=1.3242为所求之近似根。nan

bn

xn

f(xn)01234561.01.251.251.31251.31251.31251.32031.51.51.3751.3751.34381.32811.32811.251.3751.31251.34381.32811.32031.3242-+-++

-

-(1)

f(a)<0,f(b)>0(2)

根据精度要求,取到小数点后四位即可.第二节迭代法一、迭代法的基本思想迭代法是一种重要的逐次逼近法,其基本思想是:将方程f(x)=0

化为等价方程然后在隔根区间内取一点x0

,按下式计算计算结果生成数列

x0

,x1

,

…,

xk,…

(2--4)如果这个数列有极限当(x)连续时,显然x*

就是方程x=(x)之根.于是可以从此数列中求得满足精度要求的近似根.这种求根方法称为迭代法,式(2-3)称为迭代格式,(x)

称为迭代函数,x0

称为迭代初值,数列(2-4)称为迭代序列。如果迭代序列收敛,则称迭代格式(2-3)收敛,否则称为发散。例3用迭代法求方程x4+2x2-x-3=0在区间[1,1.2]内的实根。

解对方程进行如下三种变形:分别按以上三种形式建立迭代格式,并取x0=1进行迭代计算,结果如下:准确根x*

=1.124123029,可见迭代格式不同,收敛情况也不同。第二种格式比第一种格式收敛快得多,而第三种格式不收敛。二、迭代法的收敛条件定理1设在[a,b]上存在,且满足条件:(1)当x∈[a,b]时,(2)存在正数L<1,使对任意的x∈[a,b],则(1)方程在[a,b]上有唯一根x*;(2)对任意迭代初值x0∈[a,b],迭代序列收敛于x*。证(1)先证方程之解存在且唯一.由于在[a,b]上存在,所以连续。作函数则

f(x)在[a,b]上连续。由条件(1)f(a)≤0,f(b)≥0,故存在x*∈[a,b],使

f(x*)=0,

即设方程还有一根则由微分中值定理及条件(2)有此式仅当才能成立,因此(2)再证迭代格式收敛任取x0∈[a,b],由微分中值定理,有反复用此不等式,并注意0<L<1,因此︱x*-xk︱≤Lk︱x*-x0︱→0(k→∞)即迭代过程收敛,且证毕。此定理在理论上十分重要,但是条件(1)却不容易判别。如果仅在根的邻域中考察迭代格式,则下述定理可避免条件(1)的判别。定理2若方程之根的某邻域内存在,且存在正常数

L<1,使则任取x0∈R,迭代格式均收敛于x*,且有下列误差估计式反之,若在根x*的邻域R内则迭代必发散。提示:定理的证明利用定理1以及微分中值定理。例如,例3中采用的三种迭代格式,在隔根区间(1,1.2)内,有令则称迭代格式是

p

阶收敛的.特别地,

p=1时称为线性收敛,

p=2

时称为二阶(平方)收敛,p>1时称为超线性收敛.显然,收敛阶越大,收敛越快.利用微分中值定理及泰勒展式可得下面的定理3.三、迭代法的收敛速度定理3设x*为之根,在x*的邻域R有连续的

p阶导数,则则迭代过程在x*

的邻近为线性收敛;则迭代过程在x*

的邻近为p阶收敛。内的三阶方法。假设

x0

充分靠近x*,求解由泰勒展式可得例4证明迭代公式

xk+1=xk(xk2+3a)/(3xk2+a)是求迭代格式称为埃特金(Aitken)外推法,可以证明,若为线性收敛,则埃特金法为平方四、加速迭代法收敛;若为p(p>1)阶收敛,的

p阶导数连续,则埃特金法为2p–1阶收敛。例5求方程x=e–x在x=

0.5附近的根.解取x0=0.5,迭代格式x25=x26=0.5671433若对此格式用埃特金法,则

得仍取x0=0.5,得由此可见,埃特金法加速收敛效果是相当显著的.第三节牛顿切线法一、牛顿法的基本思想设已知方程

f(x)=0的近似根x0,且在x0附近f(x)可用一阶泰勒多项式近似,表示为当f(x0)≠0时,方程f(x)=0可用线性方程近似代替,即f(x0)+f(x0)(x-

x0)=0解此线性方程得取此x作为原方程的新近似根x1,重复以上步骤,得迭代公式此式称为牛顿(Newton)迭代公式。二、牛顿法的几何意义若过曲线y=f(x)上的点P(xk,f(xk

))引切线,该切线与x轴交点的横坐标即为由牛顿迭代公式求得的xk+1,因此牛顿迭代法也称牛顿切线法。例6用牛顿迭代法求方程x=e–x在x=0.5附近的根。

解将原方程化为x–e

–x=0,则牛顿迭代格式为取x0=0.5,迭代得x1=0.566311,

x2=0.5671431,x3=0.5671433

f(x)=x–e

–x,f(x)=1+e

–x,三、牛顿迭代法的收敛速度由于f(x*)=0,所以当f(x*)≠0

时,牛顿迭代法的迭代函数为1、当x*为单根时,牛顿迭代法在根x*

的附近至少是二阶收敛的;2、当x*为重根时,设为m重根,则f(x)可表为f(x)=(x-x*)mg(x)其中g(x*)≠0,此时用牛顿迭代法求x*

仍然收敛,只是收敛速度将大大减慢。事实上,因为令ek=xk

–x*,则可见用牛顿法求方程的重根仅为线性收敛。有两种方法可以提高求重根的收敛速度:1)将求重根问题化为求单根问题,注意函数所以化为求u(x)=0的单根,是平方收敛的.格式为2)采用如下迭代格式3、计算重根的牛顿迭代法下面介绍一个求重数的方法,令则由式(2-13)可知因此可用下式估计m例8用牛顿迭代法求f(x)=(x-1)[sin(x-1)+3x]-x3+1=0

在0.95附近之根。解取x0=0.95,用牛顿迭代法式(2-10)求得的xk见右表可见xk收敛很慢。由重根数m为2用式(2-14)得x0=0.95x1=0.9988559x2=x3=1收敛速度大大加快于直接用牛顿迭代公式(2-10).k

xkk

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论