《数值分析-lec1011-非线性方程的迭代解法教学案例》由会员分享,可在线阅读,更多相关《数值分析-lec1011-非线性方程的迭代解法教学案例(36页珍藏版)》请在金锄头文库上搜索。
1、朱立永,北京航空航天大学 数学与系统科学学院,数值分析,Email: numerical_ Password:beihang 答疑时间:星期四下午2:305:30 答疑地点:主216,第十讲非线性方程的迭代解法,第三章非线性方程与非线性方程组的迭代解法,这一部分的主要任务是解,其中f(x)是一个一元非线性函数。,求根问题包括下面三个问题: 根的存在性:即f(x)=0有没有根?若有, 有几个根? 哪儿有根?确定有根区间 根的近似求解,常用的求非线性方程根的方法,二分法(对分法、搜索法) 不动点法 (简单迭代法、压缩映象法)及其加速算法 Newton方法及其变体,根,重根的定义:,根:如果存在常数
2、s,使得 f(s)=0则称s是f(x)=0的根(零点); 重根:如果 , 称s为m重根。特别地对 f(x) 是多项式,则有 其中 。,二分法(对分法),理论依据:设函数 f(x)Ca,b, f(a)f(b)0,则 f(x)在区间a,b上有一实根s使 f(s)=0。 二分法工作原理:每次把半分根所在的区间ak, bk分成两个等长的子区间ak, 0.5(ak+ bk) 和 0.5(ak+ bk) ,bk,并剔除根所不在的区间,直至根所在的区间变得充分小!即|bk-ak|。,算法: 1.令a0=a, b0=b, 给定绝对误差限和最大迭代次数N;计算f(a)和f(b)的值.如果f(a)f(b)0,运算
3、停止,输出计算失败。如果|f(a)| 而且kN, 输出计算失败,停止计算。,简单迭代法及其收敛速度,迭代法的构想,从一个初值x0出发,计算,如果 xk收敛,即存在x*, 使得,则由,得,即 x*是 (x)的不动点,也就是 f(x) 的根。,问题: xk 收敛吗?怎样实现(x),简单迭代法的收敛速度,Steffensen加速收敛方法,Newton 迭代法,非线性问题的最简单解法是线性近似. 将非线性方程线性化,以线性方程的解逐步逼 近非线性方程的解,这就是Newton法的基本思想.,Newton 法的几何解释,Newton法具有收敛快,稳定性好,精度高等优点,是求解非线性方程的有效方法之一。但它
4、每次迭代均需计算函数值与导数值,故计算量较大。而且当导数值提供有困难时, Newton法无法进行。,Newton迭代法,有前面的直观我们知道,构造的(x)如果在s点导数为零的次数越高,迭代法收敛阶越高。那么我们来构造(x)使其在s点的导数为零。,f(x)为已知,来构造(x), 并保证s满足s=(s), 同时f(s)=0, 现令(x)=x+h(x)f(x) , h(x)为待定函数,并且满足h(x)0。,求方程m重根的Newton迭代法,Newton迭代法降为一阶!,改进办法一,为二阶收敛,改进办法二,此方法不管根的阶数,收敛精度至少二阶!,割线法,Newton迭代法需要计算f(x)的一阶导数,对
5、复杂的函数,特别是多元隐函数,求导数或偏导数是一个相对繁琐和复杂的,往往采用近似计算的办法!,在Newton迭代法中用,来近似f(x)在xk处的一阶导数,由此得到的算法叫割线法。,31,割线法的几何表示,x0,X,x*,x1 x2 x3,Y,f(x)0,P0,P2,P1,割线法的收敛性,引理:设f(s)=0,在 s 的某领域 s- , s+ 内 f(x) 连续,f(x)0,又设 xk-1,xks-, s+ 且 xk-1, xk, s 互异,记 ek=s-xk, 则有,其中 xk1 是由割线法产生,k, k 在 min(xk-1, xk, s) 与 max(xk-1, xk, s) 之间。,定理:设 f(s)=0,在 s 的某领域 I= s- , s+ 内 f(x) 连续,f(x)0,则存在0,当 x-1, x0I时,则由割线法产生的序列 xk 收敛于 s ,且收敛速度的阶至少为 1.618。,单点割线法,35,抛物线法,36,抛物线法计算公式,作业,课后习题1、2、4、5、7、9,