数值分析 非线性方程求根Q
数值分析实验五 非线性方程的求根1

数值分析实验五 非线性方程的求根组号 班级 学号 姓名 分数一:实验目的1、掌握用二分法解非线性方程的方法。
2、掌握用迭代法解非线性方程的方法。
3、掌握用牛顿法解非线性方程的方法。
4、学会运用Matlab 语言解决提供的函数求解实际问题。
二:实验内容所需的基本知识二分法的原理:设)(x f 在],[b a 上连续,且0)()(<⋅b f a f 。
则],[b a 为方程区间(设只有唯一根)。
取中点)(210b a x +=,检查)(a f 与)(0x f 是否同号,若同号,说明根*x 与b 之间,此时b b x a ==101,;若异号,说明根*x 在a 与0x 之间,此时011,x b a a ==,得新区间],[11b a 为原区间的一半。
对],[11b a 进行上述过程,取中点)(21111b a x +=,检查)(1a f 与)(1x f 是否同号,如此反复二分下去,即可得出一系列有根区间⊃⊃⊃],[],[],[2211b a b a b a …⊃⊃],[k k b a …,其中每个区间都是前一个区间的一半,因此],[k k b a 的长度k k k a b a b 2)(-=-,当∞→k 时趋于零,就是说,如果二分过程无限地继续下去,这些区间最终必收缩于一点*x ,该点显然就是所求的根。
迭代法原理:首先给定一个粗糙的初始值,然而用一个迭代公式反复校正这个初值,将已有近似根逐步精确化,一直到满足精度要求为止。
具体地,把方程0)(=x f 改写成x 的等价表达式)(x x ϕ=,若)(**x x ϕ=,称*x 为)(x ϕ的一个不动点,求)(x f 的零点就等价于求)(x ϕ的不动点。
任取一点0x 代入)(x ϕ求得 )(01x x ϕ= 又将1x 代入)(x ϕ求得)(12x x ϕ= 如此反复迭代下去一般地 )(1k k x x ϕ=+ k=0,1,2,………)(x ϕ称为迭代函数,)(x x ϕ=称为迭代公式。
数值分析第

数值分析第7章答案第七章非线性方程求根一、重点内容提要 (一)问题简介 求单变量函数方程()0f x = (7.1)的根是指求*x (实数或复数),使得(*)0f x =.称*x 为方程(7.1)的根,也称*x 为函数()f x 的零点.若()f x 可以分解为()(*)()mf x x xg x =- 其中m 为正整数,()g x 满足()0g x ≠,则*x 是方程(7.1)的根.当m=1时,称*x 为单根;当m>1时,称*x 为m 重根.若()g x 充分光滑,*x 是方程(7.1)的m 重根,则有(1)()(*)'(*)...(*)0,(*)0m m f x f x f x f x -====≠ 若()f x 在[a,b]上连续且()()0f a f b <,则方程(7.1)在(a,b)内至少有一个实根,称[a,b]为方程(7.1)的有根区间.有根区间可通过函数作图法或逐次搜索法求得. (二)方程求根的几种常用方法 1.二分法设()f x 在[a,b]上连续,()()0f a f b <,则()0f x =在(a,b)内有根*x .再设()0f x =在(a,b)内仅有一个根.令00,a a b b ==,计算0001()2x a b =+和0()f x .若0()0f x =则*x x =,结束计算;若00()()0f a f x >,则令10,1a x b b ==,得新的有根区间11[,]a b ;若00()()0f a f x <,则令10,10a ab x ==,得新的有根区间11[,]a b .0011[,][,]a b a b ⊂,11001()2b a b a -=-.再令1111()2x a b =+计算1()f x ,同上法得出新的有根区间22[,]a b ,如此反复进行,可得一有根区间套1100...[,][,]...[,]n n n n a b a b a b --⊂⊂⊂⊂且110011*,0,1,2,...,()...()22n n n n n n a x b n b a b a b a --<<=-=-==-. 故 1lim()0,lim lim ()*2n n n n n n n n b a x a b x →∞→∞→∞-==+= 因此,1()2n n n x a b =+可作为()0f x =的近似根,且有误差估计11|*|()2n n x x b a +-≤- (7.2)2.迭代法将方程式(7.1)等价变形为 ()x x ϕ= (7.3)若要求*x 满足(*)0f x =则*(*)x x ϕ=;反之亦然.称*x 为函数()x ϕ的一个不动点.求方程(7.1)的根等价于求()x ϕ的不动点由式(7.3)产生的不动点迭代关系式(也称简单迭代法)为1(),0,1,2...k k x x k ϕ+== (7.4)函数()x ϕ称为迭代函数.如果对任意1(),0,1,2...k k x x k ϕ+==,由式(7.4)产生的序列{}k x 有极限 lim *k k x x →∞= 则称不动点迭代法(7.4)收敛.定理7.1(不动点存在性定理)设()[,]x C a b ϕ∈满足以下两个条件: 1.对任意[,]x a b ∈有();a x b ϕ≤≤2.存在正常数1L <,使对任意,[,]x y a b ∈,都有|()()|||x y x y ϕϕ-≤- (7.5) 则()x ϕ在[,]a b 上存在惟一的不动点*x .定理7.2(不动点迭代法的全局收敛性定理)设()[,]x C a b ϕ∈满足定理7.1中的两个条件,则对任意0[,]x a b ∈,由(7.4)式得到的迭代序列{}k x 收敛.到()x ϕ的不动点,并有误差估计式1|*|||1k k k Lx x x x L --≤-- (7.6)和 1|*|||1kk k k L x x x x L --≤-- (7.7)定理7.3(不动点迭代法的局部收敛性定理)设*x 为()x ϕ的不动点,'()x ϕ在*x 的某个邻域连续,且|'()|1x ϕ<,则迭代法(7.4)局部收敛.收敛阶的概念 设迭代过程(7.4)收敛于方程()x x ϕ=的根*x ,如果迭代误差*k k e x x =-当k →∞时成产下列渐近关系式1(0)k k e C C e +→≠常数 (7.8)则称该迭代过程是p 阶收敛的.特别地,p=1时称线性收敛,p>1时称超线性收敛,p=2时称平方收敛.定理7.4(收敛阶定理)对于迭代过程(7.4),如果()()K x ϕ在所求根*x 的邻近连续,并且(1)()'(*)''(*)...(*)0(*)0p p x x x x ϕϕϕϕ-====≠ (7.9)则该迭代过程在点*x 的邻近是收敛的,并有()11lim(*)!p k p k ke x e p ϕ+→∞= (7.10)斯蒂芬森(Steffensen)迭代法 当不动点迭代法(7.4)只有线性收敛阶,甚至于不收敛时,可用斯蒂芬森迭代法进行加速.具体公式为21(),()()20,1,2,...k k k k k k k k k k ky x z y y x x x z y x k ϕϕ+==-=--+= (7.11)此法也可写成如下不动点迭代式12(),0,1,2,...(())()(())2()k k x x k x x x x x x x ψϕψϕϕϕ+==-=--+ (7.12) 定理7.5(斯蒂芬森迭代收敛定理) 设*x 为式(7.12)中()x ψ的不动点,则*x 是()x ϕ的不动点;设''()x ϕ存在,'(*)1x ϕ≠,则*x 是()x ψ的不动点,则斯蒂芬森迭代法(7.11)是2阶收敛的. 3.牛顿迭代法牛顿迭代法是一种特殊的不动点迭代法,其计算公式为其迭代函数为1(),0,1,2,...'()k k k k f x x x k f x +=-= (7.13)()()'()f x x x f x ϕ=-牛顿迭代法的收敛速度 当(*)0,'(*)0,''(*)0f x f x f x =≠≠时,容易证明,'(*)0f x ≠,''(*)''(*)0'(*)f x x f x ϕ=≠,由定理7.4知,牛顿迭代法是平方收敛的,且12''(*)lim2'(*)k k k e f x e f x +→∞=(7.14) 重根情形的牛顿迭代法 当*x 是()0f x =的m 重根(2)m ≥时,迭代函数()()'()f x x x f x ϕ=-在*x 处的导数1'(*)10x m ϕ=-≠,且|'(*)|1x ϕ<.所以牛顿迭代法求重根只是线性收敛.若*x 的重数m 知道,则迭代式1(),0,1,2,...'()k k k k f x x x mk f x +==-= (7.15)求重根二阶收敛.当m 未知时,*x 一定是函数()()'()f x x f x μ=的单重零点,此时迭代式1()()'()'()['()]()''()0,1,2,...k k k k k k k k k k x f x f x x x x x f x f x f x k μμ+=-=--= (7.16)也是二阶收敛的.简化牛顿法 如下迭代法10(),0,1,2,...'()k k k f x x x k f x +=-=称为简化牛顿法或平行弦法.牛顿下山法 为防止迭代不收敛,可采用牛顿下山法.具体方法见教材. 4.弦截法将牛顿迭代法(7.13)中的'()k f x 用()f x 在1k x -,k x处的一阶差商来代替,即可得弦截法111()()()()k k k k k k k f x x x x x f x f x ++-=--- (7.17)定理7.6假设()f x 在其零点*x 的邻域:|*|x x δ∆-≤内具有二阶连续导数,且对任意x ∈∆有'()0f x ≠,又初值01,x x ∈∆,,则当邻域∆充分小时,弦截法(7.17)将按阶1.618p =≈收敛到*x .这里p 是方程210λλ--=的正根.5.抛物线法弦截法可以理解为用过11(,()),(())k k k k x f x x f x ---两点的直线方程的根近似替()0f x =的根.若已知()0f x =的三个近似根k x ,1k x -,2k x -用过1122(,()),(,()),(,())k k k k k k x f x x f x x f x ----的抛物线方程的根近似代替()0f x =的根,所得的迭代法称为抛物线法,也称密勒(Muller)法. 当()f x 在*x 的邻近有三阶连续导数,'(*)0f x ≠,则抛物线法局部收敛,且收敛阶为 1.839 1.84p =≈.二、知识结构图10[1,2]1x x --=≤≤--∈3-3-6k k 32三、常考题型及典型题精解例7-1 证明方程x 在上有一个实根x*,并用二分法求这个根,要求|x -x*|10.若要求|x -x*|10,需二分区间[1,2]多少次?解 设f(x)=x ,则f(1)=-1<0,f(2)=5>0,故方程f(x)=0在[1,2]上有根x*.又因f'(x)=3x -1,所以当x [1,2]时,f'(x)>0,即f (x)=0在[1,2]上有惟一实根x*.用二分法计算结果如表7-1所示.表7-1k ka kb kx ()k f x 的符号0 1 2 31 1 1.25 1.252 1.5 1.51.3751.51.25 1.375 1.3125+ - + -610x e -≤≤⨯≤≤≤≤≥∈-3-39910-6k k k+101此时x =1.3253满足|x -x*|0.9771010,可以作为x*的近2似值.1 若要求|x -x*|,只需|x -x*|10即可,解得k+119.932,2即只需把[1,2]二分20次就能满足精度要求.例7-2 已知函数方程(x-2)=1,(1)确定有根区间[a,b];(2)构造不动点迭代公式使之对任意初始近似x [a,b],31|10.k x ---<k 迭代方法均收敛;(3)用所构造的公式计算根的近似值,要求|x1lim lim x x x x x e e e e →+∞→-∞∞∞∞∈解 (1)令f(x)=(x-2)-1,由于f(2)=-1<0,f(3)=-1>0,因此区间[2,3]是方程f(x)=0的一个有根区间.又因f'(x)=(x-1),f(x)=+,f(x)=-1,f'(1)=--1<0,当x>1时f(x)单增,x<1时f(x)单减,故f(x)=0在(-,+)内有且仅有一根x*,即x*[2,3].2'k k x x x x x x e e e e e e e ϕϕϕ-----∈∈≤≤≤∀∈k+100k+1(2)将(x-2)=1等价变形为x=2+,x [2,3].则(x)=2+.由于当x [2,3]时2(x)3,|(x)|=|-|<1故不动点迭代法x =2+,k=0,1,2,...,对x [2,3]均收敛.(3)取x =2.5,利用x =2+进行迭代计算,结果如表7-2所示.表7-24 2.120094976.73cos 3120cos c k x x x x ϕ≈=--+=∈≤4k+10-30k+1k+1k 此时x 已满足误差要求,即x*例 考虑求解方程2的迭代公式2x =4+,k=0,1,2,...3(1)试证:对任意初始近似x R,该方法收敛;(2)取x =4,求根的近似值x ,要求|x -x |10;(3)所给方法的收敛阶是多少?2解 (1)由迭代公式知,迭代函数(x)=4+3{}os ,(,).|'sin |1(,)x x x ϕϕϕ∈-∞+∞≤<-∞+∞∀∈0k 022由于(x)的值域介于(4-)与(4+)之间,且3322(x)|=|-33故根据定理7.1,7.2知,(x)在内存在惟一的不动点x*,且对x R,迭代公式得到的序列x 收敛于x*.(2) 取x =4,迭代计算结果如表7-3所示.表7-3此时5x 已满足误差要求,即5* 3.347529903x x ≈=(3)由于'(*)0.1363231290x ϕ≈≠,故根据定理7 .4知方法是线性收敛的,并且有1lim'(*)k k k e x e ϕ+→∞=。
数值分析实验报告——非线性方程求根

数值分析实验报告——非线性方程求根一、实验目的:1.掌握求解非线性方程的常用方法;2.了解非线性方程求根问题的数值解法;3.熟悉使用数值分析软件进行非线性方程求根的实现。
二、实验原理:非线性方程指的是形如f(x)=0的方程,其中f(x)是一个非线性函数。
非线性方程求根的常用方法包括二分法、割线法和牛顿法等。
其中,二分法是通过不断缩小区间范围来逼近方程的解;割线法是通过使用割线来逼近方程的解;牛顿法则是通过使用切线来逼近方程的解。
对于给定的非线性方程,可以根据实际情况选择合适的方法进行求根。
三、实验内容:1.编写求解非线性方程的函数,包括二分法、割线法和牛顿法;2.使用编写的函数求解给定的非线性方程,比较各个方法的收敛速度和精确程度;3.根据实际情况分析和选择合适的方法进行求根。
四、实验步骤:1.针对给定的非线性方程,编写二分法的函数实现:(1)首先确定方程的解存在的区间;(2)根据方程的解存在的区间,使用二分法逐步缩小区间范围;(3)根据设定的精度要求,不断循环迭代,直至满足要求或达到迭代次数限制;2.针对给定的非线性方程,编写割线法的函数实现:(1)首先需要确定方程的解存在的初始点;(2)根据方程的解存在的初始点,根据割线的定义进行迭代;(3)设定迭代的精度要求和限制次数,结束迭代;3.针对给定的非线性方程,编写牛顿法的函数实现:(1)首先需要确定方程的解存在的初始点;(2)根据方程的解存在的初始点,根据牛顿法的定义进行迭代;(3)设定迭代的精度要求和限制次数,结束迭代;4.根据给定的非线性方程,分别使用二分法、割线法和牛顿法进行求解,并比较各个方法的收敛速度和精确程度;5.分析实际情况,选择合适的方法进行求解。
五、实验结果:4.通过比较,发现割线法和牛顿法的收敛速度较快,精确程度较高,因此选择割线法进行求解。
六、实验总结:通过本次实验,我掌握了求解非线性方程的常用方法,并使用数值分析软件实现了二分法、割线法和牛顿法。
第七章 非线性方程求根

迭代的概念及简单迭代法
给 定 实 数 域 上 光 滑 的 实 值 函 数 ( x ) 及 初 值 x 0 ,定 义 数 列
x n 1 ( x n ) , n 0 ,1, ) 则 数 列 x n ( n 0 ,1, ) 称 为 ( ,
迭 代 函 数 (x) 的 迭 代 序 列 。 如 果 数 列 x n ( n 0 ,1, ) 满 足 lim x n x , 则 x 是 方
定 义 3 :给 定 非 线 性 方 程 f ( x ) 0 ,设 由 其 转 化 方 程
x (x) 而 得 的 迭 代 格 式
*
x n 1 ( x n ) 收 敛 到 方 程 的 根 x ,如 果 存 在 常 数 p 和 不 等 于 零 的 常 数 C 使 得 迭 代 误 差 e n x n x 满 足 lim
f ( a ( k 1) h ) 0 , 计 算 停 止 。 若
f ( a k h ) f ( a ( k 1) h ) 0 , 为 在 有 根 区 间 只 有 化
一 个 根 的 情 形 。若 f ( a k h ) f ( a ( k 1) h ) 0 ,令
( x 1 ) ( x 2 ) L x 1 x 2 ,其 中 L 是 与 x1 和 x 2 无 关 的 正 常 数 ,称 为
Lip s c h itz 常 数 ( 简 称 利 氏 常 数 ) ; ( 3) 利 氏 常 数 L 1 ; 则 迭 代 过 程 xn 1 ( xn ) 对 于 任 意 初 值 x0 [ a , b ] 均 收 敛 于 方 程
到计算停止。
7.3.3 迭代的加速
• 迭代加速的本质:使利氏常数尽量趋 于零。 • 1. 松弛法
数值分析 第7章 非线性方程求根综述

7.1.2 二分法
原理:若 f C[a, b],且 f (a) ·f (b) < 0,即两个端点值异号, 且f(x)在区间[a,b]上严格单调,则利用闭区间上 连续函数的性质,可知f(x)在 [a, b]上存在唯一的 零点,其几何意义如下图:
f(b) a x* f(a) b a x* f ( b) f(a)
满足此方程的解x, 称为方程的根, 也称x是函数f(x)的零点.
如果函数f(x)可以写成
f(x)=(x- x*)mg(x),其中g( x*) ≠0. 当m>1时,称x*为方程(1.1)的m重根或称x*是函数f(x)的m
重零点;
当m=1时,称x*为方程(1.1)的单根或称x*是函数f(x)的 单重零点.
b
一、二分法的具体计算过程
设
f C[a, b] ,现求方程f(x)=0在区间[a,b] 上的根.
设函数f(x)满足 f (a) f (b) 0, 不妨设 f (a) 0, f (b) 0.
ab , 计算区间中点的函数值 第一步: 取区间中点 2 ab ) 0, ①如果 f ( 2 f( ab ), 2
分离区间:许多方程往往有两个以上的根,在某个区间[a,b] 上,如果方程在此区间内只含一个根,我们称此区间为方程的 分离区间。 原理:若 f C[a, b],且 f (a) ·f (b) < 0,即两个端点值异号, 且f(x)在区间[a,b]上严格单调,则利用闭区间上 连续函数的性质,可知f(x)在 [a, b]上存在唯一的 零点,其几何意义如下图: 曲线y=f(x)与 f ( a ) f(b) x轴的交点就是 f(x)的零点.
数理学院
SCHOOL OF MATHEMATICS AND PHYSICS
数值计算课程设计报告(非线性方程求根)

数值计算方法课程设计报告课程设计名称:数值计算方法课程设计题目:非线性方程求根年级专业:组员姓名学号:指导教师:完成时间:非线性方程求根一、问题提出随着科学技术,生产力经济的发展,在科学与工程计算中存在着大量方程求根问题,例如贷款购房问题,工厂的最佳订货问题等都需要求解一类非线性方程的根,首先根据实际问题列出数学模型,确定变量,给出各个条件及相关函数;然后对建立的模型进行具体分析和研究,选择合适的求解方法;编写函数的程序,用计算机求出方程的解,通过所求解分析具体情况.求解非线性方程的问题有以下几种基本方法。
二分法简单易行,但收敛较慢,仅有线性收敛速度。
而且该方法不能用于求偶数重根或复根,但可以用来确定迭代法的初始值。
牛顿法是方程求根中常用的一种迭代方法,它除了具有简单迭代法的优点外,还具有二阶收敛速度(在单根邻近处)的特点,但牛顿法对初始值选取比较苛刻(必须充分靠近方程的根),否则牛顿法可能不收敛。
弦截法是牛顿法的一种修改,虽然比牛顿法收敛慢,但因它不需计算函数的导数,故有时宁可用弦截法而不用牛顿法,弦截法也要求初始值必须选取得充分靠近方程的根,否则也可能不收敛。
二、背景分析代数方程的求根问题是一个古老的数学问题。
理论上,n次代数方程在复数域内一定有 n个根(考虑重数)。
早在16世纪就找到了三次、四次方程的求根公式,但直到19世纪才证明大于等于5次的一般代数方程式不能用代数公式求解,而对于超越方程就复杂的多,如果有解,其解可能是一个或几个,也可能是无穷多个。
一般也不存在根的解析表达式。
因此需要研究数值方法求得满足一定精度要求的根的近似解。
牛顿迭代法是牛顿在17世纪提出的一种求解方程.多数方程不存在求根公式,从而求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要.而在各种科学和工程计算中往往要用到非线性方程组的求解,而牛顿法又是最基础的迭代法,在各种计算力学、控制工程等领域中发挥了不可代替的作用.而在数值计算中,非线性方程组的求解同样具有重要意义.随着计算机技术的成熟和高速发展,对于非线性方程求根问题出现了大量的数学软件(如MATLAB,SAS,SPSSD等),计算机已经成为工程师应用数学解决工程问题的主要运算工具.同时,工程专业的学生对数学教育的需求重点正在从手工演绎和运算能力的培养转变到结合计算机软件进行建模、求解和论证能力的培养.我们采用Matlab数学软件平台,通过实例比较了二分法、牛顿迭代法、弦截法三种基本方法的优缺点。
数值分析课件 第六章非线性方程求根

§3. Fixed-Point Iteration y p1 p0 y=x y=g(x) y p0 y=x
几个根?
• 哪儿有根?确定有根区间
• 根的精确化:已知一个根的近似值后,能否
将它精确到足够精度?
本章假设 f C[a, b],且 f (a) · (b) < 0,则 f 在 (a, b) f 上至少有一根,(a,b)即为有根区间。问题1、2得到解 决。
1. 逐步搜索法
§2 根的搜索
x0=a xk-1 x* xk b
第六章 非线性方程求根
/* Solutions of Nonlinear Equations */ §1 Introduction
科学技术中常遇到高次代数方程或超越方程 的求根问题。大于4次的代数方程无求根公式。 因此需要研究函数方程求根问题的数值方法。
求 f (x) = 0 的根或零点x*
求根问题包括下面三个问题: • 根的存在性:即f(x)=0有没有根?若有,有
③ 当k 时, xk 收敛到 x* ?
| x * x k | | g ( x *) g ( x k 1 ) | | g ( ξ k 1 ) | | x * x k 1 |
L | x * x k 1 | ...... L | x * x 0 | 0
说明:①迭代函数不唯一,②迭代点列可能收敛,也可 能发散,迭代收敛与否不仅与迭代函数有关,还与初 始点有关。
数值分析课件第二章_非线性方程求根

| xn x || ( xn 1 ) ( x ) |
* *
| ( ) || xn 1 x* |
*
| xn x | L | xn1 x | | xn x | L | x0 x |
* n *
lim | xn x | lim L | x0 x | 0
x*即为不动点。
不动点存在的唯一性证明:
设有 x1*≠ x2*, 使得
* 1 * 2 * 1
(x ) x
* 1
* 1
(x ) x
* 2
* 2
* * 则 | x x || ( x ) ( x ) || ( ) || x1 x2 | * 2
其中,ξ介于 x1* 和 x2* 之间。
由于
计法
Ln xn x * x1 x0 1 L
很难估计,采用事后估
| xn x* |
1 | xn 1 xn || xn 1 xn | ,L大误差大。 1 L
不动点迭代法可以求方程的复根和偶数重根。
例 用不同方法求 x 2 3 0 在x=2附近的根。 解: 格式(1)
则对任意x0 [a, b],由xn+1=(xn )得到的迭代序 列{xn }收敛到(x)的不动点x *,并有误差估计:
1 | xn x | | xn 1 xn | 1 L
*
L xn x * x1 x0 1 L
n
证明:
xn ( xn1 ) * * x ( x )
x0
O
x1
x3 x * x2
x0
y ( x)
发散
y ( x)
O
非线性方程的数值解法

xk
x* ) p
根据已知条件得
(xk ) (x*)
1
p!
(
p
)
(
)(
xk
x*) p
由迭代公式 xk1 (xk ) 及 x* (x* ) 有
x k 1
x*
( p) ( )
p! (xk
x*) p
lim ek1 ( p) (x* ) 0
取一个初值 x0 , 代入式 x (x) 的右端, 得到
x1 (x0 )
再将 x1 代入式 x (x) 的右端, 得到 x2 (x1) , 依此类推, 得到一个数列 x3 (x2 ) …, 其一般表示
xk1 (xk ) (k 0,1,2,) (2.4)
2.3.1 迭代法的基本思想
为求解非线性方程f(x)=0的根,先将其写成便
于迭代的等价方程
x (x)
其中 (x) 为x的连续函数
(2.3)
例4 用迭代法求方程 x3 x 1 0
在x=1.5附近的一个根 解 将方程改写成如下两种等价形式
x 1 (x ) 3 x 1 x 2 (x ) x3 1
x6、x7重合,所以迭代公式(1)是收敛的,x*≈0.3758。 用迭代公式(2) xk1 10xk 2 , x0=1, 算得
x1=10-2=8, x2=108-2≈108, x3=10108-2≈ 10108,…… 迭代公式(2)发散。
}
2.3.3 迭代法收敛的条件 对方程f(x)=0可以构造不同的迭代公式, 但
证:由于 (x*) 1 ,存在充分小邻域△: x x* ,使成 立 (x* ) L 1 这里L为某个定数,根据微分中值定 理 (x) (x* ) ( )( x x* ) 由于 (x* ) x*,又当 x 时 ,故有 (x) x* L x x* x x* 由定理2.1知 xk1 (xk ) 对于任意的 x0 都收敛
数值分析(本科)非线性方程求解

