第三章 方程(组)的迭代解法

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

解:记
f ( x) ex 10x 2 ,则对任意 x R ,
f ( x) ex 10 0
因而, f ( x) 是严格单调的, f ( x) 0 最多有一个根, 又因为
f (0) 1 0, f (1) e 8 0
所以, f ( x) 0 有唯一实根
问题: 1.根的存在性。方程有没有根?如果有,有几个根?
2.根的搜索。这些根大致在哪里?如何把根隔离开? 3.根的精确化(误差)。
• 公元前1700年的古巴比伦人就已有关于一、二次 方程的解法。 •《九章算术》(公元前50~100年)其中“方程术” 有联立一次方程组的一般解法。 •1535年意大利数学家尼柯洛冯塔纳找到了一元三 次方程一般形式的求根方法。这个成就,使他在几 次公开的数学较量中大获全胜,从此名扬欧洲。但 是冯塔纳不愿意将他的这个重要发现公之于世.
的 m重根或函数 f ( x) 的m重零点。
2. 根的搜索
(1) 图解法(利用作图软件如 Matlab) (2) 扫描法(逐步搜索法) (3) 二分法*
(1) (描)做图法
画出 y=f(x) 的草图, 由f(x)与横轴交点的大概位臵 来确定隔根区间; 或者利用导函数f(x)的正、负与函 数f(x)的单调性的关系确定根的大概位臵.
设f(x)在区间[a, b]上连续, f(a)· f(b)<0, 则在[a, b] 1 内有方程的根. 取[a, b]的中点 x0 (a b) , 2 将区间一分为二. 若 f (x0)=0, 则x0就是方程的根, 否则判别根 x*在 x0 的左侧还是右侧. 若 f(a) · f(x0)<0, 则x*∈(a, x0), 令 a1= a, b1=x0; 若f(x0) · f(b)<0, 则x*∈(x0 , b), 令 a1=x0, b1=b.
数列{xk}称为迭代序列. 如果迭代序列收敛, 则称迭
代格式收敛,否则称为发散.
3.2.2 迭代法的几何意义
通常将方程f(x)=0化为与它同解的方程 x ( x)
② 收敛慢
注:
1.用二分法求根,最好先给出 f (x) 草图以确定根 的大概位臵。或用搜索程序,将[a, b]分为若干小 区间,对每一个满足 f (ak)· f (bk) < 0 的区间调用二 分法程序,可找出区间[a, b]内的多个根,且不必
要求 f (a)· f (b ) < 0 。
2.由于在偶重根附近曲线 y=f(x) 为上凹或下凸, 即 f(a)与f(b)的符号相同, 因此不能用二分法求偶重根.
所以, x* 0.5 (0.0859375 0.09375) 0.09
3.2 迭代法及其收敛性
问题
虽然二分法计算简单,能够保证收敛,但是它对于方程
单根存在区域信息要求太高,一般情况下很难实现,并 且不能求偶重根、复根和虚根。在实际应用中,用来求 解方程根的主要方法是迭代法。 使用迭代法求解非线性代数方程的步骤为:
y lg x 1 y x
y
1 y x
y gx
0 2 3 x
这两条曲线的交点的横座标大致为x=2.5
(2) 扫描法(逐步搜索法)
1.画出 f(x) 的略图,从而看出曲线与x 轴交点的位臵。 f(x)
x0 a
x0 h
x*
b
2.从左端点x = a出发,按某个预先选定的步长h 一步一步地向右跨,每跨一步都检验每步起点x0
二分法的执行步骤 1.计算f (x)在有解区间[a, b]端点处的值,f (a),f (b)。 2.计算f (x)在区间中点处的值f (x1)。 3.判断若f (x1) = 0,则x1即是根,否则检验: (1)若f (x1)与f (a)异号,则知解位于区间[a, x1],
b1=x1, a1=a;
(2)若f (x1)与f (a)同号,则知解位于区间[x1, b],
•卡尔丹诺把冯塔纳的三次方程求根公式,写进了 自己的学术著作《大法》中,但并未提到冯塔纳的
名字。 • 由于第一个发表三次方程求根公式的人确实是卡
尔丹诺,因此后人就把这种求解方法称为“卡尔丹 诺公式”。
后来,卡尔丹诺的学生弗瑞里(Ferrari)又提出了 四次方程的解法。 但对于五次方程求根,求索工作始终没有成效, 导致人们对高次代数方程解的存在性产生了怀疑。 1828年17岁的法国数学家伽罗华(E· Galois 18111832)写出了划时代的论文“关于五次方程的代数 解法问题”,指出即使在公式中容许用n次方根, 并用类似算法求五次或更高次代数方程的根是不可 能的
• 当时的另一位意大利数学家兼医生卡尔丹诺,对 冯塔纳的发现非常感兴趣。他几次诚恳地登门请 教,希望获得冯塔纳的求根公式。 •后来,冯塔纳终于用一种隐晦得如同咒语般的语 言,把三次方程的解法“透露”给了卡尔丹诺。 冯塔纳认为卡尔丹诺很难破解他的“咒语”,可 是卡尔丹诺通过解三次方程的对比实践,很快就 彻底破译了冯塔纳的秘密。
xk 1 ( xk )
k
( k 0,1, 2,)
lim xk x .
当(x)连续时,显然x*就是方程x=(x)之根(不动点).
于是可以从数列{xk}中求得满足精度要求的近似根.
这种求根方法称为不动点迭代法,
xk 1 ( xk ) ( k 0,1, 2,) 称为迭代格式, (x)称为迭代函数, x0 称为迭代初值,
文章呈交法兰西科学院后,因辈份太低遭到冷 遇,且文稿丢失。1830年伽罗华再进科学院递
稿,得到泊松院士的判词“完全不能理解”。
后来伽罗华命运不佳,投考名校巴黎工科大学 落榜,屈就高等师院,并卷入政事两次入狱, 被开除学籍,又决斗受伤,死于1832年。决斗
前,他把关于五次代数求解的研究成果写成长
ba ε k 2
ba |x x*| 第1步产生的 有误差 1 2 ba |x x*| 第 k 步产生的 xk 有误差 k 2k
x1 ab 2
ln b a ln ε k
ln 2
①简单; ② 对f (x) 要求不高(只要连续即可) . ①无法求复根及偶重根
由于每一区间都是前一区间的一半,因此区间 [an , bn]的长度为
1 bn an n (b a ) 2 若每次二分时所取区间中点都不是根,则上述过程将
无限进行下去. 当 n→∞ 时,区间必将最终收缩为一 点x* ,显然x*就是所求的根.
误差
分析:
对于给定的精度 ,可估计二分法所需的步数 k :
在前几个世纪中,曾开发出一些求解代数方程的 有效算法,它们构成了数值分析中的古典算法。至 于超越方程则不存在一般的求根方式。
1.根的存在性
(3.1.1)
定义: 如果存在 x* 使得
wk.baidu.com
* x f ( x ) 0 ,则称 为方程(3.1.1)
*
的根或函数 f ( x) 的零点。
定理1:设函数 f (x) 在区间[a, b]上连续,如果f (a) f (b) < 0, 则方程 f (x) = 0 在[a, b]内至少有一实根x*。
(1) 迭代格式; (2) 迭代格式的收敛性的构造分析; (3) 迭代格式的收敛速度与误差分析。
3.2.1 不动点迭代法
将方程f(x)=0改写为等价方程形式 x=(x).
(3.2.1)
若要求x*满足f(x*)=0,则x*=(x*);反之亦然,称x*为 函数(x)的一个不动点. 求f(x)的零点就等于求(x)的 不动点,选择一个初始近似值x0,将它代入(3.2.1)右 端,即可求得 x1=(x0).
m重根

