非线性方程的数值解法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第K步:取[ak1 , bk1 ]的中点xk,记为[ak , bk ]
; 根据精度终止计算。
2。收敛性
每次对分含根区间,依次得到一个数列:
x1 , x2 , , xk ,
且有
lim
k
x
k
x
(bk , ak ) (bk1 , ak1 ) (b0 a0 )
1
1
1
bk ak 2 (bk1 ak1 ) 22 (bk2 ak2 ) 2k (b0 a0 )
那么, 对 x [a, b], xk1 g( xk )的解序列{ xk }收敛于 x* .
命题2.2 若在区间 [a,b] 内 g[x] 1 ,则对任
何 x0 [a,b],迭代格式 xk1 g(xk ) 不收敛。
证明 f ( x) x3 2x 5 0 x [2,3]
x k 1
xk3 Baidu Nhomakorabea 2
发散
xk1 3 2xk 5 收敛
g(x) x3 5 , 2
g(x) 3 2x 5
易知在 x > 0时 g(x) 单调增,
由 g'( x) 3 x 2 知, 2
在[2,3] 内 | g'( x) | 1
故有2 < g(2) < g(x) < g(3) < 3
又由g(x) 2
1
0
3 3 (2x 5)2
2.1 二分法(对分法)
一、根的隔离
将含根区间一个个隔开,找到根的范围,使每 个区间只有一个根。
1。利用零点存在定理
定理:对f(x)=0,f(x)在[a,b]上连续,f(a)f(b)<0且f(x) 严格单调上升(或严格单调下降),则f(x)在 [a,b]内仅有一根。
2。搜索法:
若 已 知(a, b)内 存 在f ( x) 0的 一 根 , 则 从 x0 a出 发 , 取 步 长h 0, 若f (a) f (a h) f ( x0 ) f ( x0 h) 0,
初始值x0 0.5
xk1 e xk 收 敛,
k xk
0 0.5 1 0.60653 2 0.54524 3 0.57970 4 0.56006 5 0.57117
k xk
6 0.56486 7 0.56844 8 0.56641 9 0.56756 10 0.56691
x10 x9 103
若f ( x1 ) f (a0 ) 0, 则取a1 a0 , b1 x1
x1
a0
2
b0
若f ( x1 ) f (b0) 0,则取a1 x1,b1 b0
新的含根区间[a1 , b1 ]
第 二步 : 取 (a1 , b1 )的 中点
x2
a1
2
b1
重 复上 述 过程 [a2 , b2 ]
在取间内单调减得
所以该迭代格式在内 不收敛,不可取。
0 g(x) g(2) 2 1 93 3
故由定理2.2得:任取 x0 [2,3] , 该迭代格式收敛。
三、 迭代法的误差估计
对给定的精度 | xk x* | 可进行
(1) 事前误差估计
K
|
1 ln L
ln | |
x1 x0 1 L
缺点:不能直接用于求偶重根,不能用于求复 根,也难以向方程组推广使用,收敛速 度慢。
2.2 一般迭代法 一 迭代法的算法思想
对 f (x) 0
(1)
迭代法的算法思想为:
(A) 把(1)等价变换为如下形式
x g(x)
(2)
当 x g( x ) , x* 称为 g( x) 的不动点
(B) 建立迭代格式
注 由于 x* 事先未知,故实际应用时, 代之以近似判则 | g( x0 ) | 1。 但需注意, 这实际上是假设了x0充分接近 x* ,若 x0 离 x* 较远,迭代格式可能不收敛。
定理2.2 (非局部收敛定理)如果 g(x) 在 [a,b] 上
连续可微且以下条件满足:
(1) 若 x [a, b], 则 g( x) [a, b] (2) 对 x [a, b] , g( x) L 1
|
ln
1
(2)事后误差估计
L 1 L
|
xk
x k 1
|
简单地代之以 | xk xk1 |
或 | xk xk1 | a (a 1 / 2n )
例 2.2 试建立收敛的迭代格式求解 x – e –x =0
在x=0.5附近的一个根(ε=10-3)。
解 建立迭代格式 x e x g( x) g( x0 ) e x0 e 0.5 1
xk1 g( xk ), 其中:g( x) 3 2x 5
x1 g( x0 ) x2 g( x1 ) , xk1 g( xk ), 得 到 数 列x1 , x2 , , xk ,
-----收敛
二 迭代法的收敛性
定义2.1 设在某个区间 内,函数 满足下 述李普希兹条件: | g(x) g( y) | L | x y | (x, y , 0 L 1为常数)
特 别 当
10m 时, K
lgb a
lg 2
m
事后误差估计
1.若 bk ak , 取x* ak或bk
2.若 bk ak
2 , 取x*
ak bk 2
例2.1:试用二分法求 sin x x2 0 的非零实根,
4
使其误差小于10-2
解:(1)根的隔离
y
x2
y
4
令 f ( x) sin x x 2 取 h=0.5
则称在 内 g(x)李普希兹连续。 命题2.1 若 g(x) 在闭区间 内连续且
| g( x) | L 1 ( x )
则 g(x) 在 内李普希兹连续。
证 g( x) g( y) g( )(x y) ( ) | g( x) g( y) || g( ) || x y | L | x y |
4
a 0,
f (a) 0,
a h 0.5, f (0.5) 0.4171,
y sin x
a 2h 1, f (1) 0.5917, a 3h 1.5, f (1.5) 0.4350
x
a 4h 2, f (2) 0.09113
sin x
x2
sin x 0在( , )
L| x~ x || x~ x |
矛盾。所以结论成立。
2) 迭代函数在 x* 附近李普希兹连续从而收敛的
迭代格式统称为皮卡(Picard)迭代
推论 设 x*= g(x*) , 若 g(x) 在 x* 附近 连续可微且 | g( x* ) | 1,则迭代格式 xk+1= g(xk) 在 x* 附近局部收敛。
x*
xk1
1 2 (bk
ak )
1 2k1
(b0
a0 ) k 0
lim
k
xk
x*
3。误差控制
事先误差估计
事先给定的 0,问K ? , 可以使xk1 x*
xk1
x*
1 2k 1
(b
a)
即2k1 b a (k 1)lg2 lg b a
k lg b a / lg2 1 K [lg b a / lg2]
+
1 1.75 2 1.875
+
2 1.875 2 1.9375