������ ������
������ ,
������ ������
且������ ������∗ ≠ ������
则称������∗ 是非线性方程������ ������ = ������的������重根,������ = ������时也称单根。
������������ 0.0000
0.5000 0.5000 0.6250 0.6875 0.6875
������������ 1.0000
1.0000 0.7500 0.7500 0.7500 0.7188
������(������������ ) -1.0000
-0.3445 -0.3445 -0.1239 -0.0041 -0.0041
三、二分法
几何解释
三、二分法
几何解释
三、二分法
几何解释
三、二分法
几何解释
三、二分法
考虑非线性方程������ ������ = ������,利用中值定理,可得到如下算法: 假设函数������ ������ 在 ������������ , ������������ 连续,且������(������������ )与������(������������ )异号, 则 ������������ , ������������ 为该方程的有根区间; 取区间 ������������ , ������������ 的中点������������ =
一、非线性方程的数值解法
问题:求解非线性方程 ������ ������ = ������ (*)
若������ ������∗ = ������,称������∗ 是������ ������ = ������的根或������的零点。
数值分析非线性方程求根

(1.3)
x xk
1 2k 1
(b
a)
(1.3)
对于确定的精度ε,从式(1.3)易求得需要二等分
的次数k。
二分法具有简单和易操作的优点。其计算步骤如
下,框图如图7.2所示。
• 1.计算步骤
• ①输入有根区间的端点a,b及预先给定的 精度ε;
• ②(a+b)/2 x;
• ③若f(a)f(x)<0,则x=b,转向④;否则x=a,转 向④。
由于f(1)<0,f(1.25)<0,则令
a1=1.25, b1=1.5 得到新的有根区间(1.25,1.5)
如此重复二分下去,二分法的计算结果如下表
取x6=1.3242,误差限| x6-x*|<0.5/(2^7)<0.005,故x6即为所求近
似根,实际上根x*=1.324717…
二分法优点:计算简单,收敛性有保 证;
• 设函数f(x)在区间[a,b]上单调连续,且
•
f(a)·f(b)<0
•
则 方 程 (1.1) 在 区 间 (a,b) 内 有 且 仅 有
一个实根x。
二、二分法
二分法简述.
如那图么否若(输f则a出()aax)10与设,停ffa((,止axb10).)同假fx(号0b若.),不则0然,取a,1 x0
x1=2.375 x2=12.3976
这种不收敛的迭代过程称作是发散的。如下图:
二、不动点的存在性与迭代法的收敛性
定 理 1 如果迭代函数 (x) C[a,b] , 并且 (1) x [a,b], 都有(x) [a,b],
图 7.1
• 这样,我们总可以假设方程(1.1)在(a,b) 内有且仅有一个单实根x*。由连续函数 的介值定理知
【免费下载】非线性方程求根的数值算法分析