f ( x) 0
(3.1.1)
f ( x) ( x x* ) m g ( x)
* * g ( x ) 0 , m x 为正整数, 则当 m=1 时,称 为方程(3.1.1) 其中,
* 的单根或函数 f ( x) 的单零点。 当 m 2 时, 称 x 为方程(3.1.1)
和终点x0 + h的函数值,若
f ( x0 ) f ( x0 h) 0
那么所求的根x*必在x0与x0+h之间,这里可取x0或x0+h 作为根的初始近似。
例1:考察方程
f ( x) x x 1 0
3
x 0 0.5 1.0 1.5
f (x) 的符号




(3) 二分法*(对分法)
0 1 2 3 4 5 6 7
0(-) 0(-) 0(-) 0(-) 0.0625(-) 0.0625(-) 0.078125(-) 0.0859375(-)
0.5(+) 0.25(+) 0.125(+) 0.0625(-) 0.09375(+) 0.078125(-) 0.0859375(-)
1( + ) 0.5( + ) 0.25( + ) 0.125( + ) 0.125( + ) 0.09375( + ) 0.09375( + ) 0.09375( + )
x* (0,1)
用二分法求解,要使 xk x* 0.5 10 2,只要
1 0 2 0.5 10 2 k 1
解得 k
2 6.64,取 k 7 lg 2
。所以只要二等分7次,即可求得满
足精度要求的根。计算过程如下表所示
表3.1
k f(ak)及符号 f(xk)及符号 f(bk)及符号
a1=x1, b1=b。 反复执行步骤2、3,便可得到一系列有根区间:
[a, b] [a1, b1 ] [a2 , b2 ] [an , bn ]
4、当
bk 1 ak 1
xk 1 1 ( a k bk ) 2
时,停止; 即为根的近似。
注:
bn an 0 ,即这些区间必将收缩于一点,也就是 当 n 时,
方程的根。在实际计算中,只要[an , bn ] 的区间长度小于预定容 许误差 就可以停止搜索,即
ba n 2
然后取其中点 xn 作为方程的一个根的近似值。
x e 例2 证明方程 10 x 2 0 存在唯一的实根
x* (0,1)
2 0.5 10 用二分法 求出此根,要求误差不超过 。
信,留了下来。
十四年后,法国数学家刘维尔(J· Liouville)整理并 发表了伽罗华的遗作,人们才意识到这项近代数学 发展史上的重要成果的宝贵。 38年后,即1870年,法国数学家若当(C· Jordan) 在专著《论置换与代数方程》中阐发了伽罗华的思 想,一门现代数学的分支 — 群论诞生了。
可以如此反复迭代计算 xk+1=(xk) (k=0,1,2,).
(3.2.2)
(x)称为迭代函数. 如果对任何x0∈[a, b],由(3.2.2)得
到的序列{xk}有极限
lim xk x .
k

