第二章 非线性方程(组)的数值解法2
第二章 非线性方程(组)的数值解法
2.1 方程(组)的根及其MATLAB 命令2.1.2 求解方程(组)的solve 命令求方程f (x )=q (x )的根可以用MATLAB 命令:>> x=solve('方程f(x)=q(x)','待求符号变量x ')求方程组f i (x 1,…,x n )=q i (x 1,…,x n ) (i =1,2,…,n )的根可以用MATLAB 命令:>>E1=sym('方程f1(x1,…,xn)=q1(x1,…,xn)');…………………………………………………….En=sym('方程fn(x1,…,xn)=qn(x1,…,xn)');[x1,x2,…,xn]=solve(E1,E2,…,En, x1,…,xn)例2.1.1:解方程9381731x x x +-=-。
解:>>x=solve('8*x^9+17*x^3-3*x=-1')例2.1.2:解下列方程,并且求根的近似值,要求精度为1410-。
3(1)sin(cos(2))0;(2)sin(cos 4)5tan(3)0;(3)sin(cos )tan 0.x a a a x b a =++=+=解:在MATLAB 工作窗口输入如下程序:>>x1=solve ('sin(cos(2*x^3))=0','x ')a1= solve ('a*sin(cos(4))+5*tan(a+3)=0','a ')x2=solve ('a*sin(cos(x))+b*tan(a)=0','x ')例2.1.3:解超越方程组40,2 1.xx xy x ⎧-=⎨+=⎩解:在MATLAB 工作窗口输入如下程序:>>E1=sym('x^x-4=0');E2=sym('2*x*y+x=1');[x,y]=solve(E1,E2)X1=double(x),y1=double(y)例2.1.4:解非线性方程组2,21,(),4.x y z u xy yu x y z u xu yz ++=⎧⎪-=-⎪⎨+-=⎪⎪+=⎩解:在MATLAB 工作窗口输入如下程序:>>E1=sym('x+y+z=u ');E2=sym('2*x*z-y*u=-1');E3=sym('(x+y)^2-z=u');E4=sym('x*u+y*z=4');[x,y,z,u]=solve(E1,E2,E3,E4),X1=double(x),y1=double(y),z1=double(z),u1=double(u)例2.1.5:解非线性方程组2220,1,59.x y z y x z z ⎧+=⎪⎪⎪+=⎨⎪+=⎪⎪⎩解:在MATLAB 工作窗口输入如下程序:>>[x,y,z]=solve('(x^2)/z+y^2=0', 'x+y=1', 'z^2+5*z=9')X1=double(x),y1=double(y),z1=double(z)例2.1.6:解非线性方程组2240,33,5sin 0.x xyz yz x z z y ⎧++=⎪+=⎨⎪+-=⎩解::在MATLAB 工作窗口输入如下程序:>>[x,y,z]=solve('x^2+4*x*y+z=0', 'x+3*y*z=3', 'z^2+5*sin(z)=0')例2.1.7:解方程9381731x x x +-=-,并且其导数。
数值计算方法第2章2-1节
(2)计算
f
(
a
2
b)
。
(3)若
f
(
a
2
b
)
0
,计算停止;若
f
(
a
2
b
)
f
(a)
0
,用
若
f
(
a
2
b)
f
(b)
0
,以
a
2
b
代替
a
。
a
2
b
代替
b
;
(4)反复执行第二步与第三步,直到区间长缩小到允许误差范围
之内,此时区间中点即可作为所求的近似解。
18
证明方程 x3 3x2 6x 1 0 在区间(0,1)内有唯一的实根,并
在[-1,-0.25],[0.5,1.25],[1.25,2]各区间内至少有一个实根。
10
2.1.3 区间二分法
定理 函数f(x)在[a,b]上单调连续,且f(a)f(b)<0, 则方程f(x)=0在区间[a,b]上有且仅有一个实根x*。
二分法的基本思想 将有根的区间二分为两个小区间,然后判断根在那 个小区间,舍去无根的小区间,而把有根的小区间 再一分为二,再判断根属于哪个更小的区间,如此 反复 ,直到求出满足精度要求的近似根。
5
有根区间
介值定理 若函数 f (x) 在[a, b] 连续,且
f (a) f (b) 0 ,则方程 f ( x) 0 在(a,b) 内至
少有一个实根。将[a, b] 称为 f (x) 的有根区间。
6
2.1.2 逐步搜索法
假设f(x)在区间[a,b]内有一
个实根x*,若 b – a较小,则可 在(a,b)上任取一点x0作为初始 近似根。
数值分析_第2章
证:由1。 f '( x) C[a, b],由2。 f '( x)不变号,故f ( x) 知 知 单调,再由3。 唯一的 [a, b],使f ( ) 0. 知
由1 3 知f ( x)在[a, b]上必属于下列四种情形之一:
。 。
f ''( x) 0 f (a) 0, f (b) 0, f '( x) 0(增) f ''( x) 0
二.收敛性:
mn . n .
◆判定二分次数:
1 lim n 1 b0 a0 0 n 2
1 对 0,若要求 mn n 1 b0 a0 2
b0 a0 则2 n log 2 1与取整的 1抵消 .
定理1.(单点法收敛的充分条件) 设f ( x)在[a, b]上二阶 可导,且满足:
。 1. f ''( x)在[a, b]上不变号(凹凸不变性);
2。 f '( x)在[a, b]上不为0(单调性); . 3。 f (a) f (b) 0; . 4。取x0 [a, b], 使f ( x0 ) f ''( x0 ) 0.x1 [a, b], f ( x1 ) f ( x0 ) 0. . 则由(6)所得 xn 单调收敛于f ( x) 0在[a, b]上的唯一根。
列表计算:
n
0 1 2 3 4 5
xn
2 1 1.33333 1.40000 1.41176 1.40378
2
f ( xn )
2 -1 -0.22223 -0.04000 -0.00692
hn
非线性方程组的数值解法及最优化方法课件
拟牛顿法是牛顿法的改进,通过构造一个近似于真实Hessian矩阵的对称正定矩阵来逼近, 从而加快了算法的收敛速度。
信赖域方法求解非线性方程组
信赖域方法是一种基于梯度信息的迭代算法,通过在每一步中计算一个小的搜索方向,并 限制步长,以避免算法发散。
最优化方法案例
梯度下降法求解无约束最优化问题
梯度下降法是一种迭代算法,通过不断沿负梯度方向更新变量,最终找到最优化问题的最小值点。该方法适用于求解 无约束最优化问题。
牛顿法求解无约束最优化问题
牛顿法是一种基于二阶导数的迭代算法,通过不断逼近函数的极小值点,最终求解无约束最优化问题。该方法适用于 求解具有多个局部最小值的问题。
遗传算法求解约束最优化问题 遗传算法是一种基于生物进化原理的随机搜索算法,通过模拟生物进化过程中的自然选择和遗传机制, 在解空间中进行高效搜索,最终找到满足约束的最优解。
和稳定性。
约束最优化方法
拉格朗日乘数法
通过引入拉格朗日函数,将约束最优化问题转化为无 约束最优化问题求解。
罚函数法
通过引入罚函数,将约束条件转化为无约束条件,通 过迭代更新求解。
序列二次规划法
结合拉格朗日乘数法和牛顿法的思想,通过迭代逼近 最优解。
混合整数最优化方法
01
02
03
分支定界法
将整数约束转化为区间约 束,通过不断分支和剪枝 来逼近最优解。
非线性方程组与最优化方法的结合案例
非线性规划问题
非线性规划是最优化领域中一类重要的数学问题,其目标函数和约束条件都是非线性的。常见的非线性规划问题 包括最小二乘问题、二次规划问题等。求解非线性规划问题的常用方法包括梯度下降法、牛顿法等。
2非线性方程(组)的数值解法
算法: (1)取初始点x0,最大迭代次数N和精度要求ε,置k 0;
(2)计算xk1 (xk );
(3)若|xk1 xk |ε,则停止计算; (4)若k N,则停止计算;否则,置k k 1,转(2)。
例2.用迭代法求方程x ex在[1/2,ln2]内的一个实根, 要求误差不超过103,并分析其收敛性。 解: 取迭代公式xk1 exk ,k 0,1,,其中迭代函数(x) ex, 首先分析迭公式的收敛性。
则任取
x0[a,
b],由
xk+1
=
(xk)
得到的序列 xk
k 0
收
敛于 (x) 在[a, b]上的唯一不动点。并且有误差估计式:
1 | x * xk | 1 L | xk1 xk |
|
x * xk
|
Lk 1 L
|
x1
x0
|
( k = 1, 2, … )
注1 本定理的条件包括:封闭性,压缩性; 结论包括:不动点的存在唯一性、迭代法 的收敛性以及误差估计。
适用范围 求有根区间内的 单重实根 或 奇重实根,即 f(a) f用(b)二<0分法求根,通常先给出 f(x) 草图以确定有根6
二分法
算法 :(二分法 )
(1) 计算 f(a),f(b),若 f(a) f(b) >0 ,则停止计算
(2) 对 k = 1, 2, ... , maxit
计算 f(x),其中
等价变换为
f (x) 0
x (x)
f (x)的零点x *
(x) 的不动点 x *
由此也称为不动点迭代法,(x)称为迭代函数。
从一个初值 x0出发,计算
x1 (x0 )
x2 (x1)
非线性方程的数值解法
2. 2 二分法
二分法的误差估计
由于 x − x* ≤ 1 (b − a ) = b − a k k k k +1 k +1
2
只要有根区间[a 只要有根区间 k+1, bk+1]的长度小于预先给定的误 的长度小于预先给定的误 差ε,那么就可以取 作为所求根x*的第 次近似值。 作为所求根 的第k+1次近似值。其误差估计为 的第
计算机科学与工程系 21
2.3 迭代法
简单迭代法的原理 迭代法的收敛性 迭代加速法
计算机科学与工程系 22
2.3.1 简单迭代法原理
基本思想
将方程f 将方程 (x) = 0化为一个等价的方程 化为一个等价的方程 x = ϕ (x ) 从而构成序列
x k +1 = ϕ ( x k ) k = 0 , 1, 2 , L
计算机科学与工程系
9
2.1.2 根的隔离方法
画图法
f(x)
x0 =
a
x0 + h
x* b
计算机科学与工程系 10
2.1.2 根的隔离方法
逐步扫描法
设单值连续函数f(x)在有根区间 b],从左端点 = 在有根区间[a, ,从左端点x 设单值连续函数 在有根区间 a出发,按某个预先选定的步长 一步一步地向右跨 出发, 出发 按某个预先选定的步长h一步一步地向右跨 每跨一步都检验每步起点x 和终点x 每跨一步都检验每步起点 0和终点 0 + h的函数值 的函数值 如果
1 x − xk ≤ k +1 (b − a) 2
*
计算机科学与工程系 16
1 xk = (ak + bk ) 2
输入 a, b, ε 定义f (x) 是
非线性方程与方程组数值解法
2.2 二分法
表2-2 计算结果
k
0 1 2 3 4 5 6 7
ak
1 1 1.25 1.25 1.3125 1.3125 1.3125 1.3203
bk
2 1.5 1.5 1.375 1.375 1.3438 1.3281 1.3281
xk
1.5 1.25 1.375 1.3125 1.3438 1.3281 1.3203 1.3242
ab ;否则,回 2
5.2 二分法
说明:
x*
(ⅰ)上述计算步骤(2)和(3)每执行一次就把新的区间分成两份,根的范围也 缩小一半. 如果第 k 次二分后得到的区间记 为 [ak , bk ],根的近似值记为 xk ,则 ba (a b ) 有 bk ak k , xk k k ,那么当时 k , bk ak 0,这说明如果二分过 2 2 程无限继续下去,这些区间必将收敛于一点,即为所求根. (ⅱ) 第
3
2 f ( x ) 3 x 1 0, x [1, 2] 解 已知 f (1) 1 0, f (2) 5 0 且 ,
则方程
f ( x) x 3 x 1 0
在区间
(1, 2)
内只有一个实根.
当 k 1 , x1
bk ak 102 ,继续二分;
2.1 引言
通常隔离区间的确定方法为 (1)作 y f ( x) 的草图, 由 y f ( x)与横轴交点的大致位置来确定; 或 者将 f1 ( x) f 2 ( x) 改写成 f ( x) 0 , 根据 y f1 ( x) 和 y f 2 ( x) 交点横坐标来确定
根的隔离区间.
当 k 2 , x2
非线性方程(组)的解法
lnim(bn
an )
lim
n
2n1
(b
a)
0
lim
n
an
lim
n
bn
x
取
x
cn
1 2
(an
bn
)为
x 的近似解。
7
二分法
迭代终止准则
an - bn
即
x - cn
bn an 2
2
8
2.2一般迭代法
2.2.1 迭代法及收敛性
对于 f (x) 0 有时可以写成 x (x) 形式 如: x3 x 1 0 x 3 x 1
12
例题
例2.2.1 试用迭代法求方程 f (x) x3 x 1 0
在区间(1,2)内的实根。 解:由 x 3 x 1建立迭代关系
xk1 3 xk 1 k=0,1,2,3…… 计算结果如下:
13
例题
精确到小数点后五位
x 1.32472 1 105
2
14
例题 但如果由x x3 1建立迭代公式
xk1 xk3 1 k 1,2,...
仍取 x0 1.5,则有 x1 2.375 ,x2 12.39 显 然结果越来越大,{xk }是发散序列
15
2.3 Newton迭代法
设x*是方程f (x) = 0的根, 又x0 为x* 附近的一个值,
将f (x) 在x0 附近做泰勒展式:
f (x)
二分法
用二分法(将区间对平分)求解。
令
a1
a, b1
b, c1
1 2
(a1
b1 )
若 f (a1) f (c1) 0,则[a1, c1] 为有根区间,否 则 [c1,b1]为有根区间
《数值计算方法》复习资料
实用文档《数值计算方法》复习资料第一章数值计算方法与误差分析第二章非线性方程的数值解法第三章线性方程组的数值解法第四章插值与曲线拟合第五章数值积分与数值微分第六章常微分方程的数值解法自测题课程的性质与任务数值计算方法是一门应用性很强的基础课,在学习高等数学,线性代数和算法语言的基础上,通过本课程的学习及上机实习、使学生正确理解有关的基本概念和理论,掌握常用的基本数值方法,培养应用计算机从事科学与工程计算的能力,为以后的学习及应用打下良好基础。
第一章数值计算方法与误差分析一考核知识点误差的来源类型;绝对误差和绝对误差限,相对误差和相对误差限,有效数字;绝对误差的传播。
二复习要求1.知道产生误差的主要来源。
2.了解绝对误差和绝对误差限、相对误差和相对误差限和有效数字等概念以及它们之间的关系。
3.知道四则运算中的误差传播公式。
实用文档三例题例 1 设x*= =3.1415926⋯近似值 x=3.14 = 0.314× 101,即 m=1,它的绝对误差是- 0.001 592 6 ,⋯有即 n=3,故 x=3.14 有 3 位有效数字 .x=3.14准确到小数点后第 2 位 .又近似值 x=3.1416,它的绝对误差是0.0000074 ⋯,有即 m=1,n= 5, x=3.1416 有 5 位有效数字 .而近似值x=3.1415,它的绝对误差是0.0000926 ⋯,有即 m=1,n= 4, x=3.1415 有 4 位有效数字 .这就是说某数有s 位数,若末位数字是四舍五入得到的,那么该数有s 位有效数字;例 2指出下列各数具有几位有效数字,及其绝对误差限和相对误差限:2.000 4-0.002 009 0009 000.00解因为 x1=2.000 4= 0.200 04× 101, 它的绝对误差限 0.000 05=0.5 × 10 1―5,即m=1,n=5, 故 x=2.000 4 有 5 位有效数字 . a1=2,相对误差限x2=- 0.002 00,绝对误差限0.000 005,因为 m=-2,n=3 ,x2=- 0.002 00 有 3 位有效数字 . a1=2 ,相对误差限r ==0.002 5实用文档x3=9 000 ,绝对误差限为0.5× 100,因为 m=4, n=4, x3=9 000 有 4 位有效数字, a=9 ,相对误差限r== 0.000 056x4=9 000.00 ,绝对误差限0.005,因为 m=4, n=6, x4=9 000.00 有 6 位有效数字,相对误差限为r== 0.000 000 56由 x3与 x4可以看到小数点之后的0,不是可有可无的,它是有实际意义的.例 3 ln2=0.69314718⋯,精确到10-3的近似值是多少?解精确到 10-3= 0.001,意旨两个近似值x1,x2满足,由于近似值都是四舍五入得到的,要求满足,近似值的绝对误差限应是=0.0005,故至少要保留小数点后三位才可以。
非线性方程(组)的解法
f ( x) f ( xk ) f ( xk )(x xk ) 一元函数 F ( x) F ( x k ) F ( xk )(x xk ) 0 x k为向量 F ( x k )(x x k ) F ( x k ) x x k F ( x k )1 F ( x k )
18
3.非线性方程组的迭代解法
f1 ( x1 , x2 , , xn ) 0 f1 ( x) f1 ( x1 , L , xn ) 或 F ( x) L 0 L f ( x) f ( x , L , x ) f ( x , x ,, x ) 0 n n n 1 n n 1 2
9
迭代法及收敛性
考虑方程 x ( x)。 这种方程是隐式方程,因而不能直接求出它的根。
但如果给出根的某个猜测值 x0, 代入 x ( x) 中的右端得到 x1 ( x0 ),再以 为一个猜测值,
x1
代入 x ( x) 的右端得 x2 ( x1 ) ,反复迭代 得
1 f ( x ) f ( x0 ) ( x x0 ) f ( x0 ) ( x x0 )2 f ( ) 2 其中在x和x0之间
0 f ( x) f ( x0 ) ( x x0 ) f ( x0 ) 0
16
Newton迭代法
有:
*
f ( x0 ) x x0 f ( x0 )
能为力时,数值方法则可以借助于计算机出色完成。
2
2.1二分法
概念:
有根区间:存先确定有限区间:依据零点定理。 设 f ( x) C[a, b],且 f (a) f (b) 0 ,则 方程 f ( x) 0在区间 (a, b)上至少有一个根。 如果 f ' ( x) 在 (a, b)上恒正或恒负,则此根唯 一。
非线性方程的数值解法
非线性方程的数值解法摘要:数值计算方法,是一种研究解决数学问题的数值近似解方法,它的计算对象是那些在理论上有解而又无法用手工计算的数学问题。
在科学研究和工程技术中都要用到各种计算方法。
例如,在地质勘探、汽车制造、桥梁设计、天气预报和汉字设计中都有计算方法的踪影。
本文讨论了非线性方程的数值解法:非线性方程的二分法、迭代法原理、牛顿迭代法,迭代法的收敛性条件及适合非线性方程的插值法等等,基于C语言及MATLAB程序设计,通过实例验证了非线性方程数值解法的有效性。
关键字:迭代法收敛精度ε插值节点差商基函数Abstract:Computing technology of number value is used to solve the problems of approximate solution of number value in mathematics, its calculated target is that those who have solutions in theory but can‟t be calculated by hand.Some kinds of computing technologies are used in the scientific research and engineering technologies. For example, there are traces of the computing technology everywhere in geological exploration, car manufacturing, bridge design, weather forecast and Chinese character design.This thesis introduces the value number solution of the non-linear equation and lists the important point of contents and core calculating formula,Combining the calculating description that discusses some parts of calculating formula. This calculating method can concisely express the operations such as circulation and iteration, which shortens the distance from the method to the computer. The basic contents are composed by the convergence conditions, including the dichotomy of non-linear equation, the iterative method principle, the Newton method, the astringency of the iterative method and interpolation method etc., giving the solid example and procedure in which a calculator tool C language and mathematics software MATLAB are used.Keywords:Iterative Method, Astringency, Precious dimension εInterpolation, Primary Function目录摘要 (1)第1章绪论 (3)1.1 问题的提出和研究目的和意义 (3)1.2 国内外相关研究综述 (3)1.3 论文的结构与研究方法 (3)第2章非线性方程的数值解法 (4)2.1 二分法 (5)2.2迭代法 (6)2.3 迭代法的局部收敛性及收敛的阶 (7)2.4 牛顿迭代法 (7)2.5 牛顿法的改进 (8)2.6 插值 (11)第3章程序设计 (13)基于C语言:牛顿迭代法,弦截法,拉格朗日插值 (13)第4章程序设计仿真计算结果 (15)基于MATLAB:多元插值 (15)第5章尚待深入研究的问题 (17)第6章参考文献 (18)第7章致谢 (18)第1章 绪论1. 1 问题的提出和研究目的和意义非线性方程的问题在工程实践中有很多用途,研究其数值解法是当前一个研究方向,目前已有相当一部分算法在广泛使用于工程实践中。
数值计算课件——第二章非线性方程的数值解法
h=(b-a)/N来增值。每跨一步进行一次根的搜索。 计算速度慢,一般用于确定根的位置
2.1.2 二分法 思路:二分法的基本思想 就是逐步对分区间,经过对根的搜
索,将有根区间的长度缩小到充分小,从而求出满足精度的 根 的近似值。
二分法的步骤:
的长度为 a,b之半。
a
xa01 x*
x1
b1
二分法
对压缩了的有根区间 a1,b又1可施以同样的手续,
即用中点 待求的根 根区间
x1 将12区a1间 b1 分为两半a1,,b1然 后判定
在 的哪一侧x,* 从而x1又确定一个新的有
,其长度为 a2 的, b2一 半。如此反复a1,,b1
即可得出一系列有根区间
2)if f (a) f ( x) 0 then [a, b][a, x];
else [a, b][ x, b].
e ndwhile; (4)输 出x 1 (a b).
2
2.2 简单迭代法
2.2.1 迭代原理 2.2.2 迭代的收敛性 2.2.3 迭代的收敛速度 2.2.4 迭代的加速
2.2 简单迭代法
但 f (m) (x* ) 0 ,则称 x*是方程 的 m重根。
② 根的存在性定理:
定理:若 f 在[a, b]上连续,且 f (a) ·f (b) < 0,则 f 在 (a, b) 上必有一根;若 f 在[a, b]上连续且单调则 f 在 (a, b) 上有且仅有一根。
2.1.1逐步搜索法
例:求连续函数 f(x) 在有根区间[a,b]上的根。
a,b a1,b1 ak ,bk
其中 ak , b的k 长度
计算方法 第2章 非线性方程数值解法
第二章非线性方程数值解法本章将讨论非线性方程0)(=x f (2.1)的数值解法,我们最为熟悉的非线性方程是一元二次方程02=++c bx ax也是最简单的非线性方程,其解为:aac b b x 2422,1-±-=但是对于(2.1)式中一般形式的非线性函数)(x f ,很难甚至不可能找到解析形式的解,通常只能用数值的方法求其近似数值解。
2.1 基本概念定义2.1如果*x 满足0)(*=x f ,则称*x 为方程(2.1)的解或根,也称*x 为函数)(x f 的零点或根。
用数值方法求解非线性方程的解,通常需要我们对其解有一个初步的估计,或知道其解的一个限定区间,因此确定包含解的区间将是我们首先需要解决的问题。
定义2.2若连续函数)(x f 在],[b a 内至少有一个根,则称],[b a 为有根区间,若在],[b a 内恰有一个根,则称],[b a 为隔根区间。
定理2.1 如果函数)(x f 在],[b a 上连续且0)()(<b f a f ,则)(x f 在),(b a 内至少有一个根,如果函数)(x f 另外满足在],[b a 上单调连续,则)(x f 在),(b a 内恰有一个根。
寻找隔根区间的通常方法有:图形法, 试探法。
例2.1 求033)(3=+-=x x x f 的有根区间。
解:作出函数)(x f y =的曲线图形图2.1 例2.1曲线示意图观察图中的曲线与X 轴的交点,可判断在区间)2,3(--之间方程有一个根。
例2.2 求033)(23=--+=x x x x f 的有根区间。
解:计算出)(x f 在一些点的值。
从表中可以看出1-=x 是一个根,区间)2,1(是一个有根区间。
如果在[-2,-1]之间把间隔再缩小到0.25我们可以得到下列表格在这个表格里我们又发现一个有根区间)5.1,75.1(--。
从此例中我们可以体会到试探法有可能漏掉某些有根区间,具有一定的局限性。
非线性方程的数值解法计算方法刘师少.pptx
有一个根。又 f (x) 3x2 2 当时 x 2,3
时,f (x) 0 ,故f(x)在[2, 3]上是单调递增函数, 从而f(x)在[2, 3]上有且仅有一根。
+
可以看出,在[1.0,1.5]内必有一根
第12页/共63页
• 用逐步搜索法进行实根隔离的关键是选取步长h • 要选择适当h ,使之既能把根隔离开来,工作量
又不太大。 • 为获取指定精度要求的初值,可在以上隔离根的
基础上采用对分法继续缩小该含根子区间
二分法可以看作是搜索法的一种改进。
第13页/共63页
第22页/共63页
如果由迭代格式 xk1 (xk ) 产生的序列 xn 收敛,
即
lim
n
xn
x*
则称迭代法收敛。
实际计算中当然不可能也没必要无穷多步地做 下去, 对预先给定的精度要求ε,只要某个k满足
xk xk1
即可结束计算并取 x * xk 当然,迭代函数 (x)
的构造方法是多种多样的。
y
y=f(x)
a
x b
由此可大体确定根所在子区间,方法有: (1) 画图法 (2) 逐步搜索法
记笔记 第7页/共63页
(1) 画图法
• 画出y = f (x)的略图,从而看出曲线与x轴交点的 大致位置。
• 也可将f (x) = 0分解为1(x)= 2(x)的形式, 1(x) 与 2(x)两曲线交点的横坐标所在的子区间即为 含根
第5页/共63页
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
且 '( x) = 2x > 0 所 方 f ( x) = 0在 0, +∞) 有 一 a。 f ( , 以 程 内 唯 根 f 又 ''( x) = 2 > 0,故 x0 > a时 有 ( x0 ) ⋅ f ''( x0 ) > 0 当 , f , 此 定 知 x 因 由 理 , 0 > a时 迭 法 敛 , 代 收
例1: 写 求 a的 顿 代 式 ( 求 含 方 算 出 牛 迭 格 。 要 不 开 运 ) 解: 等价于求方程
f ( x ) = x 2 − a = 0 (a > 0) 的正根 f ′( x) = 2x
2 f ( xk ) xk − a 1 a xk +1 = xk − = xk − = ( xk + ) k = 0,1, 2,L f ′( x k ) 2 xk 2 xk
§4 牛顿法 /* Newton - Raphson Method */
一、牛顿迭代公式的推导 1、待定参数法 、 不动点迭代的关键是构造满足收敛条件的 不动点迭代的关键是构造满足收敛条件的迭代函数 g ( x ) 关键是构造满足收敛条件 一种自然的选择是令 一种自然的选择是令 自然的选择
f ( x ) = 0 ⇔ g( x ) = x
割线
/* secant line */
切线 收敛比Newton’s Method 收敛比 且对初值要求同样高。 慢,且对初值要求同样高。 x2 x1 x0
/* tangent line */
切线斜率 ≈ 割线斜率
⇒
f ′( xk ) ≈
f ( xk ) − f ( xk −1 ) xk − xk −1
x 取 0 =1,则 x1 =1.500000000, x2 =1.416666667, x3 =1.414215686, x4 =1.414 213562. x4与 确 取 位 效 字 完 相 。 精 解 十 有 数 时 全 同
§5 割线法 /* Secant Method */ Newton’s Method 每一步要计算 f 和 f ′ ,为了避免计算 导数值, 从而得到割线法 弦割法)。 割线法( 导数值,现用 f 的值近似 f ′ ,从而得到割线法(弦割法)。
—拉夫森方法,简称牛顿法 拉夫森方法 简称牛顿法 方法,
2、Taylor展开法/* Taylor’s expansion Method */ 、 展开法 原理:将非线性方程线性化 原理:将非线性方程线性化 展开: 取 x0 ≈ x*,将 f (x)在 x0 做一阶 , 在 做一阶Taylor展开 展开
f ( x0 ) ⇒ x* ≈ x0 − f ′( x0 )
⇒ x1
y
线性 /* linear */ x
x0
x*
x2 x1
y = f ( x0 ) + f ′( x0 )( x − x0 )
与x轴交点的横坐标 轴交点的横坐标
x k +1
f ( xk ) = xk − f ′( x k )
k = 0 , 1, 2 , L
f ( x) = f ( x0 ) + f ′( x0 )( x − x0 ) + f ′′(ξ ) ( x − x0 )2,ξ 在 x0 和 x 之间 2!
看成高阶小量 则有: 高阶小量, 将 (x* − x0)2 看成高阶小量,则有:
0 = f ( x*) ≈ f ( x0 ) + f ′( x0 )( x * − x0 )
Th4 (收敛的充分条件)设f (x) =0 且f ∈C2[a, b],若 收敛的充分条件) ,
(1) f (a) f (b) < 0;(2) 在整个 b]上 f ′′ 不变号,且 ; 在整个[a, 上 不变号 且 f ′( x) ≠ 0 ; (3) 选取 x0 ∈ [a, b] 使得 f ( x0 ) f ′′( x0 ) > 0 ; 产生的序列{ 则Newton’s Method产生的序列 xk } 以不低于二阶的收敛 产生的序列 速度收敛于方程的根 x∗ 。 产生的序列单调有 产生的序列单调有 有根 凹凸性 根唯一 界保证收敛
k 0 xk 1.0 f (xk ) −5.0 k xk f (xk ) 5 1.365 211903 − 2.990 6071×10−7 − 2.0416×10−7 0.0 0.0
1 2.0 14.0 6 1.365 230 013 2 1.263 157 895 −1.602 274 384 7 1.365 230 013 3 1.338 827 839 −0.430 364 744 8 1.365 230 013 4 1.366 616 395 0.022 909 427
注:Newton’s Method 收敛性依赖于 0 的选取。 收敛性依赖于x 的选取。
x0 x0 x0 x*
1 a 例2: 明 求 a的 顿 代 式 k+1 = ( xk + ) (k = 0,1 2L , ) 证 : 牛 迭 公 x 2 xk 任 初 值 对 意 始 x0 > 0均 敛 并 a = 2实 进 迭 计 。 收 , 就 际 行 代 算
1 a 0 , 当 < x0 < a时 由 1 = ( x0 + ) > a知 , x 2 x0 x , 算 回 x 从 1起 计 又 到 0 > a的 形 因 当 < x0 < a时 情 。 此 0 , 牛 法 收 。 上 论 立 顿 也 敛 综 结 成 。
1 a ), x 证 2: 为 > 0, x0 > 0, 而 k+1 = ( xk + )(k = 0,12,L 法 因 a 2 xk 1 a 1 a 2 以 是 ) + a ≥ a, 所 xk > 0. 于 xk+1 = ( xk + ) = ( xk − 2 xk 2 xk
f ( xk )( xk − xk −1 ) ⇒ xk+1 = xk − f ( xk ) − f ( xk−1 )
需要2个初值 需要 个初值 x0 和 x1。
例3: 用 线 求 方 x3 + 4x2 −10 = 0在 1, 上 根 要 割 法 解 程 [ 2] 的 , 求
xk+1 − xk < 10−9
析 明 敛 有 种 法 第 种 利 牛 法 收 条 来 分 证 收 可 两 方 : 一 是 用 顿 的 敛 件 验 收 性 第 种 利 证 序 的 限 在 得 收 性 检 其 敛 。 二 是 用 明 列 极 存 来 到 敛 。
解:证 1: f ( x) = x2 − a, x ∈(0, +∞),则 (0) = −a < 0, f (+∞) > 0, f 法 设
f ′( x )
g ′( x ∗ ) = 1 + h′( x ∗ ) f ( x ∗ ) + h( x ∗ ) f ′( x ∗ ) = 1 + h( x ∗ ) f ′( x ∗ ) = 0 1 ∗ ( f ′( x∗ ) ≠ 0) ⇒ h( x ) = − f ′( x∗ )
Newton – Raphson迭代格式 迭代格式
xk+1 1 a x ) 进 又 而 有 = + ≤1,即 k+1 ≤ xk (k =1, 2,L , 2 2 2xk xk
{ xk } 对任意初始值x0 > 0均收敛。结论成立。
1 2 计 a = 2.迭 格 为 k+1 = ( xk + ). 算 代 式 x xk 2
故{ xk } 单 递 有 界 则 据 调 界 理 , 调 减 下 。 根 单 有 原 知
1 取 h( x) = − ( f ′( x) ≠ 0) f ′( x) f ( x) 因此, 因此,选取迭代函数 g ( x ) = x − f ′( x )
g ′( x ∗ ) = 0 满足
f ( xk ) xk +1 = xk − k = 0,1, 2,L f ′( xk )
称之为牛顿 称之为牛顿
∗ቤተ መጻሕፍቲ ባይዱ
∗
∗
g( x ) = x + cf ( x ) (c ≠ 0)
为了加速不动点迭代的收敛过程,应尽可能使迭代函数 g ( x ) 为了加速不动点迭代的收敛过程, 处有更多阶导数等于零 定理2 更多阶导数等于零( 在 x = x ∗ 处有更多阶导数等于零(定理2)。 令 1 ∗ ∗ g ′( x ) = 1 + cf ′( x )= 0 ⇒ c = − 遗 憾! ∗ 现设 g ( x ) = x + h( x ) f ( x )