对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
数值计算chapter2 非线性方程求根

序 由实变量 x 的非线性函数 f ( x )形成的方程 f (x) = 0
二分法的广泛应用 猜数字游戏,看谁先猜中: 猜数字游戏,看谁先猜中:
• 从1~1000这1000个自然数随机抽出1个 个自然数随机抽出1 ~ 这 个自然数随机抽出 谁能根据提示“大了”“ ”“小 数,谁能根据提示“大了”“小 ”“对了 先猜出这个数? 对了” 了”“对了”先猜出这个数? 10次以内能猜出吗 ? 次以内能猜出吗
x2 f ( x ) = sin x与 f ( x ) = 除原点外只有 4 一个交点, 一个交点, 之间, 横坐标介于 1.5 与 2之间,
o
π
2
x
∗
π
x
故方程只有一个非零实根 x ∗ ∈ [1.5 ,2] . 2 − 1 .5 由 k +1 ≤ 10 − 2 用二分法计算结果如下表: k = 5 用二分法计算结果如下表: 2
12
且 从表中可以看出, 迭代序列是收敛的, x10 = 1.89328920 从表中可以看出, 迭代序列是收敛的, 是方程根的一个较好的近似值。 是方程根的一个较好的近似值。
若取初值 x0 = 1.9 , 计算结果图像(MATLAB) 计算结果图像( )
注:该方程的3个根 该方程的 个根 1.89328919630450 -0.94664459815225 + 0.82970355286240i (复数根) -0.94664459815225 - 0.82970355286240i (复数根)
第二章 非线性方程求根
称为非线性方程。 称为非线性方程。若有数 x ∗,使 f (x ∗ ) = 0, x ∗ 称为 f ( x ) = 0 的根, 非线性方程 则 零点。 实根和 之分。 或称为方程的零点 方程的根有实根 复根之分 或称为方程的零点。方程的根有实根和复根之分。 一般的,非线性方程的根很难求得,实际应用中, 一般的,非线性方程的根很难求得,实际应用中,也无必要得 到根的精确表达式,只要得到满足一定精度的根的近似值即可。 到根的精确表达式,只要得到满足一定精度的根的近似值即可。 求方程根的近似值,需要解决的问题: 求方程根的近似值,需要解决的问题: 方程有无根,有几个; ⑴ 根的存在性 方程有无根,有几个; 找出有根区间, ⑵ 根的隔离 找出有根区间,使得在一些较小的区间内方程仅 有一个根,以得到根的较粗糙的近似值; 有一个根,以得到根的较粗糙的近似值; 利用合适的数值计算方法,逐步把根精确化, ⑶ 根的精确化 利用合适的数值计算方法,逐步把根精确化, 直至满足精度为止。 直至满足精度为止。
数值分析课件 非线性方程的迭代解法方程求根

