西安交通大学《计算方法》课程课件-第五章
《计算方法》PPT课件
就可以得到一个递推公式
uk uk1x ank ,
k=1,2, …,n (1.3)
这样的计算过程只需要计算n次乘法和n次加法。 这种算法和上一种算法相比,不仅逻辑结构简单, 而且计算也明显地减少了。多项式求值的这种算法 称为秦九韶算法(计算框图见图1.2)。
2020/12/7
.
10
1.2 误差的来源及其基本概念
5
2020/. 12/7
5.
⒊得不到准确解时,设法得到近似解
例:求 x a, a 已0知数。
由数学中的极限理论可知,
当lim n
xn
x时(,极限存在)
有:lim n
xn1
lim
n
1 2
( xn
a xn
)
即x 1 ( x a )
2
x
于是 x2 a, a 0, x a
又∵n只能有限,∴x是近似值。
2020/12/7
.
6
在计算方法中,我们还将讨论: ⒋解的特性(近似程度,敛散性) ⒌各种方法的优缺点(速度,存储量) ⒍各种方法的实用范围(收敛范围)
7
2020/. 12/7
7.
⑵ 一个好的方法应具有如下特点:
第一,面向计算机,要根据计算机特点提供实际可行的 有效算法,即算法只能包括加、减、乘、除运算和逻辑运 算,是计算机能直接处理的。
计算方法
1
1.1 计算方法研究的对象和特点
计算方法实际上就是计算机上使用的数值计算方法,所 以这门课程又称为数值计算方法或数值分析。它是专门研究 求解各种数学问题的数值计算方法。现在,由于大多数科学 计算都比较复杂,人工计算无法完成;而计算机科学的迅速 发展和广泛应用提供了解决这些复杂问题的新途径。
计算方法第五章4-5节
i 0
i
n i
求解时与梯形法(2.7)相同,要用迭代法方可算出 yn 1 .
p p i
yn 1
a
i 0
yn i h bi f n i ,
i 1
(4.1) (2.7)
yn 1 yn
h 2
[ f ( xn , y n ) f ( xn 1 , yn 1 )],
xn
到
积分求得.
10
也可以利用(4.4)由 c1
cr 0
p
推出, 对比
yn 1 yn h bi f n i
i 1
与
yn 1
cq
p
1 q!
p q
p q 1
{ [ ( i ) ak 1 q ( i ) 1
p i 0 i 1 i 1
若b1
0
,则令 c1
cr 0
来求得
b0 , b1 , , bp
11
.
以
p 2 为例,由
c1 c2 c3 0
,根据
b1 b0 b1 b2 1, 2(b1 b 2b2 ) 1, 1 3( b1 b 4b2 ) 1, 1
3
1
h 12 h
4
2
24 h
5
3
720
106 f n 2 19 f n 3 )
17
例6 用四阶Adams显式和隐式方法解初值问题
y y x 1, y (0) 1.
取步长 h 0.1. 解 本题
f n yn xn 1, xn nh 0.1n
(1.1) (5.2) (1.2)
西安交大计算方法A考点总结【1-9章】
x* xk 0
计算方法 A 知识点总结 仅供参考[2014 级化机]
矩阵收敛的充要条件是 lim
k
A* Ak 0
lim Bk 0 谱半径 B 1
k
2、迭代法的一般格式 3、雅克比迭代
xk 1 Bxk g (注:B 是个对角元素均为 0 的方阵)
i 1 n bi aij xjk 1 aij xjk ) j 1 j i
SOR 迭代格式(加松弛因子 w) : xi 变形为 xSOR
k 1 k 1 1 xk xG S
k 1
xik rik 1 / aii
改进平方根法:A=LU=LDLT 比平方根法多了 5、追赶法(三对角方程组) 本质是三对角矩阵的 LU 分解。 6、向量范数
x
非负性;齐性;三角不等式。
x1 x
2
元素绝对值之和; 元素平方和的平方根; 元素绝对值的最大值;
x
7、矩阵范数
A
非负性;齐性;三角不等式;相容性。
A1 A2
列范数(第 1 到第 n 列元素绝对值之和的最大值) 谱范数( AT A 的特征值的最大值的平方根) 行范数(第 1 行到第 n 行元素绝对值之和之和的最大值)
Dxk 1 1 Dxk Exk 1 Fxk b
1)迭代法收敛的充分条件:迭代矩阵 B 的范数 2)迭代法收敛的充要条件: lim B
k k
B 1
0 谱半径 B 1
3)超松弛迭代法收敛的必要条件是: 0 2
计算方法 A 知识点总结 仅供参考[2014 级化机]
第一章 1、误差的来源与分类:模型误差、观测误差、截断误差、舍入误差。 2、准确到 n 位小数:
西安交通大学计算方法C讲义--资料
计算方法(C)目录第1章绪论1.1 数值计算1.2 数值方法的分析1.2.1计算机上数的运算1.2.2算法分析第2章线性代数方程组2.1 Gauss消去法2.1.1消去法2.1.2主元消去法2.2 矩阵分解2.2.1Gauss消去法的矩阵意义2.2.2矩阵的LU分解及其应用2.2.3其他类型矩阵的分解2.2.4解三对角矩阵的追赶法2.3线性方程组解的可靠性2.3.1向量和矩阵范数2.3.2残向量与误差的代数表征2.4解线性方程组解的迭代法2.4.1基本迭代法2.4.2迭代法的矩阵表示2.4.3收敛性第3章数据近似3.1 多项式插值3.1.1插值多项式3.1.2Lagrange插值多项式3.1.3Newton插值多项式3.1.4带导数条件的插值多项式3.1.5插值公式的余项3. 2 最小二乘近似3.2.1 最小二乘问题的法方程3.2.2 正交化算法第4章数值微积分4.1 内插求积,Newton-Cotes公式4.1.1Newton-Cotes公式4.1.2复化求积公式4.1.3步长的选取4.1.4Romberg方法4.1.5待定系数法4.2数值微分4.2.1插值公式方法4.2.2Taylor公式方法(待定系数法)4.2.3外推法第5章非线性方程求解5.1 解一元方程的迭代法5.1.1简单迭代法5.1.2Newton法5.1.3割线法5.1.4区间方法5.2 收敛性问题5.2.1简单迭代——不动点5.2.2收敛性的改善5.2.3Newton法的收敛性5.2.4收敛速度第1章绪论1.1数值计算现代科学的发展,已导致科学与技术的研究从定性前进到定量,尤其是现代数字计算机的出现及迅速发展,为复杂数学问题的定量研究与解决,提供了强有力的基础。
通常我们面对的理论与技术问题,绝大多数都可以从其物理模型中抽象出数学模型,因此,求解这些数学模型已成为我们面临的重要任务。
一、本课程的任务:寻求解决各种数学问题的数值方法——如何将高等数学的问题回归到初等数学(算术)的方法求解——了解计算的基础方法,基本结构(否则只须知道数值软件)——并研究其性质。
计算方法课件1(崔丽鸿)
§1.3 绝对误差和相对误差
一.绝对误差 /* absolute error */
设
称
x
——准确值,x * ——近似值。
*
*
e( x ) x x 为 x 的绝对误差(简称误差) | e( x ) | 为 x * 的绝对误差限。
二.相对误差 /* relative error */
14/47
§1.1 引言
算法影响计算的精度
例2
令
设多项式为 ( x-2)9 , 我们来计算其在区间 [1.92, 2.08]上的值。
p(x) = ( x-2)9 q(x) = x9 – 18 x8 + 144 x7 – 672 x6 + 2016 x5 4032 x4 + 5376 x3 – 4608 x2 + 2304 x - 512
NY
BJ
以上是一个病态问题
/* ill-posed problem*/ 关于本身是病态的问题,还是留给数学家去头痛吧!
30/47
蝴蝶效应是气象学家洛伦兹1963年提出来的。其大意 为:一只南美洲亚马孙河流域热带雨林中的蝴蝶,偶 尔扇动几下翅膀,可能在两周后引起美国德克萨斯引 起一场龙卷风。
数值分析
理学院
崔丽鸿
教材:西安交通大学出版社
《计算方法》
作者:邓建中
2/47
主要参考书
1.《数值分析基础教程》,
李庆杨,
高等教育出版社,
2001年第1版
3/47
主要参考书
2.《数值方法和MATLAB实现与应用》, (美) Gerald Recktenwald 著 伍卫国 万群 张辉 等译, 机械工业出版社,
西安交通大学计算方法(C)讲义
资料范本本资料为word版本,可以直接编辑和打印,感谢您的下载西安交通大学计算方法(C)讲义地点:__________________时间:__________________说明:本资料适用于约定双方经过谈判,协商而共同承认,共同遵守的责任与义务,仅供参考,文档可直接下载或修改,不需要的部分可直接删除,使用时请详细阅读内容计算方法(C)目录第1章绪论1.1 数值计算1.2 数值方法的分析计算机上数的运算算法分析第2章线性代数方程组2.1 Gauss消去法消去法主元消去法2.2 矩阵分解Gauss消去法的矩阵意义矩阵的LU分解及其应用其他类型矩阵的分解解三对角矩阵的追赶法线性方程组解的可靠性向量和矩阵范数残向量与误差的代数表征解线性方程组解的迭代法基本迭代法迭代法的矩阵表示收敛性第3章数据近似3.1 多项式插值插值多项式Lagrange插值多项式Newton插值多项式带导数条件的插值多项式插值公式的余项3. 2 最小二乘近似3.2.1 最小二乘问题的法方程3.2.2 正交化算法第4章数值微积分4.1 内插求积,Newton-Cotes公式Newton-Cotes公式复化求积公式步长的选取Romberg方法待定系数法数值微分插值公式方法Taylor公式方法 (待定系数法)外推法第5章非线性方程求解5.1 解一元方程的迭代法简单迭代法Newton法割线法区间方法5.2 收敛性问题简单迭代——不动点收敛性的改善Newton法的收敛性收敛速度第1章绪论1.1数值计算现代科学的发展,已导致科学与技术的研究从定性前进到定量,尤其是现代数字计算机的出现及迅速发展,为复杂数学问题的定量研究与解决,提供了强有力的基础。
通常我们面对的理论与技术问题,绝大多数都可以从其物理模型中抽象出数学模型,因此,求解这些数学模型已成为我们面临的重要任务。
本课程的任务:寻求解决各种数学问题的数值方法——如何将高等数学的问题回归到初等数学(算术)的方法求解——了解计算的基础方法,基本结构(否则只须知道数值软件)——并研究其性质。
计算方法课件
(2) 构造迭代公式
xk1 g(xk ), (k 0,1,2,)
在有根区间【a,b】上取一点 x0 (初始近似根)作为方程的近似值,代 入上面公式右端,求得 x1 g(x0 ) ,在把 x1 作为预测值,得到
x2 g(x1), 如此反复进行下去,得到一个近似根的序列
| g(x) | q 1
则迭代公式 xk1 g(xk ) 对于任意初值 x0 [a,b] 均收敛于方程
x g(x) 在区间 [a,b] 上的惟一根 x*, 且有如下误差估计式
q
qk
| x * xk | 1 q | xk xk 1 | 1 q | x1 x0 |
二. 误差
1. 误差的来源 模型误差:由于数学建模过程中往往要忽略一些次要的因 素而产生的,它是实际问题的客观量与其理论数学模型 精确解之间的差。(不讨论)
观测误差:在数学模型中的数据如果是从观测得到的,由 此产生的误差叫做观测误差。(不讨论)
截断误差(方法误差):数学模型的精确解与近似算法的 解之间的差成为该算法的截断误差。
断 f (x) 的符号,逐步将有根区间缩小,直至有根区间足够的小,便求 出满足精度要求的近似根。
a x*
b
a
x*
b
■
bk
ak
bk 1
ak1 2
ba 2k
令
xk
1 2
(ak
bk ),
则
lim
k
xk
x*
误差估计式: | x * xk | (bk ak ) / 2 (b a) / 2(k1)
(3) 若 | x1 x0 | , 则停止计算;否则 x0 x1, 转(2)。
计算方法上课用PPT课件
2. 特征值定义 A x x ( x 0 ) A xx0(AI)x0 | AI|0
14
3. f ( x) 形式复杂时求根和求积分很困难。
4.线性微分方程易解, 如
“计算方法"研究对象与特点
“计算方法"是计算数学的一个分支,它研究用计算机求解数学问题的数
值计算方法及其软件实现.计算数学几乎与数学科学的一切
分支有联系,它利用数学领域的成果发展了新的更有效的
算法及其理论,反过来很多数学分支都需要探讨和研究适
用于计算机的数值方法.因此,"计算方法"内容十分广泛.但
实际问题 程序设计
数学问题 上机计算
提供计算方法 结果分析
12
基本的数学问题:
1.大型线性代数方程组Ax=b求解;
2.矩阵A的特征值和特征向量计算;
3.非线性方程 f ( x ) 0 求解(求根);
4.积分 b a
f
( x)dx计算;
5.常微分方程初值问题求解;
6.其它。
13
求精确解(值)一般非常困难。例如:
17
截断误差 在求解过程中,往往以近似替代, 化繁为简,这样产生的误差称为截断误差。
舍入误差 在计算机上运算时受机器字长的 限制,一般必须进行舍入,此时产生的误 差称为舍入误差。
18
3. 截断误差,如
sin xxx3 x5 ....,.. 3! 5!
7
数值计算方法或数值分析主要是研究如何 运用计算机去获得数学问题的数值解的理 论和方法.对那些在经典数学中,用解析方法 在理论上已作出解的存在,但要求出他的解 析解又十分困难,甚至是不可能的这类数学 问题,数值解法就显得不可缺少,同时有十分 有效.
计算方法PPT
数 学 系 University of Science and Technology of China
第0章 绪论
计算方法的作用 计算方法的内容 误差 一些例子
DEPARTMENT OF MATHEMATICS
数 学 系 University of Science and Technology of China
学习的目的、要求
会套用、修改、创建公式 编制程序完成计算
课程评分方法 (Grading Policies)
总分 (100) = 平时作业(20)+上机作业(10)+期末 (70)
DEPARTMENT OF MATHEMATICS
数 学 系 University of Science and Technology of China
x 50.25 x 55.81
DEPARTMENT OF MATHEMATICS
数 学 系 University of Science and Technology of China
例:蝴蝶效应 —— 纽约的一只蝴蝶翅膀一拍,风和日丽的北 京就刮起台风来了?!
NY
BJ
以上是一个病态问题
/* ill-posed problem*/
内容 : 一次作业一个附件,并在内容中写出运行结果
DEPARTMENT OF MATHEMATICS
数 学 系 University of Science and Technology of China
内容
1、数值逼近-数学分析中的数值求解,如微分、积分、
b
a
f ( x)dx F (b) F (a)
DEPARTMENT OF MATHEMATICS
计算方法课件适合打印版
在F (2,3, -1, 2)中
2
(0.100 2 ) (0.110 2 ) 0.110 2
在F (2,3, -1, 2)中
(0.100 20 ) (0.111 20 ) 0.1101 21
(0.100 20 ) (0.110 21 ) 0.110 22
第1章 绪论
1.2 数值方法的分析
1.2 数值方法的分析
1.2.1 计算机上数的运算 浮点数运算结果产生误差的情况 (3)在浮点数系中数据的尾数字长t是有限
1.2.1 计算机上数的运算
浮点运算应注意
(4)在相同的指数条件下,两个数量相差较大的数字相 加(减)时,较小数的有效数字会被丧失
(1)避免产生大结果的运算,尤其是避免小数作为除数 参加运算; (2)避免“大”“小”数相加减; (3)避免相近数相减,防止大量有效数字损失; (4)尽可能简化运算步骤,减少运算次数。
算法SUM4(A,n,S) 将数组A中的数按其符号分成两组,分别按算法 SUM3求和,最后计算和S 1. 0->n1;0->n2; 2. For i=1,2,…,n 2.1 if a[i]>=0 then n1+1->n1; a[i]->b[n1]; else n2+1->n2; a[i]->c[n2]; 3. 调用SUM3(B,n1,S1); 4. 调用SUM3(C,n2,S2); 5. S1+S2->S
定义 通常以计算机完成操作 a+b*c ,即一次浮点加法 一次浮点乘法,所需的时间作为一个时间单位,称为 浮点运算,记为flop.
例1.3 设A1 , A2 , A3 , A4分别为10 20, 20 50,50 1,1100的矩阵,则按 结合律,有
西安交通大学《计算方法》课件-第一章
浮点运算原则
(1)避免产生大结果的运算,尤其是避免小数作为除数 参加运算 (2)避免“大”“小”数相加减 (3)避免相近数相减,防止大量有效数字损失 (4)尽可能简化运算步骤,减少运算次数
第1章 绪论
定义 数据相对小的变化引起解的相对大的变化的问题 称为病态问题,否则称为良态问题。
问题的性态就是指问题的解对原始数据扰动的敏感性
第1章 绪论
浮点数系运算误差
(2)计算结果的尾数多于t位数字
在F (2,3,1,2)中
(0.100 20 ) (0.111 20 ) 0.1101 21 (0.100 22 ) (0.111 21 ) 0.1000111 22
需要对结果进行舍入处理,产生的差称为舍入误差
记为F ( , t , L,U )
l
将计算机中所能表示的全体数的集合称为计算机的浮点数系
浮点数系中的数的个数是有限的,其个数为
2( 1) t 1 (U L 1) 1
第1章 绪论
浮点数系的误差
在计算机的浮点数系中,四则运算是非封闭的 为使经过算术运算产生的结果仍然要用浮点数系中的数 表示,因此必须用一个比较接近的数来代替 因此产生误差 称此误差称为舍入误差
第1章 绪论
第1章 绪论
什么是计算方法
《计算方法》介绍基本的数学问题中的主要数值方法, 介绍方法的思想、结构、条件、对输入数据的要求、生成 数据的意义、应注意的事项等 介绍数值计算中的一些最基本的概念 设计常见应用问题的数值处理方法 对数值方法的数值特性进行研究 分析方法的可靠性 分析方法的效率
第1章 绪论
问题的性态
已知问题f ( x)的输入数据只有一个 ,用x来表示 若有两个输入数据x和~ x , 则可以得到两个不同的结果f ( x)和f ( ~ x)
《计算方法第五章》PPT课件
a1h2a2h4 O (h2)
容易看出:
T 1 (h ) 4 T 0 (h /2 3 ) T 0 (h ) , T 0 (h ) T (h )
则
I[f]T 1(h ) b 2h 4 b 3 h 6
由此可得龙贝格积分法(逐次分半加倍法或梯形公式外推
T ( 1 / 8 ) 3 . 1 3 8 9 8 8 4 9 3T ( 1 / 4 ) T ( 1 / 8 ) 0 . 0 1 s t o p 用辛浦生公式
S ( 1 /8 ) T ( 1 /8 ) 1 [ T ( 1 /8 ) T ( 1 /4 ) ] 3 .1 4 1 5 9 2 5 3
法):
T0(h) T(h)
Tk(h)
22kTk1(2h2/k2)1Tk1(h)
T k ( h ) 的计算误差为 O(h2(k1) ) 。
下面,给出龙贝格积分法在计算机上实现的具体计算步骤。
引入记号 Tki , T0i T0(h/2i) , i 表示将区间[a , b] i 等分。
步骤如下:
1、求 T00, T00b 2a[f(a)f(b)]
则得到插值型求积公式,通常称为牛顿-柯特斯公式:
n
I[f]Q[f] Ai f(xi) i0
显然,公式的计算误差为:
R [f] I [f] Q [f] ( n 1 1 ) !b af( n 1 )() ( x x 0 ) ( x x 1 )( x x n ) d x
等距节点时, x i a i h ,h ( b a ) /n ( i 0 ,1 ,2 ,,n ),记 xath,t [0,n],求积系数为:
A i i(! (1 n ) n ii) h !0 n t(t 1 ) (t i 1 )(t i 1 ) (t n )d t
计算机导论-第五课(西安交大)
• 电子管,是一种在气密性封闭容器中产生电流传 导,利用电场对真空中的电子流的作用以获得信 号放大或振荡的电子器件。
5
用电平表示状态 —电子存储
6
现代计算机—流程化的计算
流水线生产方式:
1 复杂问题被分解为简 单的步骤。 2 每个步骤由专业的技 工来完成
3 所有步骤通过一个有 序递进的生产线连接 起来 。
第三代计算机(1965年—1972年)
• 其主要特征是用半导体、小规模集成电路(Integrated Circuit——IC)作为元器件代替晶体管等分立组件,用半导 体存储器代替磁芯存储器,使用微程序设计技术简化处理 机的结构,这使得计算机的体积和耗电量显着减小,而计 算速度和存储存量却有较大提高,可靠性也大大加强。
Applied Operating System Concepts
$END Data for program $RUN $LOAD
Fortran program
$FORTRAN $JOB, 10,429754
Cherry Chen
典型的
FMS JOB 结构
Applied Operating System Concepts
• 冯· 诺依曼思想
– 存储程序,顺序执行
冯· 诺依曼模型
• 计算机:存储器,算术逻辑单元,控制单 元及输入和计算机:存储器,算术逻辑单 元,控制单元及输入和
ENIAC和冯· 诺依曼
• 1946年2月,美国宾夕法尼亚大学成功研制 出了ENIAC,这是世界上第一台数字电子计 算机。 • 莫尔学院的两位青年学者——36岁物理学家 约翰•莫齐利(John Mauchly)和他的学生,24 岁的电气工程师布雷斯帕•埃克特(Presper Eckert),向戈德斯坦提交了一份研制电子计 算机的设计方案——“高速电子管计算装置 的使用”
计算机方法论-chapter 5 计算学科中的数学方法-PPT精品文档
(3)谓词表示法:用谓词来概括集合中元素的属性。
如斐波那契数列可表示为: {Fn|Fn+2=Fn+1+Fn,F0=0,F1=1,n≥0}。
集合
3.集合的运算
集合的基本运算有并、差、交、补和乘积等运算。 (1)集合的并 设A、B为两个任意集合,所有属于A或属于B的元素构成的集合C, 称为A和B的并集。可表示为:C=A∪B={x|x∈A∨x∈B}, 称为并(运算)。 例1 若A={a,b,c,d},B={b,d,e},求集合A和B的并。 解:A∪B={a,b,c,d,e} (2)集合的差 设A、B为两个任意集合,所有属于A而不属于B的一切元素构成的 集合S,称为A和B的差集。可表示为:S=A–B={x| x∈A∧xB},称为差(运算)。 例2 若A={a,b,c,d},B={b,d,e},求集合A和B的差。 解:A–B={a,c}
(A到A自身的关系),记为A2。 例7 A={0, 1, 2, 3},则 ={(0, 0), (0 3), (2 0), (2, 1), (2, 3), (3, 2)}是A上的一个关系;
A×A有16个元素。
例8 实数集R,1={(x, y)|(x, y) R2, x<y}, 1是R上的“小于”
(一)集合
论域:一定场合(语境)中思考和议论所涉 及的对象的范围。即某一范围内被论及对象 的全部所构成的集合。
1.集合的概念 集合是数学的基本概念,它是构造性数学方法的基础。
集合就是一组无重复的对象的全体。集合中的对象称为
集合的元素。
如:计算机专业学生全部必修课程可以组成一个集合,
其中的每门课程就是这一集合中的元素。
引言
数学有连续数学和离散数学之分,离散数学源于算术,连 续数学源于几何。 自牛顿开创微积分后,连续数学就以微积分为基础。 计算学科与物理等学科不同,它的根本问题是“能行性”
西安交大计算方法
西安交通大学计算方法上机实验班级:(xxx)姓名:(xxx)学号:21116010041.按两种顺序计算y,哪个接近真值?Y = 1000 + + + … +用java 语言编写:public class Add {public static void main(String[] args){double s=0,y=1000;for(double a=1001.0;a<=2000.0;a++){y+=1.0/a;}for(double a=2000.0;a>=1001.0;a--){s+=1.0/a;}s=s+1000;System.out.println("正序和"+s);System.out.println("逆序和"+y);}}运行结果:结论:显然假设是double类型的数据时,先算大数的过程吃掉了末尾的小数被进位所埋没,导致了大数吃小数的误差,按从小到大(从右向左)的计算顺序所得的结果与真值相近,而按从大到小(从左到右)的计算顺序所得的结果与真值的误差较大。
1-18.设(x) = 1 + x + + + … + , 计算(-5)和1/(5),哪个接近?解法一:用JAVA 语言编写:public class second{ public static void main(String[] args){double s1=1 ,s2=1;double e=1,sum=1; //e的初值为1,sum用来存放n!int a=1;while(sum<Math.pow(10, 1000000)){sum=a*sum;e=1.0/sum+e;a++;}double b=1.0/(e*e*e*e*e);System.out.println("较为精确的值1/e^5="+b);for(int i=1;i<=24;i++){s1+=cimi1(i);s2+=cimi2(i);}s1=1.0/s1;System.out.println("1/S24(5)="+s1);System.out.println("S24(-5)="+s2);}public static double cimi1(int ai){double xi=1;for(int i=ai;i>=1;i--){xi=xi*(5.0/i);}return xi;}public static double cimi2(int ai){double xi=1;for(int i=ai;i>=1;i--){xi=xi*(-5.0/i);}return xi;}}运行结果:解法二:用matlab编程并运行,如下:(1)计算(-5)运行结果如下:(2)计算1/(5)运行结果如下:而的真是结果为0.006737946比较得1/(5)的计算结果与真实值更接近解法三:也可以用C++编写:#include "stdafx.h"#include"stdio.h"#include "iostream"using namespace std;int main(int argc, char* argv[]){ int func1(int );double func2(int);double y=0;int i;for(i=1;i<25;i++){ int z=func1(i);double e=func2(i);y+=z/e;}cout<<"----------------------------------------"<<endl;cout<<"1/S(5)的运算结果是:"<<" "<<1.0/(y+1)<<endl;cout<<"----------------------------------------"<<endl;return 0;}int func1(int x){int y=1;int k;for (k=0;k<x;k++)y*=5;return y;}double func2(int n){double y=1;int j;for (j=1;j<=n;j++)y*=j;return y;}运行结果如下图:结论:通过比较上述的几种编程结果,可以看出1/S(5),更接近真实值,而且用matlab更为简便,可以直接利用函数库,并可以轻松的嵌入秦九韶算法,大大减少运算量和时间。
计算方法课件5
f ( x) f (1.5) 2.375 0 f (1.25 ) -1.796875 0 f (1.375) 0.162109 0 f (1.313) -0.840553 0 f (1.344) -0.346940 0 f (1.360) -0.086144 0 f (1.368) 0.045804 0 f (1.364) -0.020299 0
在科学研究中,常常会遇到非线性方程或非线 性方程组的问题。例如解方程
x 10 x 35 x 50 x 24 0
4 3 2
或eຫໍສະໝຸດ x x sin 0 2
一般的,我们记非线性方程为
f x 0
5/47
§5.1 引言
一. 非线性方程定义
方程f
(x)=0,
本节内容
一.
二. 三. 四. 五. 六.
原理
过程
方法
二分法收敛性 二分法优缺点 二分法的N-S图
返回章节目录
15/47
§5.2 二分法
二分法(Bisection Method)又叫对分法,是一 种直接法,直观、简单。 一. 原理
设
f (x)=0在[a, b]内连续,严格单调,且
方程有没有根,有几个根?
n次代数方程至少有一个根。
f (x)=anxn+an-1xn-1+……+a1x+a0=0
其中:n—正整数,x—复变量, a0—an为实、复常数。
定理2:n
次代数方程有 n 个根。
10/47
§5.1 引言
2.
根的分布(有根区间)
求根的隔离区间,定一个[a, b],使[a, b]内有 且只有一个x*使f(x*)=0 定理3:设函数f(x)在[a, b]内连续,严格单调, 且f(a)*f(b)<0,则在[a, b]内f(x)=0有且仅有一 个实根。 通常有两种做法来确定隔离区间: (1)作y = f(x)的草图,看f(x)在x轴的交点位 臵来定区间[a, b] (2)逐步搜索,在连续区间[a, b]内,选取适 当的x1,x2(a, b),若f(x1)*f(x2)<0,则[x1, x2] 内有根。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
特点
(1)速度快:Newton迭代法比简单迭代法收敛快
(2)由于要计算导数,因此计算量稍大
可以使用一点Newton迭代法
x ( k 1)
(k ) (k ) f ( x ) f ( x ) (k ) x( k ) x , k 0,1, 2... (k ) (0) f ( x ) f ( x )
因此,由连续函数的介值定理知, , 必有x* [a, b], 使 ( x* ) 0
即有x* ( x* ), 因此, ( x)在[a, b]中存在不动点x* (2)证明根唯一 __ __ __ 若 ( x)在[a, b]还有一个不动点 x ,使 x = ( x ),则
x x (x ) ( x) q x x x x
第5章 非线性方程求解 5.2 收敛性问题 5.2.1 简单迭代---不动点
证明: (1)证明有根 由条件(2)知,函数 ( x)连续 ,构造辅助函数 ( x) x ( x)
则 ( x)在[a, b]上也连续 ,由条件(1)知 ( a ) a (a) 0 同理 (b) b (b) 0
否则令x
(k )
x ,取I
( k 1)
(k )
=[ x , x( k 1) ]
( k 1)
__
(4)计算区间长度,若 x
x
x( k ) x( k 1) < , 则停止,令x , 输出 2
*
否则,令k k 1, 转(2)
第5章 非线性方程求解 5.2 收敛性问题 5.2.1 简单迭代---不动点
x( k 1) ( x( k ) ), k 0,1, 2,...
(5-3)
当给定初始近似值x(0)后,只需逐次计算函数值, 可获得迭代序列{x( k ) }
由于这一迭代过程十分简单, 因此称为简单迭代法
( x)称为迭代函数
迭代格式的获得 将(5 1)改写为x ( x), 可得到形如(5 - 3)的等价方程 不动点 若 ( x)为连续函数, 则当迭代式(5 - 3)产生的序列{x( k ) }收敛
演示
x(0) 0时收敛
x(0) 1时收敛
x(0) 1.5时不收敛
取x( k 1) ln( x( k ) 2), k 0,1, 2,... x(0) 1.5时收敛
当x(0) (1.841406, )时收敛 当x(0) (2, 1.841406)时不收敛
第5章 非线性方程求解
x
(k )
( k 1) ( k ) f ( x( k ) ) f ( x( k ) ) ( x x ) / 1 ( k 1) ( k 1) f ( x ) f ( x )
第5章 非线性方程求解 5.1 解一元方程的迭代法 5.1.4 区间方法
第5章 非线性方程求解 5.1 解一元方程的迭代法 5.1.3 割线法
为避免求导数值, 可以通过( x( k 1) , f ( x( k 1) ))和( x( k ) , f ( x( k ) ))
的线性插值公式近似f ( x)
f ( x( k ) ) f [ x( k 1) , x( k ) ]( x x( k ) ) 0 得到割线法的迭代式
则任取x [a, b],由迭代公式x
(0) ( k 1) (k )
(k ) 生成的序列 x =(x )
必收敛于在[a, b]中的唯一不动点x* = ( x* )
且有误差估计
x* x ( k ) 1 ( k 1) ( k ) q k (1) (0) x x x x 1- q 1- q
割线法的迭代公式可以写为
x( k 1) ( x( k ) , x( k -1) )
因此,称其为两步法方法 其速度比简单方法快,比Newton方法慢
当x( k ) , x( k 1) 接近于x*时, f ( x( k ) ), f ( x( k -1) )也较接近,因此会引起较大误差
x
( k 1)
并且满足 lim x ( k ) x*时, 有x* ( x* )
则x 为方程(5-1)的解,也称为 ( x)的不动点
*
k
第5章 非线性方程求解 5.1 解一元方程的迭代法 5.1.1 简单迭代法
例 5.1 设方程x e x - 2 0, 在[0,1]中有一解
得到迭代格式 ( x) x - f ( x), 取x(0) 0
x( k ) x* ( x( k 1) ) ( x* ) q x( k 1) x* q k x(0) x*
(k ) * 由于q 1 ,当k 时, qk 0,由此可知 x x 0
因此{x( k ) }收敛 且收敛于 ( x)在[a, b]中的唯一的不动点x*
x* lim x( k )
k
第5章 非线性方程求解 5.2 收敛性问题 5.2.1 简单迭代---不动点
(4)证明迭代格式误差 取m k , 有 x( m1) x( m) ( x( m) ) ( x( m1) ) q x( m) x( m1) q mk x( k 1) x( k )
思想: 迭代过程确定了一个区间的序列{I ( k ) } ,使每个区间I ( k )
都包含方程的一个解x* , 且区间I ( k )长度趋向于零 ,则当区间长度
足够小时, 必有区间中的任一点与x*的差小于给定误差值 , 则
可取区间中的任一点作为x*
要解决的问题: (1)初始区间的确定
满足f ( x0 ) f ( x1 ) 0的区间[ x0 , x1 ]都可以作为初始区间
例.非线性方程求解
演示
第5章 非线性方程求解 5.1 解一元方程的迭代法 5.1.2 牛顿迭代法
设第k次近似x( k )已知 ,以x( k )处的两个函数信息f ( x( k ) )和f ( x( k ) ) 构造Newton插值多项式
l ( x) f ( x( k ) ) f ( x( k ) )( x - x( k ) )
同理 x( k 1) x( k ) q k x(1) x(0)
x( m1) x( k ) ( x( m1) x( m) ) ( x( m) x( m1) )
x ( j 1) x( j )
q j k x ( k 1) x ( k ) 1 q mk 1 ( k 1) ( k ) 1 q mk 1 k (1) (0) x x q x x 1 q 1 q
f ( x) an xn an-1 xn-1 a1 x a0 0的方程,其中n 1
只有当f ( x)为不超过4次的多项式时,可使用公式求出其解
第5章 非线性方程求解 5.1 解一元方程的迭代法
可以使用迭代法获得f ( x) 0的近似解
需要讨论以下几个问题 (1)迭代格式的构造
* * * *
__
__
__
__
矛盾
因此,x*为唯一的一个不动点.
第5章 非线性方程求解 5.2 收敛性问题 5.2.1 简单迭代---不动点
(3)证明迭代格式收敛
由条件(1)知,任取x(0) [a, b] ,由迭代格式产生的x( k ) [a, b], k 0,1, 2,... 由条件(2)知,
x ( k 1)
(k ) f ( x ) x( k ) , k 0,1, 2,... (k ) ( k 1) f (x ) f (x ) x ( k ) x ( k 1)
或 x
( k 1)
(k ) ( k 1) x x (k ) x( k ) f ( x ), k 0,1, 2,... (k ) ( k 1) f (x ) f (x )
令m , q m-k 1 0 , x( m1) x* 得证
j k
m
+( x( k 1) x( k ) ) |
j k m
第5章 非线性方程求解 5.2 收敛性问题 5.2.1 简单迭代---不动点
分析
1 ( k 1) ( k ) (1) 由 x x x x 1- q 可以用相邻两步的近似误差来做事后估计 k q (2) 由 x* x( k ) x(1) x(0) 1- q 可以对误差进行先验估计 ,即根据误差确定迭代次数
在局部代替函数f ( x) ,有 f ( x( k ) ) f ( x( k ) )( x - x( k ) ) 0 得到 f ( x(k ) ) (k ) ( k 1) xx x f ( x ( k ) )
这一迭代方法称为Newton迭代法
其迭代函数为 f ( x) ( x) x f ( x)
(2)计算区间I [ x , x
k (k )
__
1 ] 的中点 x ( x( k ) x ( k 1) ) 2 __ __ __ (k ) ( k 1) ( k 1) (k ) (3)若f ( x ) f ( x ) 0, 则令x x ,取I =[x , x ],
( k 1) __
第5章 非线性方程求解
第5章 非线性方程求解 5.1 解一元方程的迭代法
一个变量的非线性方程是指形如以下形式的方程 f ( x) 0
其中,f ( x)是实变量x的非线性实单值函数
满足方程(5-1)的实数x* , 使f ( x* ) 0成立 ,称为非线性方程(5 1)的解
(5-1)
一元非线性方程是指f ( x)是多项式的非线性方程 ,即形如
x ( k 1) f ( x ( k ) ) x ( k ) f ( x ( k 1) ) , k 0,1, 2,... (k ) ( k 1) f (x ) f (x )