当前位置:文档之家› 数值计算方法课件__第一章 绪论

数值计算方法课件__第一章 绪论


注:0.2300有4位有效数字,而00023只有2位有效数 0.2300有 位有效数字, 00023只有 位有效数 只有2 12300如果写成0.123× 如果写成0.123 则表示最多只有3 字。12300如果写成0.123×105,则表示最多只有3 位有效数字。数字末尾的0不可随意省去! 位有效数字。数字末尾的0不可随意省去!
注:
绝对误差限 绝对误差限/* accuracy */
ε
e = x x ≤ ε 如:π = 3.14159
1 5 π π ≤ ×10 (π = 3.1415926) 2 绝对误差还不能完全表示近似值的好坏 绝对误差还不能完全表示近似值的好坏
Def 1.2(相对误差/* relative error */ )
在理论上等价。 在理论上等价。
* 当N → +∞时, EN = I N I N → 0
计算 ∫0 e -x
1
2
dx 的总体误差 < 0 .005 + 0 .001 = 0 .006
Def 1.4(数值稳定性/* Numerical
Stability */)
一个算法如果输入数据有扰动(即误差),而计算 一个算法如果输入数据有扰动(即误差),而计算 ), 过程中舍入误差不增长,则称此算法是数值稳定的, 过程中舍入误差不增长,则称此算法是数值稳定的,否则 此算法就称为不稳定的。 此算法就称为不稳定的。
r
解不等式可得 n > 5.69,即 n = 6,应取 π* = 3.14159。 , , 。
三、数值算法及稳定性 /* Numerical
Algorithm and Stability */
n
例3 计算下列多项式的值 p(x) = a0 x ++ an1 x + an a0 , a1,an , x 为已知数据 分析: 输入数据为 a0 ,, an , x ,输出数据为 p(x),若直接由 分析: 2 n
i = 2,3,, n
Ax = b
中国石油大学(华东) 数学与计算科学学院
提问:数值计算方法是做什么用的? 提问:数值计算方法是做什么用的?
数值问题——有限个输入数据(问题的自 有限个输入数据( 研究对象:数值问题 有限个输入数据 变量、原始数据)与有限个输出数据(待求解数据) 变量、原始数据)与有限个输出数据(待求解数据)之 间函数关系的一个明确无歧义的描述。 间函数关系的一个明确无歧义的描述。 如一阶微分方程初值问题
,再乘相应的系数 an1 , an2 ,, a0并 + 相加, 次加法, 相加,则要做次 n(n+1) 乘法和 n 次加法,占用个 2n +1 2 存储单元。 存储单元。
x算出 x ,, x
秦九韶方法,也称为Horner算法 秦九韶方法,也称为Horner算法 Horner 用递推公式表示为 只用 n次乘法和
π = 3.14
1 5 e ≤ ×10 6位 位 2
1 2 e ≤ ×10 3位 位 2
m∈ Z, a1, a2 ,, an ∈{0,1,, 9} 的截取按四舍五入规则), ),则称 为有 n位有效 (即 an 的截取按四舍五入规则),则称 x 数字, 数字,精确到 10mn。 例1: π = 3.1415926535897932; π = 3.1415 : 有几位有效数字?请证明你的结论。 问:π 有几位有效数字?请证明你的结论。

1 0
e
x2
x4 x6 x8 dx = ∫ ( 1 x + + ) dx 0 2! 3! 4! 1 2 1e 1 1 1x 1 1 1 = 11/ + × × + × 1 3 2! 5 0 3! 7 4! 9
1