k
解: 改写为以下两种等价方程 0
方法1 1.5
方法2 1.5
(1)x x3 1, (2)x 3 x 1 1 2.375 1.35721
建立迭代公式:(1)xk 1
x
3 k
1;
2
(2)xk 1 3 xk 1
3
4
各步迭代结果如下:
5
12.39
1.33086 1.32588 1.32494 1.32476
定义:迭代公式 xk+1= g(xk) (k= 0,1, …) 被称为求
解方程 f(x)=0 的简单迭代法(不动点迭代法), 其中g(x)称为迭代函数。
注:上述迭代法是一种逐次逼近法,其基本思想是 将隐式方程归结为一组显示的计算公式,就是说, 迭代过程是一个逐步显示化过程。
例:
求方程 f (x) x3 x 1 0 在x0 1.5 附近的根。
求 g(x) 不动点的过程
找s,使得s = g(s).
从一个初值 x0 出发,计算
x1= g(x0), x2= g(x1), … , xk+1= g(xk), …
若
{
xk
}
收敛,即存在实数
s
使得
lim
k
xk
s且
g(x)
连续,
则由
lim
k
xk
1
lim g k
xk
可知 s=g(s), 即 s是 g 的不动点, 它也是 f 的零点.
二分法求根思想
找有根区间序列(ak , bk); 用(ak , bk)的中点近似根.
二分法:
设一元非线性函数 f (x) 在 (a, b) 内只有一个 零点s , 用二分法求f (x)=0实根的过程如下:
数值分析- 非线性方程求根

