1 / 34

数值分析 第三章 非线性方程的数值解法

数值分析 第三章 非线性方程的数值解法. 数学与统计学院. 简介( Introduction). 我们知道在实际应用中有许多非线性方程的例子,例如 (1)在光的衍射理论( the theory of diffraction of light) 中,我们需要求 x-tanx=0 的根 (2)在行星轨道( planetary orbits) 的计算中,对任意的 a 和 b, 我们需要求 x-asinx=b 的根 (3) 在数学中,需要求 n 次多项式 x n + a 1 x n-1 +...+ a n-1 x + a n =0 的根. 求 f(x)=0 的根.

kiet
Download Presentation

数值分析 第三章 非线性方程的数值解法

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数值分析第三章 非线性方程的数值解法 数学与统计学院

  2. 简介(Introduction) • 我们知道在实际应用中有许多非线性方程的例子,例如 • (1)在光的衍射理论(the theory of diffraction of light)中,我们需要求x-tanx=0的根 • (2)在行星轨道( planetary orbits)的计算中,对任意的a和b,我们需要求x-asinx=b的根 • (3) 在数学中,需要求n次多项式xn + a1xn-1+...+an-1 x + an=0的根 求f(x)=0的根

  3. §3.1 对分区间法 (Bisection Method ) 原理:若 f(x)C[a, b],且 f (a) · f (b) < 0,则f(x)在 (a, b) 上必有一根。

  4. a b 停机条件(termination condition ): a2 a1 x1 x* b1 x2 b2

  5. 误差 分析: 第1步产生的 有误差 第 k 步产生的 xk 有误差 对于给定的精度  ,可估计二分法所需的步数 k :

  6. 例1 用二分法求 在(1,2)内的根,要求绝对误差不超过 解: f(1)=-5<0 有根区间中点 f(2)=14>0 -(1,2)+ f(1.25)<0 (1.25,1.5) f(1.375)>0 (1.25,1.375) f(1.313)<0 (1.313,1.375) f(1.344)<0 (1.344,1.375) f(1.360)<0 (1.360,1.375) f(1.368)>0 (1.360,1.368) f(1.5)>0 (1,1.5)

  7. 例2,求方程f(x)= x 3 –e-x =0的一个实根。 因为 f(0)<0,f(1)>0。 故f(x)在(0,1)内有根 用二分法解之,(a,b)=(0,1)’计算结果如表: k a bk xk f(xk)符号 0 0 1 0.5000 - 1 0.5000 - 0.7500 - 2 0.7500 - 0.8750 + 3 - 0.8750 0.8125 + 4 - 0.8125 0.7812 + 5 - 0.7812 0.7656 - 6 0.7656 - 0.7734 + 7 - 0.7734 0.7695 - 8 0.7695 - 0.7714 - 9 0.7714 - 0.7724 - 10 0.7724 - 0.7729 + 取x10=0.7729,误差为| x* -x10|<=1/211 。 12

  8. Remark1:求奇数个根 Find solutions to the equation on the intervals [0, 4],Use the bisection method to compute a solution with an accuracy of 10-7. Determine the number of iterations to use..

  9. [0,1], [1.5, 2.5] and [3,4], 利用前面的公式可计算 迭代次数为k=23.

  10. Remark2:要区别根与奇异点 Consider f(x) = tan(x) on the interval (0,3).Use the 20 iterations of the bisection method and see what happens. Explain the results that you obtained.(如下图)

  11. Remark3:二分发不能用来求重根

  12. §3.2 单个方程的迭代法 等价变换 f (x) = 0 x = g (x) f (x) 的根 g (x) 的不动点 f(x)=0化为等价方程x=g(x)的方式是不唯一的,有的收敛,有的发散 For example:2x3-x-1=0

  13. (1)如果将原方程化为等价方程 取初值 由此可见,这种迭代格式是发散的

  14. (2) 如果将原方程化为等价方程 仍取初值 依此类推,得 x3 = 0.9940 x4 = 0.9990 x5 = 0.9998 x6 = 1.0000 x7 = 1.0000 同样的方程 ⇒ 不同的迭代格式 有不同的结果 什么形式的迭代法能够收敛呢? 已经收敛,故原方程的解为 x = 1.0000

  15. 收敛性分析 定义2若存在常数(0≤ <1),使得对一切x1,x2∈[a,b], 成立不等式 |g(x1)-g(x2)|≤  |x1-x2|, (5) 则称g(x)是[a,b]上的一个压缩映射, 称为压缩系数

  16. 定理3.2.1 考虑方程 x = g(x), g(x)C[a, b], 若 ( I ) 当 x[a, b] 时, g(x)[a, b]; ( II )在[a,b]上成立不等式:|g(x1)-g(x2)|≤  |x1-x2|。 则(1)g在[a,b]上存在惟一不动点x* (2)任取 x0[a, b],由 xk+1 = g(xk) 得到的序列 {xk}([a,b】) 收敛于x*。 (3)k次迭代所得到的近似不动点xk与精确不动点x*有有误差估计式:

  17. §3 Fixed-Point Iteration 证明:① g(x) 在[a, b]上存在不动点? 令G(x)=g(x)-x, x∈[a,b],由条件①知G(a)=g(a)-a≥0, G(b)=g(b)-b≤0. 由条件②知G(x)在[a,b]上连续,又由介值定理知 存在x*∈[a,b],使G(x*)=0,即x*=g(x*).  ② 不动点唯一? 若有x′∈[a,b],满足g(x′)=x′,则 |x*-x′|=|g(x*)-g(x′)|≤  |x*-x′|. 因0≤ <1,故必有 x′=x*  ③ 当k  时,xk 收敛到 x* ? |xk-x*|=|g(xk-1)-g(x*)|≤  |x k-1-x*| ≤ 2|xk-2-x*| ≤… ≤ k|x0-x*|0, 

  18. §3 Fixed-Point Iteration 可用 来控制收敛精度 (4) |xk-x*|=|g(xk-1)-g(x*)|≤  |x k-1-x*| ≤  (|xk-xk-1|+|xk-x*|), 故有 |xk-x*| ≤ /(1-)|xk-xk-1|. 这就证明了估计式(6).  (5) |xk-xk-1|= |g(xk-1)-g(xk-2)| ≤  |x k-1-xk-2|≤…≤ k-1|x1-x0| 联系估计式(6)可得  |xk-x*| ≤ k-1/(1-)|x1-x0|. 即估计式(7)成立  越小,收敛越快

  19. Remark: 定理条件非必要条件,而且定理3.2.1中的压缩条件不好验证,一般来讲, 若知道迭代函数g(x)∈C1『a,b],并且满足|g′(x)|≤  ≤1,对任意的x∈[a,b], 则g(x)是[a,b]上的压缩映射

  20. 例题 • 已知方程2x-7-lgx=0,求方程的含根区间,考查用迭代法解此方程的收敛性。

  21. 在这里我们考查在区间[3.5,4]的迭代法的收敛性在这里我们考查在区间[3.5,4]的迭代法的收敛性 • 很容易验证:f(3.5)<0,f(4)>0 • 将方程变形成等价形式:x=(lgx+7)/2 由定理3.2.1知,迭代格式xk+1=(lgxk+7)/2 在[3.5,4]内收敛

  22. 局部收敛性定理 定理3.2.2设x*为g的不动点,g(x)与g′(x)在包含x*的某邻域U(x*) (即开区间)内连续,且|g′(x*)|<1,则存在>0,当x0∈[x* -  ,x*+ ]时,迭代法(3)产生的序列{xk} [x* -  ,x*+ ]且收敛于x*. 证明略(作为练习) We don’t know x*,how do we estimate the inequality?

  23. 举例 用一般迭代法求x3-x-1=0的正实根x* 容易得到:g′(x)在包含x*的某邻域U(x*) 内 连续,且|g′(x*)|<1

  24. 例题 用一般迭代法求方程x-lnx=2在区间(2,)内的根,要求|xk-xk-1|/|xk|<=10-8 解:令f(x)=x-lnx-2 f(2)<0,f(4)>0,故方程在(2,4)内至少有一个根

  25. 将方程化为等价方程:x=2+lnx 因此, x0(2,),xk+1=2+lnxk产生的序列 xk 收敛于X* 取初值x0=3.0,计算结果如下:

  26. 7 3.146143611 8 3.146177452 9 3.146188209 10 3.146191628 11 3.146192714 12 3.146193060 13 3.146193169 14 3.146193204 k xi 0 3.000000000 1 3.098612289 2 3.130954362 3 3.141337866 4 3.144648781 5 3.145702209 6 3.146037143

  27. 另一种迭代格式: 0 3.000000000 1 3.147918433 2 3.146193441 3 3.146193221

  28. 程序演示 由此可见,对同一个非线性方程的迭代格式,在收敛的情形下,有的收敛快,有的收敛慢。

  29. 迭代法的收敛阶(收敛速度) 定义1. :设序列{xk}收敛于x*,若存在p≥1和正数c, 使得成立 则称{xk}为 p 阶收敛的 特别, p = 1,要求c<1, 称线性收敛; 1<p<2,称超线性收敛 p=2,称平方收敛。

  30. 定理3.2.3 • 设x*为g的不动点,p≥2为正整数,g在x*的某邻域U(x*)内p阶连续可微,且 • g′(x*)=g″(x*)=…=g (p-1)(x*)=0,而g(p)(x*)≠0, • 则存在>0,当x0∈ [x* -  ,x*+ ] (x0≠x*)时,由迭代法(3)产生的序列{xk}以p阶收敛速度收敛于x*.

  31. Prove: • (1)由g′(x*)=0必存在>0,当x0∈ [x* -  ,x*+ ] U(x)时,由迭代格式(3)产生的序列{xk}收敛于x*,并有xk∈ [x* -  ,x*+ ] • (2)由泰勒公式有xk+1=g(xk)=g(x* )+g′(x*)(xk- x*)+…+g (p-1) (x*)(xk-x*) p-1/(p-1)! + g (p)(x*+ (xk-x*))(xk-x*) p /p! ,0<<1.  • 利用g在x*的各阶导数条件及g(x*)=x*,上式可改写成 (11)

  32. (3)由于g在x*处p阶连续可微且g(p)(x*)≠0,知必存在x*的某邻域U(x*),当x∈U(x*)时,有g (p) (x)≠0. • 由于x*+ (xk-x*) ∈ [x* -  ,x*+ ] U(x*),故 • g (p)(x*+ (xk-x*)) ≠0,k=0,1,2,…. • 可见,当初值x0≠x*时,由(11)式可推出诸xk≠x* • 于是由(11)式有 • 上式令k→∞取极限. 即{xk}有p阶收敛速度.

  33. 作业(homework) P159:第二题 P160:第三题

More Related