浙大计算方法 1 绪论

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


xi

Di det( A )
(i 1,2,, n) 其中
a11 a12
a a a 1,i1
1i
1,i 1
a1,n
det(A) a21 a22
a a a 2,i1 2i 2,i1
a2,n
an1 an2
a a a n,i1 ni n,i1
an,n
a11 a12
a1,i1 b1 a1,i1
解线性方程组有许多实用的算法,可大大减少计算工作量。 在数值计算中要注意算法计算量的分析,并尽量节省存储量。
22:57:51
6
1.1数值计算的任务与特点(续)
例 1. 2 求一元二次方程 x2 (109 4)x 4 *109 0 的根时
常用的公式是:
b b2 4ac
x1,2
例:
sin
x

x
x3 3!

x5 5!

x7 7!

ln(1
x)

x
x2 2

x3 3

x4 4

(1 x 1)
22:57:52
17
舍入误差 (计算误差)
1.3.1 误差的来源(续)
在数值计算过程中还会用到一些无穷小数,例如无 理数和有理数中某些分数化出的无限循环小数,如
3.14159265 ; 2 1.41421356
a1,n
Di a21 a22
a2,i1 b2 a2,i1
a2,n
an1 an2
an,i1 bn an,i1
an,n
22:57:51
5
1.1数值计算的任务与特点(续)
用这种方法解一个n元方程组,要算n+1个n阶行列式 的值,总共需要(n+1)n!(n-1)次乘法。
当n较大时,计算量相当惊人。 如:n=20时, (n+1)n!(n-1)≈9.7*1020 工作量太大,不适用在计算机上求解高维方程组。

1 6

0.16666667
(
12 29
)
6

0.00501995
12 2378

0.00504626
22:57:52
14
1.3.1 误差的来源(续)
模型误差(描述误差) 用数值计算的方法来解决工程实际和科学技术中
的具体技术问题时,首先必须将具体问题抽象为数学 问题,例如各种微分方程、积分方程、代数方程……
收敛性:通过增加计算量,能使近似计算解充分 接近理论解。
22:57:52
8
1.1数值计算的任务与特点(续)
没有一种算法处处有效,而且各种算法在计算过程 中往往都会出现某些问题。因此,为用计算机解决实际 问题,除正确提出数学问题(数学模型)外,必须针对 具体问题选择或改造适当的算法,清楚计算过程中可能 发生的问题。
为了从不同的侧面表示近似数的精确程度,通常运 用绝对误差、相对误差和有效数字的概念。
22:57:52
20
1.3.2 绝对误差、相对误差与准确数字(续)
绝对误差和绝对误差限
定义1.1 设x是准确值, x*是x的一个近似值,称
e xx*
为近似值x*的绝对误差,简称误差。
准确值x一般无法知道,绝对误差e自然也无法知道。
数值计算是用计算机进行数学计算的,而计算机的 运算速度高,可以承担各种计算工作。因此,很多人甚 至为数不少的一些科研人员,常常认为只要把涉及到的 一些数学公式,用一种计算机语言正确编程,计算机就 一定能给出正确的结果。
22:57:51
3
1.1数值计算的任务与特点(续)
例1.1 克莱姆(Cramer)法则原则上可用来求解线性方程组
x 2 1
2 7 / 5 1.4
2 17 /12 1.4166
(
2 5
)
6

0.004百度文库960
(
5 12
)
6

0.00523278
x 99 70 2
x 1 6 2 1
x 1 9970 2
1
(
5 12
)
6

0.00523278
1 197