( x *) 0,
( p)
( x *) 0 ,
x * 附近是 p 阶收敛的 .
特别地,当
0 | ( x *) | 1时 , 迭代法线性收敛
;
当 ( x *) 0 , ( x *) 0时 , 平方收敛 .
§3
迭代收敛的加速方法
由迭代公式校正一次得
x 0 [ a , b ], 迭代序列 (2.2) 均收敛于 x *, L
k
1 L 1 1 L
| x1 x 0 |, | x k 1 x k | .
在 [1,2] 内考查如下迭代法的敛 1) x k 1
3 3 k
散性:
x k 1 ; 2) x k 1 x 1 .
• • •
设函数f(x)在区间[a,b]上单调连续,且 f(a)·f(b)<0 则方程(1.1)在区间(a,b)内有且仅有 一个实根x。
二、二分法
二分法简述.
设 f ( a ) f ( b ) 0 , 取 x 0 ( a b ) / 2 . 假如 f ( x 0 ) 是 f ( x )的零点, 那么输出 x 0 , 停止 . 假若不然, 若 f ( a ) 与 f ( x 0 )同号,则 a1 x 0 , b1 b ; 否则 a1 a , b1 x 0 .
一、埃特金加速收敛方法
对于收敛的迭代过程, x1 ( x 0 ),
再校正一次得 x 2 ( x1 ).
如果 ( x ) 变化不大 , ( x ) L , 则
x1 x * ( x 0 ) ( x *) L ( x 0 - x *), x 2 x * ( x1 ) ( x *) L ( x1 - x *).
数值分析课件第07章非线性方程求根