3 1.875 1.9375 1.90265 +
4 1.90265 1.9375 1.921875 +
5 1.92188 1.9375 1.92688 +
x* a5 b5 1.93 2
2.1.3 二分法评述
优点:简单可靠,易于编程实现,它对函数要 求低,适用于的奇数重根情形。
命题得证。
定理2.1 设 x*= g(x*), g(x) 在闭区间 :| x x |
内李普希兹连续,则对任何初值 x0 由迭代格式
xk+1= g(xk) 计算得到的解序列 xk 收敛于 x* ( 这时我
们称迭代格式 xk+1= g(xk)在 x* 的邻域 上局部收敛)。
证 (1)首先用数学归纳法证明:xk k 0,1,2,
取 P1(x) 0 的根作为 x 的第k+1次近似值 xk 1
解得
xk1
xk
f (xk ) f ( xk )
(2 12)
牛顿迭代法
其迭代函数为
g(x) x f (x) f ( x)
(2 13)
y
y f (x)
xk2
o
a xk xk1 x
B
bx
A
几何意义:过点 Pxk , f (xk )作函数 y= f (x) 的切线 l:
Lk | x x0 | 0 ( k 时 )
因此,
lim
k
xk
x
,定理得证。
注 1) g(x) 在 内李普希兹连续的条件保证了x* 为
f (x)=0 在 内的唯一根。
证 反设存在 ~x , ~x x且 f (~x ) 0,即 ~x g(~x )
则 0 | x~ x || g( x~) g( x ) |
x* x10 0.567.
四、 迭代法的收敛速度与加速收敛技巧
定义2.2 设迭代格式 xk1 g( xk ) 的解序列xk 收
敛于 x g(x) 的根 x* ,如果迭代误差 ek xk x
当 k 时满足渐近关系式
ek1 C (C 0为常数 )
e
p k
(2 11)
则称该迭代格式是 p 阶收敛的。 p=1时称为线性收敛 1<p<2 时称为超线性收敛 p=2 时称为平方收敛。
例 : x tan x 1 tan x 1
x
y
y tan x
x*
y 1/ x
x
找出交点 x (0, / 2)
二、对分法
设f(x)在(a,b)上连续且f(x)=0在(a,b)内只有一个根
1。算法
第一步:记(a0 , b0 ) (a, b),取(a, b)的中点
若f ( x1 ) 0
则取x* x1
对分法:线性收敛
ek1 xk1 x* (bk ak ) / 2 (bk1 ak1 ) / 4
ek
xk x* (bk1 ak1 ) / 2 (bk1 ak1 ) / 2
1 2
一般迭代法:线性收敛
ek 1 ek
xk 1 x* xk x*
g(xk ) g(x*) xk x*
g( )(xk x*)
由假设知 x0
又设 xk ,则| x xk |
所以 | x xk1 || g( x* ) g( xk ) |
L | x xk | | x xk | 即 xk1
综上,由归纳法原理知,结论成立。
(2) 由(1)的结论和 g(x) 在 内李普希兹连续 的假设,可递推得到
| x xk | L | x xk1 |
xk x*
k
g( ) g(x*) 1
2.3 牛顿迭代法 一、 牛顿迭代公式的构造
设 f (x) 在其零点 x* 附近连续可微,已知 xk 为的第
k次近似值,则f ( x) f ( xk ) f ( xk )(x xk ) O ( x xk )2
f ( xk ) f ( xk )(x xk ) P1 ( x)
第二章 非线性方程的数值解法
2.1 二分法 2.2 一般迭代法 2.3 牛顿迭代法 2.4 弦截法
问题: 求解 f (x) 0
数值计算方法主要分为两大类。 第一类是区间收缩法。 (1)确定初始含根区间 (2)收缩含根区间 第二类是迭代法。
(1)选定根的初始近似值 (2)按某种原则生成收敛于根的近似点列
f ( x0 h) f ( x0 2h) 0 直 到f ( x0 (i 1)h) f ( x0 ih) 0 但f ( x0 ih) f ( x0 (i 1)h) 0, f ( x) 0在 区 间( x0 ih, x0 (i 1)h)内 含 有 根 。
3。作图
xk1 g( xk )
(3)
(C) 适当选取初始值x 0 ,递推计算出所需的解。
其中: g(x) 迭代函数
xk1 g(xk ) 迭代格式 称为简单迭代法
或更一般地建立迭代格式
xk1 g( xk , xk1 , xkm ) (m 1) (3)
例 f (x) x3 2x 5 0
x3 5 x
2
由此建立迭代格式
x (2,3) x 3 2x 5
也可建立迭代格式
xk1 g( xk ), 其中:g( x) x 3 5
2
x1 g( x0 ) x2 g( x1 ) , xk1 g( xk ), 得 到 数 列x1 , x2 , , xk ,
-----发散
x2 4
0唯一的实根
4
x (1.5,2)
内有唯一的实根
取a0 1.5, b0 2
(2)预先算出计算步数
K
lgb
a
lg 2
m
lg(2 [
1.5) lg 2
2 ]
[5.64]
5
(3)计算(用表格形式写出来)
k
ak
bk
x k 1
f ( xk1 )的符号
0 (+)1.5 (-)2 1.75
相关文档
最新文档