0.00507614
其中 ai {0,1, 2,3, , 1}(i 1, 2,3, )
22:57:52
11
1.2.1 计算机的数系(续)
计算机存储或运算的数不能过大或过小。 若一个非零实数的绝对值大于M,则计算机产生上溢 错误; 若绝对值小于m,则计算机产生下溢错误。 上溢时,计算机中断程序处理,下溢时,计算机将此 数用零表示继续执行程序。 无论是上溢还是下溢,都称为溢出错误。
了解算法的设计原理,充分熟悉算法的运算过程,知 道算法的长处和短处;
分析算法的优劣,特别是算法的稳定性、收敛性和 误差估计,需要较多的数学推导,一般只需知道结论。
简化 数学模型
算术运算 计算机 数值解 逻辑运算
分析 收敛性 稳定性 误差
22:57:52
9
1.1数值计算的任务与特点(续)
计算方法特点: 1)面向计算机,要根据计算机特点提供实际可行的有效 算法,如加、减、乘、除和逻辑运算; 2)有可靠的理论分析,能任意逼近并达到精度要求,对 近似算法要保证收敛性和数值稳定性,还要对误差进行 分析。这都建立在相应数学理论的基础上; 3)节省时间、节省存储量; 4)要有数值实验,即任何一个算法除了从理论上要满足 上述三点外,还要通过数值试验证明是行之有效的。
相对误差和相对误差限
用绝对误差还不能完全评价近似值的精确度。
l1* 1000cm, l1 999cm l2* 100cm, l2 99cm l1和l2的绝对误差都是1cm,但显然l1的近似程度比l2好。
要评价一个近似值的精确度,除了要看其绝对误差 的大小外,还需考虑该量本身的大小。即相对误差。
22:57:52
12
1.3 数值计算的误差
在研究算法时,必须注重误差分析,否则,一个合 理的算法也可能得出错误的结果
1.3.1 误差的来源
误差:科学和工程计算中的数通常都是近似的。近似 值与真正值之差称为误差。
过失误差(疏忽误差):由于算题者在工作中的粗心 大意而产生的,例如笔误将886误写成868,以及误用公 式等。
定义1.3

er

e x

x x* x
为近似值x*的相对误差。
相对误差是一个无量纲量,通常用百分数表示,相对 误差的绝对值越小,近似程度越高。如:
er (l1 ) 0.1% er (l2 ) 1%
所以l1的近似程度比l2 好。
22:57:52
24
1.3.2 绝对误差、相对误差与准确数字(续)
22:57:52
18
1.3.1 误差的来源(续)
数学模型一旦建立,进入具体计算时所要考虑和分析 的就是截断误差和舍入误差。而模型误差和观测误差不是 计算工作者所能独立解决的。本课程介绍算法时,将对其 截断误差和舍入误差作适当的介绍。
22:57:52
19
1.3.2 绝对误差、相对误差与准确数字
在数值计算中,误差虽然不可避免,但人们总是 希望计算结果能足够准确。 误差估计
2a
若用这个公式编程并在字长为8位的计算机上计算,
得到的结果为: x1 109 , x2 0
本题的两个根应为: x1 109 , x2 4
出现这一错误的原因是受机器字长的限制所引起的 误差造成的。
在设计算法时,要注意算法的误差分析。
22:57:52
7
1.1数值计算的任务与特点(续)
数值计算方法的任务:为各种数学问题的数值解 答,提供最有效的算法。
最有效的算法:适用范围广、运算工作量少,需用 存储单元少,逻辑结构简单,便于编写计算机程序,而 且计算结果可靠。
误差估计:由于计算机计算通常是近似的,因而 一般要求算法能估计误差
稳定性:计算过程中,误差能得到控制,各步误 差对计算结果不致产生过大影响;不合适的算法会导 致计算误差达到不能容许的地步,而使计算最终失败。
但一般可以根据测量工具或计算过程,设法估计出此绝对
误差的取值范围,即误差绝对值的一个上界ε。
定义1.2 设存在一个正数ε,使
e x*x ,
称ε是近似数x*的绝对误差限(绝对误差界),
简称误差限、精度
22:57:52
21
1.3.2 绝对误差、相对误差与准确数字(续)
若近似数x*的误差限为ε,则 x * x x *
a11x1 a12 x2 a1n xn b1
a 21 x1
a22 x2
a2n xn