值分析
例题 用Newton法求方程
解
因为
在0.5附近的根。 ,故迭代格式为
取初值
,经迭代演算,得到前四次的近似根为
值分析
Newton法的应用 对于给定的正数C,应用Newton法解二次方程
因为 故得求
的近似值的迭代格式
例题 计算
解 凡是迭代算法,初值的选取都会影响到收敛速度。
数值分析课件第07章非线性 方程求根
值分析
第7章 非线性方程求根
§求根的基本问题及分析方法 §迭代法 §Newton法 §弦截法与抛物线法
值分析
7.1 求根的基本问题及分析方法
方程的求根大致包括3个基本问题: 根的存在性 方程有没有根?有的话,有几个? 根的隔离 求出几个互不相交的区间,使每个区间中只有一个根。 根的精确化 在求出精度不高的近似根的基础上,逐步将根精确化, 直到满足预先要求的精度为止。
缩小,使根进一步精确化。
设
,且
,则可判定
。
不妨设
,且
。我们从左端开始,按预先选定的步长h
,一步一步地向右边走,每走一步检查一下终点的函数值是否取正号。
如果
,则表明根
。
如果精度不够,可将
看成 [a, b]再次进行搜索,并从左端点开始
向右搜索,直到满足精度为止。
在具体实施中,步长的选择是个关键,步长较小时精度高,但搜索次数
例对
求根的基本问题及分析方法
之根进行隔离。
解 显然,
,由
得驻点
。
因
故
分别
为 极大值和极小值。
从而
内各有一个实根。
由 y=f(x) 的草图可以直观地看到这点。
10_数值分析非线性方程求根Q

