计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 ....

17
计算方法(B) 童 伟 华 管理科研楼1205室 E-mail: [email protected] 中国科学技术大学 数学科学学院 http://math.ustc.edu.cn/ 2019-2020年度第一00151103 00151104

Transcript of 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 ....

Page 1: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

计算方法(B)

童 伟 华 管理科研楼1205室 E-mail: [email protected]

中国科学技术大学 数学科学学院 http://math.ustc.edu.cn/

2019-2020年度第一学期 00151103 00151104

Page 2: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

2

第四章 非线性方程求根

Page 3: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

非线性方程求根 非线性科学是当今科学发展的一个重要研究方向

非线性方程的求根非常复杂

例如:

3

=

=

21

)2

sin(

y

yxπ

无穷组解

−==

=

=

+=+=

10411

2

2

aa

aa

ayxaxy

无解

一个解

两个解

四个解

Page 4: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

非线性方程求根 非线性方程的根通常不止一个,很难找到所有的解

非线性方程求根,通常需要给定初始值或求解范围,用迭代法求解

(介值定理)设 是区间 上的一个连续函数,那么 取到 与 之间的任何一个值,即如果

是 与 之间的一个数,那么存在一个数 使得

(推论)

4

( )f x [ , ]a b( )f x ( )f a ( )f b

( )f a ( )f b

( )f c y=

[ , ]c a b∈

0)(.,.,0)()( =∃⇒<⋅ xftsxbfaf

y

Page 5: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

对分法 基于微积分中的介值定理,对区间 不断进行细分

,缩小搜索区间

停止标准: 或

5

[ , ]a b

11 εxx kk <−+ 2( )f xε <

Page 6: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

对分法 对分算法

6

Page 7: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

迭代法 基本思想:将方程 转换成等价形式 ,给

定初值 ,构造迭代序列:

若迭代收敛,即

则有

基本问题: 如何构造迭代格式?

是否收敛?收敛速度?

收敛的条件?(例如是否与初值相关?)

7

( ) 0f x = ( )x xϕ=0x

1 ( ), 1,2,k kx x kϕ+ = =

*1lim lim ( ) ,k kk k

x x xϕ+→∞ →∞= =

*( ) 0f x =

Page 8: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

迭代法 定理:设 在区间 上的连续,如果 满足

(1)当 时,有 ;

(2) 在 上可导,并且存在正数 ,使对任意的 ,都有 ,

则存在唯一的点 ,使得 成立,而且迭代格式 对于任意的初值 均收敛于 的不动点 ,并有误差估计公式

构造迭代格式的要素: 等价形式 满足 ;

初始值取自 的充分小领域;

8

( )xϕ [ , ]a b ( )xϕ

[ , ]x a b∈ ( )a x bϕ≤ ≤

( )xϕ [ , ]a b 1L <

[ , ]x a b∈ '| ( ) |x Lϕ ≤* [ , ]x a b∈ * *( )x xϕ=

1 ( )k kx xϕ+ = 0 [ , ]x a b∈ ( )xϕ*x*

1 0| | | | .1

k

kLx x x x

L− ≤ −

( )x xϕ= '| ( ) | 1xϕ <*x

Page 9: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

迭代法

定义:设迭代 格式 收敛到 的不动点 ,

记 ,若 ,则称该迭代格式为

阶收敛的,其中 称为渐进误差常数

9

1 ( )k kx xϕ+ = ( )xϕ *x

0||

||lim 1 >=+

∞→C

ee

pk

k

k

*k ke x x= − p

C

Page 10: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

Newton迭代法 将函数 在 处做Taylor展开:

Newton迭代格式:

10

( )f x 0x

200 0 0 0

''( )( ) ( ) '( )( ) ( )2!

f xf x f x f x x x x x= + − + − +

0 0 0( ) '( )( ) 0f x f x x x+ − ≈

01 0

0

( )'( )

f xx xf x

= −

1( ) , 1,2,'( )

kk k

k

f xx x kf x+ = − =

Page 11: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

Newton迭代法 (收敛性)设 , 为 的单根,则存在

,使得对任意的初值 ,Newton迭代法是2阶收敛的,即有

(重根情形)若 ,为 的 重根,则存在

,使得对任意的初值 ,Newton迭代法1阶收敛的,即有

修正:

11

2( ) [ , ]f x C a b∈ *x ( )f x 0, 0Cδ > >* *

0 ( , )x x xδ δ∈ − +* * 2

1| | | | ( 0).n nx x C x x n+ − ≤ − ≥

1( ) [ , ]mf x C a b+∈ *x ( )f x m

* *1| | | | ( 0).n nx x C x x n+ − ≤ − ≥

0, 0Cδ > >* *

0 ( , )x x xδ δ∈ − +

1( )

'( )k

k kk

mf xx xf x+ = − * * 2

1| | | | ( 0).n nx x C x x n+ − ≤ − ≥

'

( )( )( )

f xxf x

µ =

*( ) ( ) ( )mf x x x p x= −[ ]1 2

( ) '( )'( ) ( ) ''( )

k kk k

k k k

f x f xx xf x f x f x+ = −

Page 12: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

Newton迭代法 Newton迭代算法

12

Page 13: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

弦截法 Newton法:需要求导数

思想:用差商代替导数

弦截法迭代格式:

13

11

1

( )( )( ) ( )

k k kk k

k k

f x x xx xf x f x

−+

−= −

Page 14: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

弦截法 (收敛性)设 , 为 的单根,则存在

,使得对任意的初值 ,弦截法收敛,收敛阶为 ,即有

14

2( ) [ , ]f x C a b∈ *x ( )f x 0, 0Cδ > >* *

0 ( , )x x xδ δ∈ − +

1 52

1| | | | ( 0).n nx r C x r n+

+ − ≤ − ≥

(1 5) / 2+

Page 15: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

弦截法 弦截迭代算法

15

Page 16: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

非线性方程组的Newton方法 考虑二阶非线性方程组

Newton迭代格式:

16

1

2

( , ) 0( , ) 0

f x yf x y

= =

1 0 0 1 0 01 0 0 0 0

2 0 0 2 0 02 0 0 0 0

( , ) ( , )( , ) ( ) ( ) 0

( , ) ( , )( , ) ( ) ( ) 0

f x y f x yf x y x x y yx y

f x y f x yf x y x x y yx y

∂ ∂ + − + − ≈ ∂ ∂ ∂ ∂ + − + − ≈ ∂ ∂

1 0 0 1 0 0

0 1 0 0

0 2 0 02 0 0 2 0 0

( , ) ( , )( , )( , )( , ) ( , )

f x y f x yx x f x yx yy y f x yf x y f x y

x y

∂ ∂ − −∂ ∂ ≈ − −∂ ∂ ∂ ∂

11 1

2

( , )( , ) , ,

( , )k k

k k k k k kk k

f x yxJ x y x x x y y y

f x yy + +

−∆ = ∆ = − ∆ = − −∆

Page 17: 计算方法(B) - USTCstaff.ustc.edu.cn/~tongwh/NA_2019/slides/ch_04.pdf · 迭代法 . 定理:设 在区间 上的连续,如果 满足 (1)当 时,有 ; (2) 在

非线性方程组的Newton方法 对于一般的 阶非线性方程组

Newton迭代格式:

17

n1 1 2

2 1 2

1 2

( , , , ) 0( , , , ) 0

( , , , ) 0

n

n

n n

f x x xf x x x

f x x x

= = =

Tn

Tn xxxXfffFXF ),,,(,),,,(,0)( 2121 ===

11 1

( ) ( ( )) ( ) ( )( ) ( )'( )

kk k k k k k k k k

k

F xX X X J X F X J X X X F XF x

−+ += − = − ⇔ − = −

∂∂

∂∂

∂∂

∂∂

=

n

nn

n

xf

xf

xf

xf

XJ

1

1

1

1

)(