b2
an1 x1 an2 x2 ann xn bn
22:57:51
4
1.1数值计算的任务与特点(续)
克莱姆(Cramer)法则:如果 det(A) 0 ,则方程组有唯一
非过失误差:在数值计算中往往无法避免。包括:模 型误差、观测误差、截断误差和舍入误差。对这类误差应 该设法降低其数值,尤其要控制住经过多次运算后误差的 积累,以确保计算结果的精度。
22:57:52
13
1.3.1 误差的来源(续)
例: 近似值带来的误差和算法的选择对计算结果的精度
所产生的巨大影响。
x 21 3 2 1 6
1 3!

1 6

0.166666
计算机数系F(β,t,L,U)受机器字长的限制,是离散的有 限集,只能对有限的数进行运算。
这时就需要把数据按四舍五入成一定位数的近似的有 理数来代替。产生舍入误差。
每一步的舍入误差是微不足道的,但在计算机上经过
千百万次运算后所积累起来的总误差不容忽视,有时可能 会大得惊人,甚至“淹没”真值,使计算结果失去意义。
从实际问题提炼出数学问题时,欲将复杂的物理现 象抽象,归结为数学模型,总是在一定条件下抓住主 要因素,忽略许多次要因素的影响,而对问题作某些 必要的简化。
这样建立起来的数学模型实际上必定只是所研究的 复杂客观现象的一种近似的理想化了的数学描述,与 实际问题之间总存在误差。
因而即使数学问题能求出准确解,也与实际问题 的真正解不同。
22:57:52
15
1.3.1 误差的来源(续)
观测误差 (数据误差、参量误差) 在建模和具体运算过程中所用到的一些初始数据
往往都是通过人们实际观察、测量得来的,由于受到 所用观测仪器、设备精度的限制,这些测得的数据都 只能是近似的,即存在着误差。
22:57:52
16
1.3.1 误差的来源(续)
e l l* 0.5mm
22:57:52
22
1.3.2 绝对误差、相对误差与准确数字(续)
如果读出的长度是513mm,则
l 513 0.5mm
得: 512.5 l 513.5(mm)
即l在[512.5,513.5]毫米区间内。
22:57:52
23
1.3.2 绝对误差、相对误差与准确数字(续)
表明准确值x必落在区间[x* -ε, x* +ε]上, 常用
x x * 表示近似值x*的精度或准确值x所在的范围。
例如,用具有毫米刻度的米尺测量不超过1m的某个物 体的长度l时。
读数方法如下:如果长度l接近于毫米刻度l *,就读 出那个刻度数 l *作为长度l 的近似值。
这个近似值的绝对误差不会超过半个毫米,即测量长 度的精度为0.5mm。即:
22:57:52
10
1.2 计算机中的数系与运算特点
1.2.1 计算机的数系
在计算机中,任一实数x可表示成
x 10c 0.a1a2a3
十进制浮点数
其中 ai {0,1, 2, 3, , 9}(i 1, 2, 3, ) ,c为整数
一般地,可定义β进制浮点数
x c 0.a1a2a3
截断误差(方法误差)
在不少数值运算中常遇到超越计算,如微分、积分 和无穷级数求和等,它们需用极限或无穷过程来求得。
然而计算机却只能完成有限次算术运算和逻辑运算, 因此需将解题过程化为一系列有限的算术运算和逻辑运 算。
这样就要对某种无穷过程进行“截断”,即仅保留无 穷过程的前段有限序列而舍弃它的后段。
对数值结果进行分析解释
(应用数学) (计算数学)
数值计算的研究对象:求解各种数学问题的数值方 法的设计、分析;有关的数学理论和软件实现。
22:57:51
2
1.1数值计算的任务与特点(续)
计算机实质上只会做加减乘除等算术运算和一些逻 辑运算。由这些基本运算及运算顺序的规定构成的完整 的解题步骤,称为算法。它可用框图、算法语言、数学 语言或自然语言描述。用计算机算法语言描述的算法称 为计算机程序。
第1章 数值计算中的误差
22:57:50
1
1.1 数值计算的任务与特点
数值计算:研究怎样利用计算器、计算机等工具, 来求出数学问题的数值解答的学问。
本课程介绍计算机上常用的数值计算方法。
计算机解决科学计算问题时经历的几个过程:
提出实际问题 建立数学模型 选用数值计算方法 程序设计 上机计算求出数值结果
相关文档
最新文档