e
dx ≤
取 ∫0 e
1
x2
dx ≈ S 4 ,
S4
R4
/* Remainder */
1 In1 = (1 In ) n
方法:先估计一个IN ,再反推要求的 n ( n << N )。 再反推要求的I 方法:先估计一个 。
1 1 ∵ < IN < 注意此公式与公式一 e( N + 1) N +1
1 1 1 + 可取 I = ≈ IN 2 e( N + 1) N + 1
N
注:
的每一位都是有效数字, 称是有效数 若 x 的每一位都是有效数字,则 x称是有效数
特别, 四舍五入” 特别,经“四舍五入”得到的数均为有效数
Th .1将 x 的近似值 x 表示为x = ±0.a1a2 ak an ×10, 1 1 ×10(k1) 是有效数字, 若 ak 是有效数字,则相对误差不超过 ; 21 er ,且有 er ≤ ×10k 反之, 反之,若已知相对误差 , 2 必为有效数字。 则ak 必为有效数字。
n∫ xn1e1 1 x 1 I0 = ∫ e dx = 1 ≈ 0.63212056 I0 0 e e 8 则初始误差 E0 = I0 I0 < 0.5×10
I1 = 11 I0 = 0.36787944 ............ I10 = 110 I9 = 0.08812800 I11 = 111 I10 = 0.03059200 I12 = 112 I11 = 0.63289600 I13 = 113 I12 = 7.2276480 I14 = 114 I13 = 94.959424 I15 = 115 I14 = 1423.3914
此公式精确成 此公式精确成 精确 立
What happened?!
考察第n步的误差 考察第 步的误差 E n | En | = | In In | = | (1 nIn1 ) (1 nIn1 )| = n |En1| = = n ! | E0 | 初始的小扰动 | E 0 | < 0 .5 × 10 8 迅速积累,误差呈递增趋势。 迅速积累,误差呈递增趋势。 造成这种情况的是不稳定的算法 造成这种情况的是不稳定的算法 /* unstable algorithm */ 我们有责任改变。 我们有责任改变。 公式二: 公式二: In = 1 n In1
p(x) = ((a0 x + a1 )x ++ an1 )x + an
次加法, n次加法,并占用n + 2个存储单元
b0 = a0 bi = ai + bi1x i = 1,2,, n bn = pn (x)
例4 近似计算 ∫ e
0
x2
1
x2
dx = 0.746824… …
2
展开后再积分 解法:将 e 作Taylor展开后再积分
1 1 n x 例5 计算 In = ∫0 x e dx, n = 0,1, 2,...... e
1 1 n 0 1 1 n 1 ∫0 x e dx < In < e ∫0 x e dx e
1 0 1 0
公式一: 公式一:In = 1[ xnex e
1 1 ∴ < In < e(n +1 ) n +1
上机 计算
程序 设计
数 值 方 法 的 设 计 原 则
可 靠 稳定性: 稳定性:初始数据等产生的误差对结果的影响 性 分 误差估计: 析 误差估计:运算结果不能产生太大的偏差且 能够控制误差 计 便于编程实现: 便于编程实现:逻辑复杂度要小 计算量要小:时间复杂度要小, 计算量要小:时间复杂度要小,运行时间要短 存贮量要尽量小: 存贮量要尽量小:空间复杂度要小
Def 1.3 (有效数字/*Significant Digits*/ )
与准确值的误差绝对 绝对值不超过某一位的 若近似值 x与准确值的误差绝对值不超过某一位的 半个单位, 半个单位,该位到 x的第一位非零数字共有 n ,则 位 称 x 有 n位有效数字
如: π = 3.1415926
π = 3.141592
Def 1.5 (病态问题/* ill-posed problem */)
对数学问题本身如果输入数据有微小扰动,引起 对数学问题本身如果输入数据有微小扰动, 输出数据(即问题真解)的很大扰动, 输出数据(即问题真解)的很大扰动,这就是病态问 题。 它是数学问题本身性质所决定的,与算法无关, 它是数学问题本身性质所决定的,与算法无关, 也就是说对病态问题,用任何算法(或方法) 也就是说对病态问题,用任何算法(或方法)直接计 算都将产生不稳定性。 算都将产生不稳定性。
近似值 的比值: x 的误差 e 与准确值 x 的比值:
e x x = x x
称为近似值
x
r
注:
实际计算时, 实际计算时,相对误差通常取
e 的相对误差, 的相对误差,记作 e = x
r
e 2 ( ) 2 e e e ( x x) (e ) = = = x 因为 e x x xx x (x e ) 1 x
m
的相对误差小于0.001%,至少应取几位有 例2:为使 π*的相对误差小于 效数字? 效数字? 解: 位有效数字, 假设 π* 取到 n 位有效数字,则其相对误差上限为
1 n+1 e ≤ ×10 2
r
要保证其相对误差小于0.001%,只要保证其上限满足 , 要保证其相对误差小于
1 n+1 e ≤ ×10 < 0.001% 2
收敛性: 收敛性:方法的可行性
§1
误 差
/* Error */
一、 误差的来源与分类 /* Source & Classification */
1、从实际问题中抽象出数学模型 、 —— 模型误差 /* Modeling Error */ 2、通过观测得到模型中某些参数(或物理量)的值 、通过观测得到模型中某些参数(或物理量) —— 观测误差 /* Measurement Error */ 3、数学模型与数值算法之间的误差 、 —— 方法误差 (截断误差 /* Truncation Error */ ) 截断误差 4、由于机器字长有限,原始数据和计算过程会产生新的误差 、由于机器字长有限, —— 舍入误差 /* Roundoff Error */
相关主题