则称迭代方程(3.2.2)收敛. 且x*=(x*)为(x)的不动点, 故称(3.2.2)为不动点迭代法. 上述迭代法是一种逐次逼近法,其基本思想是将 隐式方程(3.1.1)归结为一组显式的计算公式(3.2.2), 迭代过程实质上是一个逐步显式化过程.
不论出现哪种情况, (a1, b1)均为新的有根区间, 它 的长度只有原有根区间长度的一半, 达到了压缩有根 区间的目的.
对压缩了的有根区间, 又可实行同样的步骤, 再压 缩. 如此反复进行, 即可的一系列有根区间套
[a , b] [a1 , b1 ] [an , bn ]
3
3.1 引言
方程(组)的迭代解法
本章主要讨论求解单变量非线性方程
f ( x) 0
(3.1.1)
其中 x R , f ( x) C[a, b], [a, b]也可以是无穷区间.
如果实数 x *满足 f ( x*) 0,则称 x *是方程(3.1.1)的 根,或称 x *是 f ( x) 的零点.
若f(x)比较复杂, 还可将方程f(x)=0化为一个等价 方程(x)=(x), 则曲线y=(x)与y=(x)之交点A(x*,y*) 的横坐标 x*即为原方程之根, 据此也可通过作图求得 x*的隔根区间.
如求解方程
x 10
x
的近似根
1 方法1: 将方程同解变换成 lg x x 然后画两条曲线
相关文档
最新文档