• 条件(1),(2)可保证 f (x) 在[a, b]内有唯一的根,再用
(3)可得迭代序列{ xk } 单调收敛于 s .
• 至少平方收敛 用定理4.6可得.
例3 用牛顿法求方程 x -lnx = 2 在区间(2, ∞)内
的根.
解: 在例1中,已经分析此方程在(2, ∞)内仅有一个
根 s, 且 s 在 (2,4) 内. 因为,
s x f ( s ) k 1 l i m . 2 k ( s x 2f ( s ) k)
证 牛顿法(4.7) 的迭代函数 g(x) 为
f ( x ) f ( x )( f x ) g ( xx ) ,g ( x ) g ( s )0 . 2 ) fx ( ) [( fx ]
根唯 一 有根
大范围收敛性 定理
则牛顿法产生的序列{ xk } 单调收敛到 f (x) 在 [a, b] 的唯一根 s, 且至少是平方收敛.
用定理4.6 可得.
产生的序列单调有 界,保证收敛。
定理4.7证明 牛顿法的迭代函数为
g( x) x f ( x) , f ( x)
f ( s )f( s ) g ( s ) 0 1 . 2 f ( s )
s 是 f '(x) 的 m- 1 重根, f (x)∈C m[s-, s + ],得
f(x )
f ( 1 2) (x s )m , ( m 1 )!
(m )
) f (m ( 2 3) f (x ) (xs )m . (m 2 )!
1, 2, 3 在 x 与 s 之间.
0, x s u ( x) f ( x) f ( x ) , x s