用迭代法求代数方程的近似根
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用迭代法 求代数方程的近似根
1
代数方程近似求解(教材第 92-94页)
问题背景和实验目的
解方程(代数方程)是最常见的数学问题之一,也是 众多应用领域中不可避免的问题之一
目前还没有一般的解析方法来求解非线性方程,但如 果在任意给定的精度下,能够解出方程的近似解,则可 以认为求解问题已基本解决,至少可以满足实际需要
f (x) 的零点
(x) 的不动点
5
迭代法的收敛
收敛性分析
若
xk
收敛,即
lim
k
xk
x ,* 假设
(x)
连续,则
lim
k
xk 1
lim
k
(
xk
)
lim
k
xk
x*
即 x* ( x*)
( x*) f ( x*) 0
注:若得到的点列发散,则迭代法失效!
例:用迭代法求 x3 - 3x + 1 = 0 在 [0, 1] 中的解。 fuluA.m
f (x)
f ( x0 )
f '( x0 )( x x0 )
f
''(
2!
)
(
x
x0
)2
f ( x0 ) f '( x0 )( x x0 ) @P ( x)
令:P( x) 0
x
x0
f ( x0 ) f '( x0 )
( f '( x0 ) 0)
9
牛顿法迭代公式
牛顿迭代公式
x
Fra Baidu bibliotek
x0
本实验主要介绍一些有效的求解方程的数值方法:不 动点迭代法 和 牛顿法。同时要求大家学会如何利用 Matlab 来求方程的近似解
2
相关概念
线性方程 与 非线性方程
f (x) 0
若 f(x) 是一次多项式,称上面的方程为线性方程;否
则称之为非线性方程
本实验主要讨论非线性方程的数值求解
3
内容提要
x0 ,由迭代 xk+1 = (xk) 得到的点列收敛
定理 2:如果定理 1 的条件成立,则有如下估计
|
xk
x*
|
qk 1q
|
x1
x0
|
|
xk
x*
|
1
1
q
|
xk 1
xk
|
7
迭代法收敛性判断
定理 3:已知方程 x =(x),且 (1) 对 x[a, b],有 (x)[a, b]; (2) 对 x[a, b],有|’(x)|q< 1;
上机要求
将所编写的程序分别命名为 hw311.m, hw312.m
13
在实际计算中,可以先用其它方法获得真解的一个粗 糙近似,然后再用牛顿法求解。
11
Matlab 解方程函数
roots(p):多项式的所有零点,p 是多项式系数向量
fzero(f,x0):求 f(x)=0 在 x0 附近的一个根,f 是函
数句柄,可以通过内联函数,匿名函数或函数文件来定义, 但不能是方程或符号表达式!
linsolve(A,b):解线性方程组
solve(f,v):求方程关于指定自变量的解,f 是符号表达
式或符号方程; solve 也可解方程组 (包含非线性) 得不到解析解时,给出数值解
12
上机作业与要求
上机作业
分别用普通迭代法、牛顿法,求方程 0.5 x sin( x)
的正的近似根(内容参见教材第 92-94 页)
f ( x0 ) f '( x0 )
xk 1
xk
f ( xk ) f '( xk )
k = 0, 1, 2, ... ...
牛顿法的收敛速度
(x) 即为牛顿法的迭代函数
令 (x) x f (x)
f '( x)
'( x)
f ( x) f ''( x) [ f '( x)]2
当 f ’(x*) 0 时 ’(x*)=0
牛顿法至少二阶局部收敛
例:用牛顿法求 x3 - 3x + 1 = 0 在 [0, 1] 中的解。 fuluB.m 10
牛顿法迭代公式
牛顿法的优点
至少二阶局部收敛,收敛速度较快,特别是当迭代点 充分靠近精确解时。
牛顿法是目前求解非线性方程 (组) 的主要方法
牛顿法的缺点
对重根收敛速度较慢(线性收敛) 对初值的选取很敏感,要求初值相当接近真解
6
迭代法收敛性判断
定义:如果存在 x* 的某个 邻域 =(x*- , x* + ), 使 得对 x0 开始的迭代 xk+1 = (xk) 都收敛,
则称该迭代法在 x* 附近局部收敛。
定理 1:设 x* =(x*),’(x) 在 x* 的某个 邻域 内 连续,且对 x 都有 |’(x)|q< 1, 则对
则对 x0[a, b] ,由迭代 xk+1 = (xk) 得到的点列都
收敛,且
|
xk
x*
|
qk 1q
|
x1
x0
|
q 越小,迭代收敛越快
’(x*) 越小,迭代收敛越快
8
牛顿迭代法
牛顿法基本思想
用线性方程来近似非线性方程,即采用线性化方法
设非线性方程 f (x)=0 , f (x) 在 x0 处的 Taylor 展开为
求解非线性方程的数值算法
不动点迭代法 牛顿迭代法
4
不动点迭代法
不动点迭代基本思想
构造 f (x) = 0 的一个等价方程: x ( x)
从某个近似根 x0 出发,计算
xk1 ( xk ) k = 0, 1, 2, ... ...
得到一个迭代序列
x k k0
f (x) = 0 等价变换 x = (x)
1
代数方程近似求解(教材第 92-94页)
问题背景和实验目的
解方程(代数方程)是最常见的数学问题之一,也是 众多应用领域中不可避免的问题之一
目前还没有一般的解析方法来求解非线性方程,但如 果在任意给定的精度下,能够解出方程的近似解,则可 以认为求解问题已基本解决,至少可以满足实际需要
f (x) 的零点
(x) 的不动点
5
迭代法的收敛
收敛性分析
若
xk
收敛,即
lim
k
xk
x ,* 假设
(x)
连续,则
lim
k
xk 1
lim
k
(
xk
)
lim
k
xk
x*
即 x* ( x*)
( x*) f ( x*) 0
注:若得到的点列发散,则迭代法失效!
例:用迭代法求 x3 - 3x + 1 = 0 在 [0, 1] 中的解。 fuluA.m
f (x)
f ( x0 )
f '( x0 )( x x0 )
f
''(
2!
)
(
x
x0
)2
f ( x0 ) f '( x0 )( x x0 ) @P ( x)
令:P( x) 0
x
x0
f ( x0 ) f '( x0 )
( f '( x0 ) 0)
9
牛顿法迭代公式
牛顿迭代公式
x
Fra Baidu bibliotek
x0
本实验主要介绍一些有效的求解方程的数值方法:不 动点迭代法 和 牛顿法。同时要求大家学会如何利用 Matlab 来求方程的近似解
2
相关概念
线性方程 与 非线性方程
f (x) 0
若 f(x) 是一次多项式,称上面的方程为线性方程;否
则称之为非线性方程
本实验主要讨论非线性方程的数值求解
3
内容提要
x0 ,由迭代 xk+1 = (xk) 得到的点列收敛
定理 2:如果定理 1 的条件成立,则有如下估计
|
xk
x*
|
qk 1q
|
x1
x0
|
|
xk
x*
|
1
1
q
|
xk 1
xk
|
7
迭代法收敛性判断
定理 3:已知方程 x =(x),且 (1) 对 x[a, b],有 (x)[a, b]; (2) 对 x[a, b],有|’(x)|q< 1;
上机要求
将所编写的程序分别命名为 hw311.m, hw312.m
13
在实际计算中,可以先用其它方法获得真解的一个粗 糙近似,然后再用牛顿法求解。
11
Matlab 解方程函数
roots(p):多项式的所有零点,p 是多项式系数向量
fzero(f,x0):求 f(x)=0 在 x0 附近的一个根,f 是函
数句柄,可以通过内联函数,匿名函数或函数文件来定义, 但不能是方程或符号表达式!
linsolve(A,b):解线性方程组
solve(f,v):求方程关于指定自变量的解,f 是符号表达
式或符号方程; solve 也可解方程组 (包含非线性) 得不到解析解时,给出数值解
12
上机作业与要求
上机作业
分别用普通迭代法、牛顿法,求方程 0.5 x sin( x)
的正的近似根(内容参见教材第 92-94 页)
f ( x0 ) f '( x0 )
xk 1
xk
f ( xk ) f '( xk )
k = 0, 1, 2, ... ...
牛顿法的收敛速度
(x) 即为牛顿法的迭代函数
令 (x) x f (x)
f '( x)
'( x)
f ( x) f ''( x) [ f '( x)]2
当 f ’(x*) 0 时 ’(x*)=0
牛顿法至少二阶局部收敛
例:用牛顿法求 x3 - 3x + 1 = 0 在 [0, 1] 中的解。 fuluB.m 10
牛顿法迭代公式
牛顿法的优点
至少二阶局部收敛,收敛速度较快,特别是当迭代点 充分靠近精确解时。
牛顿法是目前求解非线性方程 (组) 的主要方法
牛顿法的缺点
对重根收敛速度较慢(线性收敛) 对初值的选取很敏感,要求初值相当接近真解
6
迭代法收敛性判断
定义:如果存在 x* 的某个 邻域 =(x*- , x* + ), 使 得对 x0 开始的迭代 xk+1 = (xk) 都收敛,
则称该迭代法在 x* 附近局部收敛。
定理 1:设 x* =(x*),’(x) 在 x* 的某个 邻域 内 连续,且对 x 都有 |’(x)|q< 1, 则对
则对 x0[a, b] ,由迭代 xk+1 = (xk) 得到的点列都
收敛,且
|
xk
x*
|
qk 1q
|
x1
x0
|
q 越小,迭代收敛越快
’(x*) 越小,迭代收敛越快
8
牛顿迭代法
牛顿法基本思想
用线性方程来近似非线性方程,即采用线性化方法
设非线性方程 f (x)=0 , f (x) 在 x0 处的 Taylor 展开为
求解非线性方程的数值算法
不动点迭代法 牛顿迭代法
4
不动点迭代法
不动点迭代基本思想
构造 f (x) = 0 的一个等价方程: x ( x)
从某个近似根 x0 出发,计算
xk1 ( xk ) k = 0, 1, 2, ... ...
得到一个迭代序列
x k k0
f (x) = 0 等价变换 x = (x)