第一章数值计算方法与误差分析
数值分析(01) 数值计算与误差分析
数值分析
数值分析
一、误差的来源
1、数学模型
数学模型是通过科学实验或者观察分析一系列数据 后,用数学作为工具近似地描述客观事物的一种数学表 达式。
在数学模型中,往往包含了若干参量如物体比重、阻 力系数、热交换系数等,这些物理参数通常由实验仪器测 得,根据仪器的精密程度,物理参数的确定也会产生一定 的误差。
(4)在研究区左端连续注入浓度为C0的废水,废水中的 污染物不发生吸附解吸和衰变;
(5)对流弥散是一维的。
数值分析
数值分析
基于以上假设,定浓度注入污染物一维迁移的数学物理方程为:
方程的解为:
c(ctx,0D) 0x2c,20Vxxc
,0
x
, t
0
c(0,
t)
c0
,
0
t
c(,t) 0, 0 t
有递推公式
sn sk
axn sk 1
ak
k n 1, ,2,1,0
Pn (x) s0
需乘法n次,加法n次,存储单元n+3个。
数值分析
数值分析
算法1 (输入a(i)(i=0,1,…,n),x;输出y)
t 1 u a(0)
注意
for i 1 : n
t x*t
u u a(i)* t
end
Hale Waihona Puke 的基础.数值分析数值分析
一、数值分析的特点
现代科学的三个组成部分: 科学理论,科学实验,科学计算
科学计算的核心内容是以现代化的计算机及数学软 件为工具,以数学模型为基础进行模拟研究。
计算数学,计算物理学,计算力学,计算化学, 计算生物学,计算地质学,计算经济学,等等
数值分析
BIT数值分析第一章误差
PI=3.14=0.314101 则其绝对误差为:0.510-3101=0.5 10-2
1.2.3 有效数字(8) 有效数字与相对误差的关系 相对误差限 有效数字 如果 x*的相对误差限满足:
1 εr 10 n 1 2( a1 1)
则x*至少有 n 位有效数字。
1.2.3 有效数字(8)
1.2.1 误差的来源与分类 1.2.2 绝对误差、相对误差 1.2.3 有效数字
1.2.1 误差的来源与分类(1)
• 模型误差
反映实际问题有关量之间关系的计算公式,即数 学模型,通常只是近似的。由此产生的数学模型的解 与实际问题的解之间的误差称为模型误差。
• 观测误差
由观测得到的数据与实际的数据之间的误差,称 为观测误差。
1.2.3 有效数字(7)
有效数字与相对误差的关系
有效数字 相对误差限
m x 0 . 10 已知 有 n 位有效数字,则其相 1 n 对误差限为:
1 r 10n 1 21
1.2.3 有效数字(8)
证明:
1 1 n m x x 10 10 10mn 2 2 1 m n 10 1 1 n 2 r * 10 x 0.1 n 10m 21
例1-2:设a=-2.18和b=2.1200是分别由准确值x 和y经过四舍五入而得到的近似值,问: (a), (b), r (a), r (b) 各是多少? 解: (a) 0.005 (b) 0.00005mm
0.005 r (a) 0.23% a 2.18 0.00005 r (b) 0.0024% b 2.1200
1 0.333333 3
计算方法与计算 实验一误差分析
% 输出的量--每次迭代次数k和迭代值xk,
%
--每次迭代的绝对误差juecha和相对误差xiangcha,
误差分析
误差问题是数值分析的基础,又是数值分析中一个困难的课题。在实际计算 中,如果选用了不同的算法,由于舍入误差的影响,将会得到截然不同的结果。 因此,选取算法时注重分析舍入误差的影响,在实际计算中是十分重要的。同时, 由于在数值求解过程中用有限的过程代替无限的过程会产生截断误差,因此算法 的好坏会影响到数值结果的精度。 一、实验目的
因为运行后输出结果为: y 1.370 762 168 154 49, yˆ =1.370 744 664 189
38, R 1.750 396 510 491 47e-005, WU= 1.782 679 830 970 664e-005 104 . 所
以, yˆ 的绝对误差为 10 4 ,故 y
③ 运行后输出计算结果列入表 1–1 和表 1-2 中。
④ 将算法 2 的 MATLAB 调用函数程序的函数分别用 y1=15-2*x^2 和
y1=x-(2*x^2+x-15)/(4*x+1)代替,得到算法 1 和算法 3 的调用函数程序,将其保
存,运行后将三种算法的前 8 个迭代值 x1, x2 ,, x8 列在一起(见表 1-1),进行
的精确解 x* 2.5 比较,观察误差的传播.
算法 1 将已知方程化为同解方程 x 15 2x2 .取初值 x0 2 ,按迭代公式
xk1 15 2xk2
计算方法(1)-数值计算中的误差
* r
(
x)
1)乘方运算结果的相对误差增大为原值 x的p倍,降低精度.
2)开方运算结果的相对误差缩小为原值
x的1/q倍,精度得到提高.
三.算例的误差分析
x
3
2 2
1 1
24
§6 算法的数值稳定性
一.算法稳定性的概念
凡一种算法的计算结果受舍入误差的影 响小者称它为数值稳定的算法.
例4 解方程 x2 (109 1)x 109 0
方程精确解: x1 10 9 , x2 1
利用求根公式
x1,2
b
b2 4ac 2a
x1 10 9 , x2 0
25
当多个数在计算机中相加时,最好从
绝对值最小的数到绝对值最大的数依次相
加,可使和的误差减小.
二.算法的改进
2 2
1 1
3
计算结 果
2 7/5
2 17 /12
1 ( 2 1)6
2 6
0.0040960
5
6
0.00523278
5
12
2 99 70 2
1
1 0.16666667
6
3
6
1
5
6
0.00523278
12 6
计算方法
1
第一章 数值计算中的误差
§1 引言 §2 误差的种类及其来源 §3 绝对误差和相对误差 §4 有效数字及其与误差的关系 §5 误差的传播与估计 §6 算法的数值稳定性
第一章数值计算方法与误差分析
工具求出数学问题的数值解,并对算 法的收敛性、稳定性和误差进行分析 计算的全过程。
构建一个完整的数值算法,包含着以下环节: 1. 提出数值问题(即对对象建立数学模型) 2 .构思处理数值问题的基本思想(即提出理论) 3 .列出计算公式 4 .设计程序框图
5 .编制源程序并调试
I0=
∫01
ex-1dx=
ex-1|
1 0
=
1-e-1
≈0.6321
In= 1– nIn-1 (n=1, 2, … , 9)
用四位小数计算依次得到:
0.6321, 0.3679, 0.2642, 0.2074, 0.1704
0.1480, 0.1120, 0.2160, -0.7280, 7.5520
• 定义3 若近似值x*的绝对误差限是 某一位上的半个单位,该位到x*的第一 位非零数字一共有n位,则称近似值x*有 n位有效数字,或说x*精确到该位。
• 准确数本身有无穷多位有效数字, 即从第一位非零数字以后的所有数字都 是有效数字。
有效数字举例
• 如例1中的x*1,x*2 ,x*3,分别有1,3,5位有效数字。 • 实际上,用四舍五入法取准确值x 的前n位(不
• 为了既能表示近似数的大小,又能 表示近似数的精确程度,我们下面介绍 有效数字的概念(注意:有效数字既能 表示近似数的大小,又能表示近似数的 精确程度)。
半个单位的概念
•
我们知道,当x有很多位数字时,常常按照
“四舍五入”原则取前几位数字作为x的近似值x*。
• 例1 设 x = π = 3.1415926 …
一元二次方程 X2+2pX +q=0的求解方法
根据根与系数的关系可知
数值分析(01) 数值计算与误差分析
克莱姆算法步骤
1. 2.
D for 2.1. 2.2.
( j1 jn )
t ( 1 ) a1 j1 a 2 j2 a nj n
i 1 n Di
( i1 i n ) t ( 1 ) a i1 1 bi2 j a in n
Di xi D
N=[(n2-1)n!+n]flop
每周有课外练习,两周交一次作业, 一学期完成 3 个综合程序课题设计。 考试评分: 平时作业+程序占总成绩的30%,
期末考试占总成绩的70%,开卷考试。
Matlab_zm@ 密码 123456
数值分析
数值分析
第二节 数值问题与数值算法
求数学问题的数值解称为数值问题.
数值方法:适合在计算机上,按确定顺序依次进行计算 的计算公式,也就是通常所说的数值计算方法。 数值算法:从给定的已知量出发,经过有限次四则运算
有递推公式
注意
计算量 N n flop
Pn ( x) x( x( x( x(an x an1 ) an2 ) a1 ) a0
数值分析
sn an sk xsk 1 ak P n ( x) s0
k n 1,,2,1,0
数值分析
例3 矩阵乘积AB的计算量分析
第一节 数值分析的研究对象和特点
我们把在电子计算机上进行的科学工作称为科学计算。 科学研究的方法: 科学理论,科学实验,科学计算 科学计算的核心内容是以现代化的计算机及数学软件 为工具,以数学模型为基础进行模拟研究。
数值分析
数值分析
第一节 数值分析的研究对象和特点
科学计算的步骤:实际问题→数学模型→数值方法 →程序设计→上机计算→分析结果。 1、建立数学模型(实际问题数学化) 2、设计计算方案(数学问题数值化)
第一章数值计算方法与误差分析分析
控制误差传播的例子
例10 计算积分 In=∫01 xn ex-1dx,n=0,1, 2, … , 9 利用分部积分法,可得 In= xn ex-1| 01 –∫01 ex-1dxn
=1– n∫01 xn-1 ex-1dx =1– nIn-1
从而有递推公式
I0= ∫01 ex-1dx= ex-1 | 01 = 1-e-1 ≈0.6321 In= 1– nIn-1 (n=0, 1, 2, … , 9)
所谓算法,是指对一些数据按某种规定的顺序 进行的运算序列。在实际计算中,对于同一问题我 们选用不同的算法, 所得结果的精度往往大不相同。 这是因为初始数据的误差或计算中的舍入误差在计 算过程中的传播,因算法不同而异,于是就产生了 算法的数值稳定性问题。一个算法, 如果计算结果 受误差的影响小,就称这个算法具有较好的数值稳 定性。否则,就称这个算法的数值稳定性不好。
简化计算步骤、减少运算次数、避免误差积累的例子
又如计算
1/(1*2)+1/(2*3)+…+1/(1000*1001)
的值。 若一项一项进行计算,不仅计算次数多,而 且误差积累也很大。若简化成 1-1/1001 进行计 算,则整个计算只要一次求倒数和一次减法。
(四)要避免绝对值小的数作除数
由式 ε(x1/x2)≈d(x1/x2)≈[x2ε(x1)-x1ε(x2)]/ x22 , (x2≠0) 可知,当除数x2接近于零时,商的绝对误差就可能很大。因此 , 在数值计算中要尽量避免绝对值小的数作除数, 避免的方法是把 算式变形或改变计算顺序。 例8 当x接近于0时 (1-cosx)/sinx 的分子、分母都接近0,为避免绝对值小的数作除数,可将原式 化为 (1-cosx)/sinx=sinx/(1+cosx) 例9 当x 很大时,可化 x/[(x+1)0.5-x0.5]=x[(x+1)0.5 + x0.5]
第一章 数值计算中的误差分析
时,则得 e ≈ 2.72, e ≈ 2.71828 。
不管取几位小数得到的近似数,其绝对误差都不超过末位数
的半个单位,即 e − 2.72 ≤ 1 ×10−2 , e − 2.71828 ≤ 1 ×10 −5.
2
2
� “有效数字”的概念:若近似值 x* 的绝对误差限是某一位
的半个单位,就称其“准确”到这一位,且从该位直到 x* 的
� 数值计算主要过程:实际问题→建立数学模型→设计 高效、可靠的数值计算方法→程序设计→上机计算求 出结果。
数值计算方法不同于纯数学:它既具有数学的抽象性与严 格性,又具有应用的广泛性与实际试验的技术性,它是一门与计 算机紧密结合的实用性很强的有着自身研究方法与理论系统的 计算数学课程。
1
� 数值计算方法的特点:提供能让计算机直接处理的,切
例如,用毫米刻度的直尺去测量一长度为 x 的物体,测得其
近似值为 x* = 84mm ,由于直尺以毫米为刻度,所以其误差不超
过 0.5mm,即 x − 84 ≤ 0.5(mm) 。这样,虽然不能得出准确值 x 的
长度是多少,但从这个不等式可以知道 x 范围是
83.5mm ≤ x ≤ 84.5mm ,即 x 必在[83.5mm,84.5mm]内。
根据“数值计算”的特点,首先应注意掌握数值计算方法 的基本原理和思想,注意方法处理的技巧及其与计算机的密 切结合,重视误差分析、收敛性及稳定性的基本理论;其次 还要注意方法的使用条件,通过各种方法的比较,了解各种 方法的异同及优缺点。
2
§1.2 误差与数值计算的误差估计
一、误差的来源与分类 在数值计算过程中,估计计算结果的精确度是十分重要的工 作,而影响精确度的因素是各种各样的误差,它们可分为两大类: 一类称为“过失误差”,它一般是由人为造成的,这是可以避免 的,故在数值计算中我们不讨论它;而另一类称为“非过失误差”, 这在“数值计算”中往往是无法避免的,也是我们要研究的。 � 按照误差的来源,误差可分为四种:模型误差、观测误差、 截断误差、舍入误差。 1.模型误差 用数值计算方法解决实际问题时,首先必须建立数学模型. 由于实际问题的复杂性,在对实际问题进行抽象与简化时,往往 为了抓住主要因素而忽略了于次要因素,这就会使得建立起来的 数学模型只是复杂客观现象的一种近似描述,它与实际问题之间 总会存在一定的误差.我们把数学模型与实际问题之间出现的误 差称为模型误差。 2.观测误差 在数学模型中往往包含一些由观测或实验得来的物理量,由 于工具精度和测量手段的限制,它们与实际量大小之间必然存在 误差。 3.截断误差 由实际问题建立起来的数学模型,在很多情况下要得到准确 解是困难的,通常要用数值方法求出它的近似解。例如常用有限
数值计算方法第一章 误差
1 10n1 2a1
所以 1 10n1 是 x* 的相对误差限。
2a1
若
r
1
2a1
1
10n1,
由式(1-4)
21
绝对误差、相对误差和有效数字
e x* x*er x* 0.a1a2 L an L 10mr
a1
1
10m1
2
1 a1
1
10n1
1 10mn 2
由式(1-6),x* 至少有n位有效数字。
1.3.1 基本运算中的误差估计
本节中所讨论的基本运算是指四则运算与 一些常用函数的计算。
由微分学,当自变量改变量(误差)很小时, 函数的微分作为函数改变量的主要线性部分可以 近似函数的改变量, 故利用微分运算公式可导出 误差运算公式。
24
数值计算中误差的传播
设数值计算中求得的解与参量(原始数据)
由以上各式还可得出
ex1 x2 ex1 ex2 ex1 ex2 (1-14)
er x1x2 er x1 er x2 er x1 er x2 (1-15)
er
x1 x2
er x1 er x2
er x1
er x2
(1-16)
29
数值计算中误差的传播
因此,和、差的误差限不超过各数的误差限之 和,积、商的相对误差限不超过各数的相对误 差限之和。
定义: 若x的某一近似值 x* 的绝对误差限是某一位 的半个单位, 则称其“准确”到这一位,且从该位直到
x* 的第一位非零数字共有q位,则称近似值 x* 有q
位有效数字。
16
绝对误差、相对误差和有效数字
例如, 2 的近似值1.414准确到小数点后第3位, 它具有4位有效数字。
数值计算方法第一章
第一章 绪 论本章以误差为主线,介绍了计算方法课程的特点,并概略描述了与算法相关的基本概念,如收敛性、稳定性,其次给出了误差的度量方法以及误差的传播规律,最后,结合数值实验指出了算法设计时应注意的问题.§ 引 言计算方法以科学与工程等领域所建立的数学模型为求解对象,目的是在有限的时间段内利用有限的计算工具计算出模型的有效解答。
由于科学与工程问题的多样性和复杂性,所建立的数学模型也是各种各样的、复杂的. 复杂性表现在如下几个方面:求解系统的规模很大,多种因素之间的非线性耦合,海量的数据处理等等,这样就使得在其它课程中学到的分析求解方法因计算量庞大而不能得到计算结果,且更多的复杂数学模型没有分析求解方法. 这门课程则是针对从各种各样的数学模型中抽象出或转化出的典型问题,介绍有效的串行求解算法,它们包括(1)非线性方程的近似求解方法; (2)线性代数方程组的求解方法; (3)函数的插值近似和数据的拟合近似; (4)积分和微分的近似计算方法; (5)常微分方程初值问题的数值解法; (6)优化问题的近似解法;等等从如上内容可以看出,计算方法的显著特点之一是“近似”. 之所以要进行近似计算,这与我们使用的工具、追求的目标、以及参与计算的数据来源等因素有关.计算机只能处理有限数据,只能区分、存储有限信息,而实数包含有无穷多个数据,这样,当把原始数据、中间数据、以及最终计算结果用机器数表示时就不可避免的引入了误差,称之为舍入误差.我们需要在有限的时间段内得到运算结果,就需要将无穷的计算过程截断,从而产生截断误差. 如 +++=!21!111e 的计算是无穷过程,当用!1!21!111n e n ++++= 作为e 的近似时,则需要进行有限过程的计算,但产生了截断误差e e n -.当用计算机计算n e 时,因为舍入误差的存在,我们也只能得到n e 的近似值*e ,也就是说最终用*e 近似e ,该近似值既包含有舍入误差,也包含有截断误差.当参与计算的原始数据是从仪器中观测得来时,也不可避免得有观测误差.由于这些误差的大量存在,我们得到的只能是近似结果,进而对这些结果的“可靠性”进行分析就是必须的,它成为计算方法的第二个显著特点. 可靠性分析包括原问题的适定性和算法的收敛性、稳定性.所谓适定性问题是指解存在、惟一,且解对原始数据具有连续依赖性的问题. 对于非适定问题的求解,通常需要作特殊的预处理,然后才能做数值计算. 在这里,如无特殊说明,都是对适定的问题进行求解.对于给定的算法,若有限步内得不到精确解,则需研究其收敛性. 收敛性是研究当允许计算时间越来越长时,是否能够得到越来越可靠的结果,也就是研究截断误差是否能够趋于零.对于给定的算法,稳定性分析是指随着计算过程的逐步向前推进,研究观测误差、舍入误差对计算结果的影响是否很大.对于同一类模型问题的求解算法可能不止一种,常希望从中选出高效可靠的求解算法. 如我国南宋时期著名的数学家秦九韶就提出求n 次多项式0111a x a x a x a n n n n ++++-- 值的如下快速算法n a s =;k n a t -=;t sx s += ),,2,1(n k =它通过n 次乘法和n 次加法就计算出了任意n 次多项式的值. 再如幂函数64x 可以通过如下快速算法计算出其值x s =;s s s ⋅=;循环6次如上算法仅用了6次乘法运算,就得到运算结果.算法最终需要在计算机上运行相应程序,才能得到结果,这样就要关注算法的时间复杂度(计算机运行程序所需时间的度量)、空间复杂度(程序、数据对存储空间需求的度量)和逻辑复杂度(关联程序的开发周期、可维护性以及可扩展性). 事实上,每一种算法都有自己的局限性和优点,仅仅理论分析是很不够的,大量的实际计算也非常重要,结合理论分析以及相当的数值算例结果才有可能选择出适合自己关心问题的有效求解算法. 也正因如此,只有理论分析结合实际计算才能真正把握准算法.§ 误差的度量与传播一、误差的度量误差的度量方式有绝对误差、相对误差和有效数字.定义 用*x 作为量x 的近似,则称)(:**x e x x =-为近似值*x 的绝对误差.由于量x 的真值通常未知,所以绝对误差不能依据定义求得,但根据测量工具或计算情况,可以估计出绝对误差绝对值的一个较小上界ε,即有ε≤-=x x x e **)( 称正数ε为近似值*x 的绝对误差限,简称误差. 这样得到不等式εε+≤≤-**x x x工程中常用ε±=*x x表示近似值*x 的精度或真值x 所在的范围.误差是有量纲的,所以仅误差数值的大小不足以刻划近似的准确程度. 如量m m cm s μ50001230000005.023.15.0123±=±=±=为此,我们需要引入相对误差定义 用0*≠x 作为量x 的近似,称)(:**x e xxx r =-为近似值*x 的相对误差. 当*x 是x 的较好近似时,也可以用如下公式计算相对误差***)(x xx x e r -=显然,相对误差是一个无量纲量,它不随使用单位变化. 如式中的量s 的近似,无论使用何种单位,它的相对误差都是同一个值.同样地,因为量x 的真值未知,我们需要引入近似值*x 的相对误差限)(*x r ε,它是相对误差绝对值的较小上界. 结合式和,*x 相对误差限可通过绝对误差限除以近似值的绝对值得到,即***)()(xx x r εε=为给出近似数的一种表示法,使之既能表示其大小,又能体现其精确程度,需引入有效数字以及有效数的概念.定义 设量x 的近似值*x 有如下标准形式 p n m a a a a x 21*.010⨯±=()p m p n m n m m a a a a ----⨯++⨯++⨯+⨯±101010102211 =其中}9,,1,0{}{1 ⊂=p i i a 且01≠a ,m 为近似值的量级. 如果使不等式n m x x -⨯≤-1021* 成立的最大整数为n ,则称近似值*x 具有n 位有效数字,它们分别是1a 、2a 、… 和 n a . 特别地,如果有p n =,即最后一位数字也是有效数字,则称*x 是有效数.从定义可以看出,近似数是有效数的充分必要条件是末位数字所在位置的单位一半是绝对误差限. 利用该定义也可以证明,对真值进行“四舍五入”得到的是有效数. 对于有效数,有效数字的位数等于从第一位非零数字开始算起,该近似数具有的位数. 注意,不能给有效数的末位之后随意添加零,否则就改变了它的精度.例 设量π=x ,其近似值141.3*1=x ,142.3*2=x ,722*3=x . 试回答这三个近似值分别有几位有效数字,它们是有效数吗 解 这三个近似值的量级1=m ,因为有312*110211021005.000059.0--⨯=⨯=≤=- x x 413*2102110210005.00004.0--⨯=⨯=≤=- x x571428571428.3*3=x 312*310211021005.0001.0--⨯=⨯=≤=- x x所以*1x 和*3x 都有3位有效数字,但不是有效数. *2x 具有4位有效数字,是有效数.二、误差的传播这里仅介绍初值误差传播,即假设自变量带有误差,函数值的计算不引入新的误差. 对于函数),,,(21n x x x f y =有近似值),,,(**2*1*n x x x f y =,利用在点),,,(**2*1n x x x 处的泰勒公式(Taylor Formula),可以得到)(),,,()(*1**2*1**i i ni n i x x x x x f y y y e -≈-=∑= )(),,,(*1**2*1i ni n i x e x x x f ∑== 其中ii x ff ∂∂=:,*i x 是i x 的近似值,)(*i x e 是*i x 的绝对误差),,2,1(n i =. 式表明函数值的绝对误差近似等于自变量绝对误差的线性组合,组合系数为相应的偏导数值.从式也可以推得如下函数值的相对误差传播近似计算公式)(),,,()(***1**2*1*i r ini n i r x e y x x x x f y e ∑=≈对于一元函数)(x f y =,从式和可得到如下初值误差传播近似计算公式)()()(***x e x f y e '≈)()()(*****x e yx x f y e r r '≈式表明,当导数值的绝对值很大时,即使自变量的绝对误差比较小,函数值的绝对误差也可能很大.例 试建立函数n n x x x x x x f y +++== 2121),,,(的绝对误差(限)、相对误差的近似传播公式,以及{}ni i x 1*0=>时的相对误差限传播公式. 解 由公式和可分别推得和的绝对误差、相对误差传播公式如下∑∑==≈ni i ini ni x e x e x x x f y e 1**1**2*1*)()(),,,()(=∑∑==≈ni i r i i r i ni ni r x e yx x e y x x x x f y e 1******1**2*1*)()(),,,()(=进而有∑∑∑===≤≤≈ni in i in i ix x e x e y e 1*1*1**)()()()(ε于是有和的绝对误差限近似传播公式 ∑=≈ni i x y 1**)()(εε当{}ni i x 1*0=>时,由式推得相对误差限的近似传播公式)(max )(max )(max )()()(*11***11***11****1**i r ni ni i ir n i ni i i r n i ni i r i ni ir x yx x y x x x y x yxy εεεεεε≤≤=≤≤=≤≤====≤=≈∑∑∑∑例 使用足够长且最小刻度为1mm 的尺子,量得某桌面长的近似值3.1304*=a mm ,宽的近似值8.704*=b mm (数据的最后一位均为估计值). 试求桌子面积近似值的绝对误差限和相对误差限.解 长和宽的近似值的最后一位都是估计位,尺子的最小刻度是毫米,故有误差限5.0)(*=a εmm ,5.0)(*=b εmm面积ab S =,由式得到近似值***b a S =的绝对误差近似为)()()(*****b e a a e b S e +≈进而有绝对误差限55.10045.03.13045.08.704)()()(*****=⨯+⨯=+≈b a a b S εεε mm 2相对误差限 %11.00011.08.7043.130455.1004)()(***=≈⨯=≈S S S r εε§ 数值实验与算法性能比较本节通过几个简单算例说明解决同一个问题可以有不同的算法,但算法的性能并不完全相同,他们各自有自己的适用范围,并进而指出算法设计时应该注意的事项.算例 表达式)1(1111+=+-x x x x ,在计算过程中保留7位有效数字,研究对不同的x ,两种计算公式的计算精度的差异.说明1:Matlab 软件采用IEEE 规定的双精度浮点系统,即64位浮点系统,其中尾数占52位,阶码占10位,尾数以及阶码的符号各占1位. 机器数的相对误差限(机器精度)eps=2-52≈×10-16,能够表示的数的绝对值在区间×10-308,×10308)内,该区间内的数能够近似表达,但有舍入误差,能够保留至少15位有效数字. 其原理可参阅参考文献[2, 4].分析算法1: 111)(1+-=x x x y 和算法2: )1(1)(2+=x x x y 的误差时,精确解用双精度的计算结果代替. 我们选取点集301}{=i i π中的点作为x ,比较两种方法误差的差异.从图可以看出,当x 不是很大时,两种算法的精度相当,但当x 很大时算法2的精度明显高于算法1. 这是因为,当x 很大时,x 1和11+x 是相近数,用算法1进行计算时出现相近数相减,相同的有效数字相减后变成零,于是有效数字位数急剧减少,自然相对误差增大. 这一事实也可以从误差传播公式分析出. 鉴于此,算法设计时,应该避免相近数相减.在图中我们给出了当x 接近1-时,两种算法的精度比较,其中变量x 依次取为{}3011=--i i π. 从图中可以看出两种方法的相对误差基本上都为710-,因而二者的精度相当.图 算例中两种算法的相对误差图(+∞→x )图 算例中两种算法的精度比较)1(-→x算例 试用不同位数的浮点数系统求解如下线性方程组⎩⎨⎧=+=+2321200001.02121x x x x 说明2:浮点数系统中的加减法在运算时,首先按较大的阶对齐,其次对尾数实施相应的加减法运算,最后规范化存入计算机.算法 1 首先用第一个方程乘以适当的系数加至第二个方程,使得第二个方程的1x 的系数为零,这时可解出2x ;其次将2x 带入第一个方程,进而求得1x (在第三章中称该方法为高斯消元法). 当用4位和7位尾数的浮点运算实现该算法,分别记之为算法1a 和算法1b .算法 2 首先交换两个方程的位置,其次按算法1计算未知数 (第三章中称其为选主元的高斯消元法). 当用4位和7位尾数的浮点运算实现该算法,分别记之为算法2a 和算法2b .方程组的精确解为...25000187.01=x ,...49999874.02=x ,用不同的算法计算出的结果见表.表 对算例用不同算法的计算结果比较对于算例,表中的数据表明,当用4位尾数计算时,算法1给出错误的结果,算法2则给出解很好的近似. 这是因为在实现算法1时,需要给第一个方程乘以00001.0/2-加至第二个方程,从而削去第二个方程中1x 的系数,但在计算2x 的系数时需做如下运算661610000003.0104.0103.0104.03200001.02⨯⨯⨯⨯=+⨯+=-+--对上式用4位尾数进行计算,其结果为6104.0⨯-. 因为舍入误差,给相对较大的数加以相对较小的数时,出现大数“吃掉”小数的现象. 计算右端项时,需做如下运算661610000002.0102.0102.0102.02100001.02⨯⨯⨯⨯=+⨯+=-+--同样出现了大数吃小数现象,其结果为6102.0⨯-. 这样,得到的变形方程组⎩⎨⎧⨯-=⨯-⨯=⨯+⨯62612114102.0104.0101.0102.0101.0x x x 中没有原方程组中第二个方程的信息,因而其解远偏离于原方程组的解. 该算法中之所以出现较大数的原因是因为运算00001.0/2-,因而算法设计中尽可能避免用绝对值较大的数除以绝对值较小的数. 其实当分子的量级远远大于分母的量级时,除法运算还会导致溢出,计算机终止运行.虽从单纯的一步计算来看,大数吃掉小数,只是精度有所损失,但多次的大数吃小数,累计起来可能带来巨大的误差,甚至导致错误. 例如在算法1a 中出现了两次大数吃小数现象,带来严重的后果. 因而尽可能避免大数吃小数的出现在算法设计中也是非常必要的.当用较多的尾数位数进行计算,舍入误差减小,算法1和2的结果都有所改善,算法1的改进幅度更大些. 算例 计算积分⎰+=1055dx x x I n 有递推公式),2,1(511 =-=-n I n I n n ,已知56ln0=I . 采用IEEE 双精度浮点数,分别用如下两种算法计算30I 的近似值. 算法 1 取0I 的近似值为6793950.18232155*=I ,按递推公式*1*51--=n n I nI 计算*30I 算法2 因为)139(5156)139(611039103939+⨯=<<=+⨯⎰⎰dx x I dx x ,取39I 的近似值为3333330.004583332001240121*39≈⎪⎭⎫ ⎝⎛+=I ,按递推公式⎪⎭⎫ ⎝⎛-=-**1151n n I n I 计算*30I算法1和算法2 的计算结果见表. 误差绝对值的对数图见图. 表 算例的计算结果139238337436535634 (33)25+001+0013226+001+0013127+002+002 3028+003+00329+003+00330+004+004图算例用不同算法计算结果的误差绝对值的对数图从表中的计算结果可以看出,算法1随着计算过程的推进,绝对误差几乎不断地以5的倍数增长,即有0*02*221*1*555I I I I I I I I n n n n n n n -≈≈-≈-≈-----成立. 对于逐步向前推进的算法,若随着过程的进行,相对误差在不断增长,导致产生不可靠的结果,这种算法称之为数值不稳定的算法. 对于算法1绝对误差按5的幂次增长,但真值的绝对值却在不断变小且小于1,相对误差增长的速度快于5的幂次,导致产生错误的结果,因而算法1数值不稳定,不能使用. 而算法2随着计算过程的推进,绝对误差几乎不断地缩小为上一步的1/5,即有mmn m n n n n n n n I I I I I I I I 5/5/5/*22*21*1*++++++-≈≈-≈-≈- 成立. 绝对误差不断变小,真值的绝对值随着过程向前推进却在变大,这样相对误差也越来越小,这样的方法称之为数值稳定的算法. 算法1和算法2的误差对数示意图见图. 这个算例告诉我们应该选用数值稳定的算法.知识结构图⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧⎩⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧算法设计要点数值方法的稳定性数值方法的收敛性算法多元函数一元函数传播有效数字相对误差(限)绝对误差(限)度量截断误差舍入误差误差的产生误差误差与算法 习题一1 已知有效数105.3*1-=x ,4*210125.0⨯=x ,010.0*3=x . 试给出各个近似值的绝对误差限和相对误差限,并指出它们各有几位有效数字.2 证明当近似值*x 是x 的较好近似时,计算相对误差的计算公式xxx -*和**x xx -相差一个和2*⎪⎪⎭⎫ ⎝⎛-x x x 同阶的无穷小量. 3 设x 的近似值*x 具有如式的表示形式,试证明 1) 若*x 具有n 位有效数字,则相对误差n r a x e -⨯≤11*1021)(; 2) 若相对误差n r a x e -⨯+≤11*10)1(21)(,则*x 至少具有n 位有效数字.4 试建立二元算术运算的绝对误差限传播近似计算公式.5 试建立如下表达式的相对误差限近似传播公式,并针对第1题中数据,求下列各近似值的相对误差限.1) *3*2*1*1x x x y +=; 2) 3*2*2x y =; 3) *3*2*3/x x y = 6 若例题中使用的尺子长度是80mm ,最小刻度为1mm ,量得某桌面长的近似值3.1304*=a mm ,宽的近似值8.704*=b mm . 试估计桌子长度、宽度的绝对误差限,并求用该近似数据计算出的桌子面积的绝对误差限和相对误差限. 7 改变如下计算公式,使其计算结果更为精确. 1)0,cos 1≠-x xx且1<<x 2) 1,1ln )1ln()1(ln 1>>--++=⎰+N N N N N xdx N N3) 1,133>>-+x x x8 (数值试验)试通过分析和数值试验两种手段,比较如下三种计算1-e 近似值算法的可靠性.算法1 ∑=--≈mn nn e1!)1(;算法2 101!1-=-⎪⎭⎫⎝⎛≈∑m n n e; 算法3 101)!(1-=-⎪⎪⎭⎫ ⎝⎛-≈∑m n n m e ;9 (数值试验)设某应用问题归结为如下递推计算公式72.280=y ,251-=-n n y y , ,2,1=n在计算时2取为具有5位有效数字的有效数*c . 试分析近似计算公式**1*5c y y n n -=-的绝对误差传播以及相对误差传播情况,并通过数值实验验证(准确值可以用IEEE 双精度浮点运算结果代替),该算法可靠可用吗。
数值计算方法误差
x y
x y y x
y2
, 当 x y
时,舍入误
差会扩大。
例:x, y
的舍入误差均为0.5103 ,而 y* x* 107
x ,则
y
的舍入误差为:
x
x 107 0.5 103 x 2 1014
1 5 1011 x
§1.1 误差的来源和分类
数值方法求解数学问题的过程
实际问题
抽 象 简 化
数学模型
数 值 计 算
问题近似解
模型误差:实际问题的解与数学模型的解之差. 观测误差:由观测所产生的数学问题(模型)
中参量(数据)的误差. 截断误差:数学问题的准确解与数值方法所求
得的近似解之差.
I
b
a
f
( x)dx
b 2
)
e( x1
x2 )
1 x2
e( x1 )
x1
x
2 2
e( x2 )
er ( x1 x2 ) er ( x1 ) er ( x2 )
( x1 x2 ) ( x1 ) ( x2 ) r ( x1 x2 ) r ( x1 ) r ( x2 )
af
(a)
f
(b)
I1
(ba)3 R I I1 12 f ( ) (a, b)
舍入误差:计算过程中对数字的舍取所产生 的误差.(计算机可以表示的数是有限的)
§1.2 绝对误差、相对误差和有效数字
1.2.1 绝对误差与相对误差
设x*为准确值x的一个近似值
绝对误差: e x x*
数值计算方法第01章误差
1.2 绝对误差、相对误差和有效数字
绝对误差/* Absolute error */
定义1. 设x为准确值 , x*为x的一个近似值 , 称 e(x*) x* x
为近似值x*的绝对误差 ,简称误差 ,可简记为E.
因为准确值 x 往往是未知甚至是无法 知道的
因此 E(x* ) x* x 往往也无法求出
例:计算
In
1 e
1 xne xdx ,
0
n 0,1, 2, ......
公式一:In 1 n In1
I0
1 e
1 e xdx
0
1
1 e
0.63212056
记为
I
* 0
则初始误差 E0 I0 I0* 0.5108
注意此公式精确成 立
1
e
1 0
x1=0.0315 x2=0.3015 x3=31.50 x4=5000
1.2.2 有效数字
有效数字是近似值的一种表示法。它既能表示近似值的大小,又能表示其精确程度。
若x*作为x的近似值, 其绝对误差的绝对值不 超过某一位数字的半个单位, 而该位数字到 x*的第 一位非零数字共有n位, 则称用x*近似x时具有n位 有效数字, 简称x*有n位有效数字.
1.3数值计算中误差的传播
1.3.1 基本运算中的误差估计 在数值运算中,参加运算的数若有误差,那
么一定会影响到计算结果的准确性.
例、设y=xn,求y的相对误差与x的相对误差之间的关 系。
1.3.2 算法的数值稳定性
计算一个数学问题,需要预先设计好由已知 数据计算问题结果的运算顺序,这就是算法。
且 x* x x* 准确值 x 的范围
数值计算方法课件
2020/8/1
4
1.1 算法
一、算法的概念 当我们用数值计算方法求解一个比较复杂的数学问题
时,常常要事先拟定一个计算方案,规划一下计算的步骤。 所谓算法,就是指在求解数学问题时,对求解方案和计算 步骤的完整而明确的描述。
描述一个算法可以采用许多方法,最常用的一个方法 是程序流程图。算法也可以用人的自然语言来描述。如果 用计算机能接受的语言来描述算法,就称为程序设计。
1 x ne x1d x
0
x ne x1
1 0
1 n x n1e x1d x
0
1 n 1 x n 1 e x 1 d x 0
2020/8/1
17
或
En 1 nEn1 ( n=2, 3, ...)
这里
1 E1 e 0.3678794412
E1
1 xe x1dx
0
1 xd e x 1 0
如
取
E
的
20
近
似
值
为
零
,
以
它
为
起
始
值
,
则
起
始
误
差
最
大
为
1。 21
此
误
差
在
求
E 1 9时
乘
了
1, 20
因
此
E
1
的9ຫໍສະໝຸດ 误差最大
为
1 20
1。 21
E
的
9
误
差
最
大
,
为
1 10
1 11
时 , 起 始 误 差 已 减 小 至 2.5 10 8。
1 20
1。 21
数值计算方法chap1误差
算法Ⅰ
In
5In1
1 n
按公In式 n 15In 1 (n1,2,.)..
取 I01 0x1 5dx ln 1.20.18232 I0 *155
依次计算 I1,I2, 近似值.
n
I
* n
(算法Ⅰ)
0
0.18232155
1
0.08839225
2
0.05803875
3
0.04313958
4
0.03430208
1.3.2 算法的数值稳定性
算法:预先设计计算问题近似解的运算顺序 稳定性:在按一个算法的计算过程中,数据误 差和舍入误差在计算过程中不增长,则称算法 是稳定的;否则称算法是数值不稳定的.
例: 计算下列积分的近似值
1 xn
In
dx(n 0,1,2,...) 0 x5
In5In11 0xnx 5x 5n1d x1 0xn1d xn 1
例x*: 237,且 6(4 x*)91 0140则x*有3位有效数字 .
2
定理1.1若x的近似x值 * 0.a1a2.....a.n...10m
(a1
0)有n位
有n1为
其
相 对 误 差,反 限之,若x*的 相 对 误 差 限 满 足
r
1 10n1 2(a11)
则x*至少具n位 有有效数 . 字
哪一个精度高?
相对误差:
ee er x x*
相对误差限: er r
e x*
e xe(x xx *x*)x*(ee 2 x*)1 ( x e*x )e2 *
两种误差限的关系:
r
x*
x* r
r(x)x(x*)
0.020.0 10
计算方法 第一章 误差
五、误差的传播与估计
1.误差估计的一般公式:(略) 2.误差在算术运算中的传播:大小相近的同号
数相减、乘数的绝对值很大以及除数接近于0 等,在数值计算中应设法避免。 3.前例的误差分析:从相对误差来看,前两种 算法比后两种大许多。
六、算法的数值稳定性
▪ 定义:凡一种算法的计算结果受舍入误差的 影响小者称它为数值稳定的算法。
y=1000的相对误差限分别为
r
(
x)
Байду номын сангаас
1 10
0.1,
r
(
y)
5 1000
0.005
r (x) r (y)
故y的精度比x高得多。
四、有效数字
★定义:若近似值x 的绝对误差限是某一位上 的半个单位,且该位直到 x的第一位非零数 字一共有n位,则称近似值 x有n位有效数字, 或说 精确x到该位。
※用四舍五入法得到的近似数都是准确到末位 的有效数字。
第一章 误差
一、误差的种类及其来源 二、绝对误差和绝对误差限 三、相对误差和相对误差限 四、有效数字 五、误差的传播与估计 六、算法的数值稳定性
一、误差的种类及其来源
1.描述误差:也称环境误差或模型误差 将复杂的物理现象抽象、归结为数学
模型,往往只得忽略一些次要的因素,从 而造成误差。 2.观测误差:也称初值误差
实际使用的初始数据往往都是通过人 们实际观察测量得来的,这些测得的数据 都只能是近似的,称为参数误差。
3.截断误差:
计算时只能完成有限次运算,需要对一些 无穷计算过程(如微分、积分、无穷级数求 和等)进行截断,即仅保留无穷过程的前段 有限序列而舍弃它的后段。
4.舍入误差:四舍五入所造成的误差。 ※前两种为非过失误差,无法避免;后两种为
数值计算方法第一章误差的基本知识
推理证明能力; 5、认真进行数值计算的训练。
§1.2 误差知识
一、误差的来源及其分类 二、误差的度量 三、误差的传播
一、误差来源及其分类
1) 模型误差(描述误差) 反映实际问题有关量之间的计算公式
(数学模型)通常是近似的。
x1*
x
0 .0 00 5 9
0.005
1 1013 2
3位有效数字,非有效数
x
* 2
x
0 .0 00 4 0
0.0005
1 1014 2
Remark2: 相对误差及相对误差限是无量纲的,但绝对 误差以及绝对误差限是有量纲的。
3.有效数字
为了规定一种近似数的表示法,使得用它表示的 近似数自身就直接指示出其误差的大小。为此需要引 出有效数字和有效数的概念。
定义:设 x 的近似值 x* 有如下标准形式
x* 10m 0.x1x 2 x n x n1 x p ,
本课程主要内容
鉴于实际问题的复杂性,通常将其具体地分解 为一系列子问题进行研究,本课程主要涉及如下几 个方面问题的求解算法: 非线性方程的近似求解方法; 线性代数方程组的求解方法; 函数的插值近似和数据的拟合近似; 积分和微分的近似计算方法; 常微分方程初值问题的数值解法; 矩阵特征值与特征向量的近似计算方法; ……
第一章 绪 论
内容提要
§1.1 引 言 §1.2 误差的度量与传播 §1.3 选用算法时应遵循的原则
§1.1 引 言
课程特点
数值分析或数值计算方法主要是研究如何 运用计算机去获得数学问题的数值解的理论和 方法。
对那些在经典数学中,用解析方法在理论 上已作出解的存在,但要求出他的解析解又十 分困难,甚至是不可能的这类数学问题,数值 解法就显得不可缺少,同时有十分有效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0.4900 − 0.484 1 1 −1 = 0.012397 < 0.0125 = ×10 = ×10−(2−1) 0.484 2× 4 2× 4
第四节 数值运算中误差的传播
要分析数值运算中误差的传播,首先就要估 计数值运算中的误差。数值运算的误差估计情况 较复杂, 通常利用微分来估计误差。
一、利用微分估计误差
特别注意
近似值后面的零不能随便省去, 如 例2中4.27和4.270,前者精确到4.27,有效 数字为3位,取4位,x3*=4.270,有效数字 为4位。可见,它们的近似程度完全不同, 与准确值的最大误差也完全不同。
有效数字和绝对误差的关系
定义3换一种说法就是:设x的近似值 x*= ±0.a1a2… an … ×10p 若其绝对误差 |ε(x)|=|x-x*| ≤0.5 ×10p-n - 则称近似数x*具有n 位有效数字。这里p为整数,a1 , a2 , … , an 是0 到9中的一个数字且a1≠0 。 例如,若x*=0.23156×10-2是x 的具有五位有效数字的近似 值,则绝对误差是 |x-x*| ≤0.5 ×10-2-5 = 0.5 ×10-7 - 定义3或式 |ε(x)|=|x-x*| ≤0.5 ×10p-n - 建立了绝对误差(限)和有效数字之间的关系。由于n 越大,10p-n 的值越小,所以有效数字位越多,则绝对误差(限)越小。 有效数字位越多,
1. 一元函数 设 y=f(x)为一元函数,则计算函数值的 误差为
ε(y)=y-y*=f(x)-f(x* )
≈dy=f '(x)dx ≈ f '(x)ε(x) 解的相对误差
εr(y) ≈dy/y
一元函数的误差估计举例
例 正方形的边长约为100cm, 怎样测量才能使其 面积误差不超过1cm2。 解 设正方形的边长为xcm, 测量值为x*cm, 面积 y=f(x)=x2 f′(x)=2x
有效数字与相对误差关系举例
注意从
|εr(x)| ≤1/(2×a1) ×10-(n-1)
并不能保证x*一定具有n位有效数字。 如 x=sin29020´=0.4900 设其近似值 x*=0.484 , 其相对误差为
我们不能由此推出x*有两位有效数字,这是因为 x-x*=0.4900-0.484=0.0060>0.005 即可知近似值x*并不具有两位有效数字。 实际上, x*只有一位有效数字。
(三)截断误差(方法误差) 截断误差(方法误差)
当数学模型得不到精确解时,要用数 值计算方法求它的近似解,由此产生的误 差称为截断误差或方法误差。譬如在数值 计算中,常用收敛的无穷级数的前几项来 代替无穷级数进行计算,即抛弃了无穷级 数的后段,这样就产生了截断误差。
截断误差举例
例如 sinx=x-x3/3!+x5/5!-x7/7!+…, -∞<x<+∞ 当|x|很小时, 常用x代替sinx , 其截断误差大 约为x3/6。截断误差的大小 , 直接影响数值 计算的精度, 所以它是数值计算中必须十分 重视的解有效数字的概念,首先要弄清什么是半 个单位。 • 我们知道,当x有很多位数字时,常常按照 “四舍五入”原则取前几位数字作为x的近似值x*。 例1 设 x = π = 3.1415926 …
•
取x1*=3作为π的近似值,则|ε1(x)|=0.1415 … ≤0.5×100; 取x2*=3.14,则|ε2(x)|=0.00159 … ≤0.5×10-2; 取x3*=3.1416, 则|ε3(x)|=0.0000074 … ≤0.5×10-4 。
有效数字与相对误差的关系
定理1 若近似数x*具有n位有效数字,则 其相对误差为 |εr(x)| ≤1/(2×a1) ×10-(n-1) 其中a1≠0是x*的第一位有效数字。
定理1说明有效数字位越多,相对误差(限)越小。
定理2 形式如x*= ±0.a1a2… an … ×10p的近似数 2 x*,若其相对误差满足 |εr(x)| ≤1/[2×(a1+1)] ×10-(n-1) 则x* 至少有n位有效数字。 由此可知,有效数字位数可刻画近似数的精 确度,相对误差(限)与有效数字的位数有关。
本章介绍的内容
ⅰ)数值计算方法的含义及其特点; ⅱ)误差的来源; ⅲ)误差的有关概念(绝对误差、相对误差、有 效数字); ⅳ)误差的传播过程; ⅴ)算法的数值稳定性概念; ⅵ)选用数值算法的若干原则。
第一节
数值计算方法
数值计算方法是应用数学的一个分支,又称数值 分析或计算方法,它是研究用计算机求解各种数学问 题的数值方法及其理论的一门学科,是程序设计和对 数值结果进行分析的依据和基础。 我们知道,用计算机解决科学计算问题需要经 过以下几个过程:提出具体问题,建立数学模型,选 用数值计算方法,程序设计 、上机调试直至得出最 终数值结果。可见,选用数值计算方法是应用计算机 进行科学计算全过程的一个重要环节。
第一章 数值计算引论
数值计算方法就是要解决如何让计算机计算 数值( 如解方程、解方程组、求积分等 )不仅算得 快(用的机时少)、而且也要算得准( 与真实值 ) 的误差小) 的问题。如果光算得快 , 算得不准 ( 超 过了误差范围),计算出来的结果不能用, 计算也就 没有什么意义。如何才能让计算机既算得快又算 得准(误差达到最小)呢?这就需要掌握一些误 差知识。
二、相对误差和相对误差限 相对误差和相对误差限
绝对误差的大小并不能确定近似程度的好坏。 例如,有两个温度计,其一测量1000℃时的绝对误 差限为 5℃, 而另一测量 100℃时的绝对误差限为 1℃,虽然后者绝对误差限的数值较小, 但第一种温 度计更为精确。可见 , 决定一个量的近似值的精确 度除了要看绝对误差的大小外,还要考虑到该量本 身的大小。据此,我们引进相对误差的概念。
第二节
科学计算中误差的来源
用计算机解决科学计算问题通常经历以下过 程:
实际问题 程序设计 数学模型 数值计算方法
上机计算结果
据此误差的来源主要有以下四类。
(一)模型误差
在将实际问题转化为数学模型的过程中,为 了使数学模型尽量简单,以便于分析或计算,往 往要忽略一些次要的因素,进行合理的简化。这 样,实际问题与数学模型之间就产生了误差,这 种误差称为模型误差。由于这类误差难于作定量 分析,所以在计算方法中,总是假定所研究的数 学模型是合理的,对模型误差不作深入的讨论。
数值计算方法特点
• (1)面向计算机。根据计算机特点提供实际 可行的有效算法。即算法只能包括加、减、乘、 除和逻辑运算,是计算机所能直接处理的。 • (2)有可靠的理论分析。能任意逼近并达到 精度要求,对近似算法要保证收敛性和数值稳 定性,还要对误差进行分析。有相应的数学理 论做基础。 • (3)有好的计算复杂性(包括空间复杂度和 有好的计算复杂性( 时间复杂度)。算法需占用的存储空间要小, 时间复杂度)。 运算次数要少。这也是建立算法要研究的问题, 它关系到算法能否在计算机上实现。
ε(y*)=y-y*≈dy*=f '(x*)dx* ≈f '(x*)ε(x*) f '(x*)ε(x*) =2x*ε(x*)=200ε(x*) 由于 |ε(y*)|≤1 即 |200ε(x*)| ≤1 所以, ε(x*) ≤0.005cm
≈dy=∂f (x1,x2 )/∂x1*ε(x1)+∂f (x1,x2 )/∂x2*ε(x2) 解的相对误差 εr(y) ≈dy/y
(二)观测误差
在数学模型中,一般都含有从观测(或 实验)得到的数据,如温度、时间、速度、 距离、电流、电压等等。但由于仪器本身的 精度有限或某些偶然的客观因素,会引入一 定的误差,这类误差叫做观测误差。通常根 据测量工具或仪器本身的精度,可以知道这 类误差的上限值,所以无需在数值分析中作 过多的研究。
相对误差限的概念
在实际计算中, 由于ε(x)与x都不能准 确地求得,因此相对误差 εr(x)也不可能准确 地得到, 我们只能估计它的大小范围。即指 定一个适当小的正数η,使 |εr(x)|= |ε(x)|/|x| ≤η 称η为近似值x*的相对误差限。 当|εr(x)|较小时,可以用下式来计算η: η=ξ/|x*|
相对误差限概念举例 • 显然,上例第一种温度计的相对误 差限为5/1000;而第二种的相对误差限为 1/100,它是前者的两倍。
三、有效数字
• 为了既能表示近似数的大小,又能 表示近似数的精确程度,我们下面介绍 有效数字的概念(注意:有效数字既能 表示近似数的大小,又能表示近似数的 精确程度)。
(四)舍入误差
由于计算机字长有限,原始数据的输入及浮点运 算过程中都可能产生误差。而事实上,无论用电子计 算器计算还是笔算,都只能用有限位小数来代替无穷 小数或用位数较少的小数来代替位数较多的有限小数 ,这样产生的误差叫做舍入误差。在数值计算中,往 往要进行成千上万次四则运算,因而就会有成千上万 个舍入误差产生,这些误差一经叠加或传递,对精度 可能有较大的影响。所以,作数值计算时,对舍入误 差应予以足够的重视。
小 结
上述四类误差都会影响计算结果的准确性, 但模型误差和观测误差往往需要会同各有关学科 的科学工作者共同研究, 因此在计算方法课程中, 主要研究截断误差和舍入误差(包括初始数据的 误差)对计算结果的影响。
第三节 误差的有关概念
一、绝对误差和绝对误差限
定义1 假设某一量的准确值为x ,近似值为x*, 则 x与x*之差叫做近似值x*的绝对误差(简称误差),记 为ε(x),即
ε(x)= x-x* |ε(x)︱的大小标志着x*的精确度。一般地,在同一 量的不同近似值中,︱ε(x)︱越小,x*的精确度越高。 当︱ε(x)︱较小时,由微分和增量的关系知x*的绝对 误差ε(x)≈dx ,故我们可以利用微分估计误差。
绝对误差限的概念
由于准确值x一般不能得到,于是误差的准确值也无法求得, 但在实际测量计算时,可根据具体情况估计出它的大小范围。也 就是指定一个适当小的正数ξ,使 |ε(x)|= |x-x* |≤ ξ - 我们称ξ为近似值x*的绝对误差限。 有时也用 x = x*± ξ 表示近似值的精度或准确值的所在范围。 在实际问题中,绝对误差一般是有量纲的。例如,测得某一 物体的长度为5m,其误差限为0.01m,通常将准确长度ѕ记为 ѕ =5 ±0.01 即准确值在5m左右,其误差限为0.01m的误差限。