数值分析第一章
数值分析第一章PPT

1.1.2 计算数学与科学计算 现代科学的三个组成部分: 科学理论, 科学实验, 科学计算 科学计算 的核心内容是以现代化的计算机及数学软件 (Matlab, Mathematica, Maple, MathCAD etc. )为工具,以数学 模型为基础进行模拟研究。
一些边缘学科的相继出现:
计算数学,计算物理学,计算力学,计算化学,计算生物学, 计算地质学,计算经济学,等等
取 0 e
1
x2
dx S4 ,
S4
R4
/* Remainder */
1 1 1 1 由留下部分 称为截断误差 /* Truncation Error */ 4! 9 5! 11 /* included terms */ 1 1 这里 R4 引起.005 0 由截去部分 4! 9 /* excluded terms */ 1 1 1 S4 1 1 0 .333 0 .1 0 .024 0 .743 引起 3 10 42 | 舍入误差 /* Roundoff Error */ | 0.0005 2 0.001
数值分析
第1章
数值分析与科学计算引论
§1.1 数值分析的对象、作用与特点
1.1.1 什么是数值分析 数值分析是计算数学的主要部分,计算数学是数学 科学的一个分支,它研究用计算机求解各种数学问题的 数值计算方法及其理论与软件实现.这门课程又称为(数 值)计算方法、科学与工程计算等。
•
在电子计算机成为数值计算的主要工具的今天, 需要研究适合计算机使用的数值计算方法。使用计 算机解决科学计算问题时大致要经历如下几个过程:
造成这种情况的是不稳定的算法 /* unstable algorithm */ 我们有责任改变。
数值分析-第一章ppt课件

数及其图形作出判断. 整理版课件
6
由分部积分法可得:
Ine101xndex
n=1,2,4,6, 8,10,15
e 1 x n ex|1 0 e 1 0 1 nn 1 x ex dx
1 nn 1 I (n 1 ,2 , ).
如果取 I0 = 1–e–1 = 0.63212056 (八位有效数字).
x1,2b
b24ac 2a
直接进行计算则得: x1=109, x2=0. 其中的x2=0明பைடு நூலகம்失真, 这也是由于舍入误差造成的.
整理版课件
8
§1 误差的来源
实际 问题
建立数 学模型
确定计 算方法
编程 上机
由抽象简 化产生的 模型误差 及参数的 观测误差
由计算方 法本身产 生的截断 误差或称 方法误差
er(x* )e(x x* )x xx*
同样, 由于精确值 x 经常是未知的, 所以, 需要另
外的近似表达形式. 我们注意如下公式的推导,
当
|
e ( x*) x*
|
较小时,
有
e(x* )e(x* )e(x*x )* (x)
x x*
xx*
[x*[ee((xx**))2]x] *1[e(exx(**x*)]2)
整理版课件
18
乘法相关的误差公式: 设 f (x1, x2)= x1 x2 . e ( x 1 x 2 ) x 2 e ( x 1 ) x 1 e ( x 2 ) e r ( x 1 x 2 ) e r ( x 1 ) e r ( x 2 ) |e ( x 1 x 2 ) | |e ( x 1 ) | |e ( x 2 ) | |e r ( x 1 x 2 ) | |e r ( x 1 ) | |e r ( x 2 ) |
《数值分析》杨大地-答案(第一章)精选全文完整版

可编辑修改精选全文完整版数值分析-第1章1.填空题(1)为便于算法在计算机上实现,必须将一个数学问题分解为有限次的四则运算;(2)在数值计算中为避免损失有效数字,尽量避免两个相近数作减法运算;为避免误差的扩大,也尽量避免分母的绝对值远小于分子的绝对值;(3)误差有四大来源,数值分析主要处理其中的截断误差和舍入误差;(4)有效数字越多,相对误差越小;2. 用例1.4的算法计算10,迭代3次,计算结果保留4位有效数字。
//见P4解题思路:假定x0是√a的一个近似值,x0>0,则ax0也是√a的一个近似值,且x0和ax0两个近似值必有一个大于√a,另一个小于√a,设想它们的平均值应为√a的更好的近似值,于是x k+1=1 2(x k+ax k),k=0,1,2,……解:取x0=3,按算法x k+1=12(x k+ax k),k=0,1,2,……迭代3次有:x1=12(x0+10x0)=(3+103)≈3.167x2=12(x1+10x1)=(3.167+103.167)≈3.162x3=12(x2+10x2)=(3.162+103.162)≈3.1623. 推导开平方运算的误差限公式,并说明什么情况下结果误差不大于自变量误差。
//见P8解:已知f(x)=√x,设x∗是准确值,令x是x∗的一个近似值,则相对误差e(f(x))=f(x)−f(x∗),由Taylor公式f(x∗)=f(x)0! +f′(x)1!(x∗−x)+f"(x)2!(x∗−x)2+⋯+f n(x)n!(x∗−x)n+R n(x)其中,R n(x)=f n+1(ξ)(n+1)!(x∗−x)n+1将f(x∗)展开分析有:f(x∗)=√x2√x x∗−x)+⋯+f n(ξ)n!(x∗−x)n+R n(x)∴e(f(x))=f(x)−f(x∗)=− (2√x x∗−x)+⋯+f n(ξ)n!(x∗−x)n+R n(x))∴|e(f(x))|≤ ε(f(x))≤|2√x |ε(x)+⋯+|f n(ξ)n!εn(x)|+|R n(x)|忽略二阶以上无穷小,可得f(x)的误差限公式为ε(f(x))≈2√x(x)。
数值分析讲义

由于除数很小,将导致商很大,有可能出现“溢出”现 象另外. ,设x* ,y* 的近似值分别为x,y,则z=x÷y是z*=x*÷y*
的近似值.此时,z的绝对误差满足估计式
e(z) z* z (x* x) y x( y y* ) y e(x) x e( y)
yy*
y2
可见,若除数太小,则可能导致商的绝对误差很大。
n k, k 1,...2,1
类似地可得
Ik
I
* k
(1) nk
k!( n!
I
n
I
* n
)
,
k n, n 1,...,1,0
可见,近似误差Ik-I*k是可控制的,算法是数值稳定的。
例如,由于
e 1 10
01 x9e1dx
I9
01 x9dx
1 10
取近似值 I9
1 (e1 1 ) 0.0684 2 10 10
§3 绝对误差、相对误差和有效数字
设x是精确值x*的一个近似值,记 e=x*-x
称e为近似值x的绝对误差,简称误差。如果满足 |e|≤
则称为近似值x的绝对误差限,简称误差限。 精确值x* 、近似值x和误差限之间满足: x-≤x*≤x+
通常记为 x*=x±
绝对误差有时并不能很好地反映近似程度的好坏,如
随着计算机的飞速发展,数值分析方法已深入到计算 物理、计算力学、计算化学、计算生物学、计算经济学等 各个领域。本课仅限介绍最常用的数学模型的最基本的数 值分析方法。
§2 误差的来源和分类
误 1.差模是型描误述差数值数计学算模之型中通近常似是值由的实精际确问程题度抽,象在得数到值的, 计一般算带中有十误分差重,要这,种误误差差按称来为源模可型分误为差模。型误差、观测误差、 截断误2.差观和测舍误入差误差数四学种模。型中包含的一些物理参数通常是 通过观测和实验得到的,难免带有误差,这种误差称为观 测误差。
数值分析

* * 1 2 * 1 * * 1 * * * * * * * * * * *
到x *的第一位非零数字共有 n位,就说x * 有n位有效数字.
即
x* 10m (a1 a2 101 an 10( n1) ) 1 x x * 10mn1 2
(2.1)
其中a1 0 . 并且 (2.2)
例1
• 按四舍五入写出下述各数具有5位有效数字的近似 数: 187.9325 0.037 855 51 8.000 033 2.718 281 8
加法和减法结果的误差
(x
* 1
x2 ) ( x1 x2 )
* 1
*
(x
x1 ) ( x2 x2 )
*
*
e( x ) e( x2 )
* 1
误差限: (x x ) (x ) (x )
* 1 * 2 * 1 * 2
乘法的结果误差
x x x1 x2 x x ( x x1 x )(x2 x2 x2 ) x1 x2 ( x1 e( x1 ))(x2 e( x2 )) x x x x x e( x2 ) x2 e( x ) e( x )e( x2 ) x e ( x2 ) x2 e ( x ) e ( x ) e ( x 2 )
例2 重力加速度
若以m/s2为单位, g≈9.80m/s2, 1 m n 1 1 * 10 g 9.80 102 , 2 2 * 1 按(2.1), m 0, n 3. 绝对误差限 1 102. 2 若以km/s2为单位, g≈0.00980m/s2, 1 g 0.00980 105 , 2 * 1 按(2.1), m 3, n 3. 绝对误差限 2 105. 2 而相对误差限相同:
数值分析课件第1章

解:
(s ) l (d ) d (l )
110 (0.1) 80 (0.2) 27( m 2 )
r
(
s
)
(s)
s
(s)
ld
27 0.31% 8800
2、函数误差 当自变量有误差时计算函数值也产生误差,可以利用
函数的泰勒展开式进行估计。
工科研究生公共课程数学系列
(f (x)) f (x)(x).
例1-4 设x0,x的相对误差为,求lnx的误差。
解:
lnx*
-lnx
1 x*
(x*
-
x), 即有
e(lnx) er(x)
进而有(ln(x)) 。
工科研究生公共课程数学系列
机动 上页 下页 首页 结束
1.3 误差定性分析与避免误差危害
一、几种定性分析误差的方法 1、概率分析法:考虑到误差分布的随机性,用概率统计的
二、数值分析的特点
• 面向计算机,要根据计算机的特点提供切实可行的有效算 法。
• 有可靠的理论分析,能任意逼近并达到精度要求,对近似 算法要保证收敛性和数值稳定性,还要对误差进行分析。 这些都是建立在数学理论的基础上,因此不应片面的将数 值分析理解为各种数值方法的简单罗列和堆积。
• 要有好的计算复杂性,时间复杂性好是指节省时间,空间 复杂性好是指节省存上实现。
• 要有数值实验,即任何一个算法除了从理论上要满足上述 三点外,还要通过数值实验证明是行之有效的。
工科研究生公共课程数学系列
机动 上页 下页 首页 结束
三、数值分析的学习方法 初学可能仍会觉得公式多,理论分析复杂。给出如下的 几点学习方法。
• 认识建立算法和对每个算法进行理论分析是基本任务,主 动适应公式多和讲究理论分析的特点。
数值分析原理课件第一章

第一章 绪 论本章以误差为主线,介绍了计算方法课程的特点,并概略描述了与算法相关的基本概念,如收敛性、稳定性,其次给出了误差的度量方法以及误差的传播规律,最后,结合数值实验指出了算法设计时应注意的问题.§1.1 引 言计算方法以科学与工程等领域所建立的数学模型为求解对象,目的是在有限的时间段内利用有限的计算工具计算出模型的有效解答。
由于科学与工程问题的多样性和复杂性,所建立的数学模型也是各种各样的、复杂的. 复杂性表现在如下几个方面:求解系统的规模很大,多种因素之间的非线性耦合,海量的数据处理等等,这样就使得在其它课程中学到的分析求解方法因计算量庞大而不能得到计算结果,且更多的复杂数学模型没有分析求解方法. 这门课程则是针对从各种各样的数学模型中抽象出或转化出的典型问题,介绍有效的串行求解算法,它们包括(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 nn ++++-- 的如下快速算法;n a s =; k n a t -=t sx s +=),,2,1(n k =它通过n 次乘法和n 次加法就计算出了任意n 次多项式的值. 再如幂函数可以通过如下64x 快速算法计算出其值;x s =;循环6次s s s ⋅=如上算法仅用了6次乘法运算,就得到运算结果.算法最终需要在计算机上运行相应程序,才能得到结果,这样就要关注算法的时间复杂度(计算机运行程序所需时间的度量)、空间复杂度(程序、数据对存储空间需求的度量)和逻辑复杂度(关联程序的开发周期、可维护性以及可扩展性). 事实上,每一种算法都有自己的局限性和优点,仅仅理论分析是很不够的,大量的实际计算也非常重要,结合理论分析以及相当的数值算例结果才有可能选择出适合自己关心问题的有效求解算法. 也正因如此,只有理论分析结合实际计算才能真正把握准算法.§1.2 误差的度量与传播一、误差的度量误差的度量方式有绝对误差、相对误差和有效数字.定义1.1 用作为量的近似,则称为近似值的绝对误差.*x x )(:**x e x x =-*x 由于量x 的真值通常未知,所以绝对误差不能依据定义求得,但根据测量工具或计算情况,可以估计出绝对误差绝对值的一个较小上界,即有ε (1.1)ε≤-=x x x e **)(称正数为近似值的绝对误差限,简称误差. 这样得到不等式ε*x εε+≤≤-**x x x 工程中常用ε±=*x x 表示近似值的精度或真值x 所在的范围.*x 误差是有量纲的,所以仅误差数值的大小不足以刻划近似的准确程度. 如量 (1.2)m m cm s μ50001230000005.023.15.0123±=±=±=为此,我们需要引入相对误差定义1.2 用作为量的近似,称为近似值的相对误差. 当0*≠x x )(:**x e xxx r =-*x 是x 的较好近似时,也可以用如下公式计算相对误差*x (1.3)***)(xx x x e r -= 显然,相对误差是一个无量纲量,它不随使用单位变化. 如式(1.2)中的量s 的近似,无论使用何种单位,它的相对误差都是同一个值.同样地,因为量x 的真值未知,我们需要引入近似值的相对误差限,它是相*x )(*x r ε对误差绝对值的较小上界. 结合式(1.1)和(1.3),相对误差限可通过绝对误差限除以近似*x 值的绝对值得到,即(1.4)***)()(xx x r εε=为给出近似数的一种表示法,使之既能表示其大小,又能体现其精确程度,需引入有效数字以及有效数的概念.定义1.3 设量的近似值有如下标准形式x *x p n ma a a a x 21*.010⨯±= (1.5)()pm p n m n m m a a a a ----⨯++⨯++⨯+⨯±101010102211 =其中且,m 为近似值的量级. 如果使不等式}9,,1,0{}{1 ⊂=pi i a 01≠a (1.6)n m x x -⨯≤-1021*成立的最大整数为n ,则称近似值具有n 位有效数字,它们分别是、、… 和 . *x 1a 2a n a 特别地,如果有,即最后一位数字也是有效数字,则称是有效数.p n =*x 从定义可以看出,近似数是有效数的充分必要条件是末位数字所在位置的单位一半是绝对误差限. 利用该定义也可以证明,对真值进行“四舍五入”得到的是有效数. 对于有效数,有效数字的位数等于从第一位非零数字开始算起,该近似数具有的位数. 注意,不能给有效数的末位之后随意添加零,否则就改变了它的精度.例1.1 设量,其近似值,,. 试回答这三个近π=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 所以和都有3位有效数字,但不是有效数. 具有4位有效数字,是有效数.*1x *3x *2x 二、误差的传播这里仅介绍初值误差传播,即假设自变量带有误差,函数值的计算不引入新的误差. 对于函数有近似值,利用在点处),,,(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 xf y y y e -≈-=∑=(1.7))(),,,(*1**2*1i ni n i x e x x xf ∑== 其中,是的近似值,是的绝对误差. 式(1.7)表明函ii x f f ∂∂=:*i x i x )(*i x e *i x ),,2,1(n i =数值的绝对误差近似等于自变量绝对误差的线性组合,组合系数为相应的偏导数值. 从式(1.7)也可以推得如下函数值的相对误差传播近似计算公式 (1.8))(),,,()(***1**2*1*i r i ni ni r x e yx x x x f y e ∑=≈对于一元函数,从式(1.7)和(1.8)可得到如下初值误差传播近似计算公式)(x f y = (1.9))()()(***x e x f y e '≈ (1.10))()()(*****x e yx x f y e r r '≈式(1.9)表明,当导数值的绝对值很大时,即使自变量的绝对误差比较小,函数值的绝对误差也可能很大.例1.2 试建立函数的绝对误差(限)、相对误差n n x x x x x x f y +++== 2121),,,(的近似传播公式,以及时的相对误差限传播公式.{}ni i x 1*0=> 解 由公式(1.7)和(1.8)可分别推得和的绝对误差、相对误差传播公式如下(1.11)∑∑==≈ni i ini nix e x e x x xf y e 1**1**2*1*)()(),,,()(= (1.12)∑∑==≈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 i n i ini ix x e xe y e 1*1*1**)()()()(ε于是有和的绝对误差限近似传播公式 ∑=≈ni ixy 1**)()(εε当时,由式(1.3)推得相对误差限的近似传播公式{}ni i x 1*=>)(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 yx x x y x yxy εεεεεε≤≤=≤≤=≤≤====≤=≈∑∑∑∑ 例1.3使用足够长且最小刻度为1mm 的尺子,量得某桌面长的近似值3.1304*=a mm ,宽的近似值mm (数据的最后一位均为估计值). 试求桌子面积近似值的绝8.704*=b 对误差限和相对误差限.解 长和宽的近似值的最后一位都是估计位,尺子的最小刻度是毫米,故有误差限 mm ,mm 5.0)(*=a ε5.0)(*=b ε面积,由式(1.7)得到近似值的绝对误差近似为ab S =***b a S = )()()(*****b e a a e b S e +≈进而有绝对误差限 mm 255.10045.03.13045.08.704)()()(*****=⨯+⨯=+≈b a a b S εεε相对误差限 %11.00011.08.7043.130455.1004)()(***=≈⨯=≈S S S r εε§1.3 数值实验与算法性能比较本节通过几个简单算例说明解决同一个问题可以有不同的算法,但算法的性能并不完全相同,他们各自有自己的适用范围,并进而指出算法设计时应该注意的事项. 算例1.1 表达式,在计算过程中保留7位有效数字,研究对不同)1(1111+=+-x x x x 的x ,两种计算公式的计算精度的差异.说明1:Matlab 软件采用IEEE 规定的双精度浮点系统,即64位浮点系统,其中尾数占52位,阶码占10位,尾数以及阶码的符号各占1位. 机器数的相对误差限(机器精度)eps=2-52≈2.220446×10-16,能够表示的数的绝对值在区间(2.2250739×10-308,1.797693×10308)内,该区间内的数能够近似表达,但有舍入误差,能够保留至少15位有效数字. 其原理可参阅参考文献[2, 4].分析算法1: 和算法2: 的误差时,精确解用双精111)(1+-=x x x y )1(1)(2+=x x x y 度的计算结果代替. 我们选取点集中的点作为x ,比较两种方法误差的差异.301}{=i i π 从图1.1可以看出,当x 不是很大时,两种算法的精度相当,但当x 很大时算法2的精度明显高于算法1. 这是因为,当x 很大时,和是相近数,用算法1进行计算时出x 111+x 现相近数相减,相同的有效数字相减后变成零,于是有效数字位数急剧减少,自然相对误差增大. 这一事实也可以从误差传播公式(1.12)分析出. 鉴于此,算法设计时,应该避免相近数相减.在图1.2中我们给出了当x 接近时,两种算法的精度比较,其中变量x 依次取为1-. 从图中可以看出两种方法的相对误差基本上都为,因而二者的精度相当.{}3011=--i iπ710-图1.1 算例1.1中两种算法的相对误差图()+∞→x图1.2 算例1.1中两种算法的精度比较)1(-→x 算例1.2 试用不同位数的浮点数系统求解如下线性方程组⎩⎨⎧=+=+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 结果见表1.1.表1.1 对算例1.2用不同算法的计算结果比较算例1.2*1x )(*1x r ε*2x )(*2x r ε算法1a 0.00000.10×1010.50000.25×10-7算法2a 0.25000.75×10-70.50000.25×10-7算法1b 0.26000000.40×10-10.49999870.10×10-6算法2b0.25000200.50×10-80.50000000.25×10-7对于算例1.2,表中的数据表明,当用4位尾数计算时,算法1给出错误的结果,算法2则给出解很好的近似. 这是因为在实现算法1时,需要给第一个方程乘以加00001.0/2-至第二个方程,从而削去第二个方程中的系数,但在计算的系数时需做如下运算1x 2x(1.13)661610000003.0104.0103.0104.03200001.02⨯⨯⨯⨯=+⨯+=-+--对上式用4位尾数进行计算,其结果为. 因为舍入误差,给相对较大的数加以6104.0⨯-相对较小的数时,出现大数“吃掉”小数的现象. 计算右端项时,需做如下运算(1.14)661610000002.0102.0102.0102.02100001.02⨯⨯⨯⨯=+⨯+=-+--同样出现了大数吃小数现象,其结果为. 这样,得到的变形方程组6102.0⨯-⎩⎨⎧⨯-=⨯-⨯=⨯+⨯62612114102.0104.0101.0102.0101.0x x x 中没有原方程组中第二个方程的信息,因而其解远偏离于原方程组的解. 该算法中之所以出现较大数的原因是因为运算,因而算法设计中尽可能避免用绝对值较大的数00001.0/2-除以绝对值较小的数. 其实当分子的量级远远大于分母的量级时,除法运算还会导致溢出,计算机终止运行.虽从单纯的一步计算来看,大数吃掉小数,只是精度有所损失,但多次的大数吃小数,累计起来可能带来巨大的误差,甚至导致错误. 例如在算法1a 中出现了两次大数吃小数现象,带来严重的后果. 因而尽可能避免大数吃小数的出现在算法设计中也是非常必要的. 当用较多的尾数位数进行计算,舍入误差减小,算法1和2的结果都有所改善,算法1的改进幅度更大些.算例1.3 计算积分有递推公式,已知⎰+=1055dx x x I n ),2,1(511 =-=-n I nI n n . 采用IEEE 双精度浮点数,分别用如下两种算法计算的近似值.56ln 0=I 30I算法1 取的近似值为,按递推公式计算0I 6793950.18232155*0=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 的计算结果见表1.2. 误差绝对值的对数图见图1.3.表1.2 算例1.3的计算结果算法1算法2n *nI n n I I -*n *nI nn I I -*18.8392e-002 1.9429e-01639 4.5833e-0033.9959e-0042 5.8039e-0029.8532e-016384.2115e-0037.9919e-0053 4.3139e-002 4.9197e-01537 4.4209e-003 1.5984e-0054 3.4306e-002 2.4605e-01436 4.5212e-003 3.1967e-0065 2.8468e-002 1.2304e-01335 4.6513e-003 6.3935e-0076 2.4325e-002 6.1520e-01334 4.7840e-003 1.2787e-007………33 4.9255e-003 2.5574e-00825 1.1740e+001 1.1734e+00132 5.0755e-003 5.1148e-00926-5.8664e+001 5.8670e+00131 5.2349e-003 1.0230e-00927 2.9336e+002 2.9335e+002 305.4046e-003 2.0459e-01028-1.4667e+003 1.4668e+003 297.3338e+0037.3338e+003 30-3.6669e+004 3.6669e+004图1.3 算例1.3用不同算法计算结果的误差绝对值的对数图从表1.2中的计算结果可以看出,算法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,即有m m n 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.3. 这个算例告诉我们应该选用数值稳定的算法.知识结构图⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧⎩⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧算法设计要点数值方法的稳定性数值方法的收敛性算法多元函数一元函数传播有效数字相对误差(限)绝对误差(限)度量截断误差舍入误差误差的产生误差误差与算法习题一1 已知有效数,,. 试给出各个近似值的绝对误105.3*1-=x 4*210125.0⨯=x 010.0*3=x 差限和相对误差限,并指出它们各有几位有效数字.2 证明当近似值是x 的较好近似时,计算相对误差的计算公式和相差一个*x x x x -***xxx -和同阶的无穷小量.2*⎪⎪⎭⎫⎝⎛-x x x 3 设x 的近似值具有如式(1.5)的表示形式,试证明*x 1)若具有n 位有效数字,则相对误差;*x n r a x e -⨯≤11*1021)(2)若相对误差,则至少具有n 位有效数字.n r a x e -⨯+≤11*10)1(21)(*x 4 试建立二元算术运算的绝对误差限传播近似计算公式.5 试建立如下表达式的相对误差限近似传播公式,并针对第1题中数据,求下列各近似值的相对误差限.1) ; 2) ; 3) *3*2*1*1x x x y +=3*2*2x y =*3*2*3/x x y =6若例题1.3中使用的尺子长度是80mm ,最小刻度为1mm ,量得某桌面长的近似值mm ,宽的近似值mm . 试估计桌子长度、宽度的绝对误差限,并3.1304*=a 8.704*=b 求用该近似数据计算出的桌子面积的绝对误差限和相对误差限.7 改变如下计算公式,使其计算结果更为精确.1) 且0,cos 1≠-x xx1<<x 2)1,1ln )1ln()1(ln 1>>--++=⎰+N N N N N xdx N N3) 1,133>>-+x x x 8 (数值试验)试通过分析和数值试验两种手段,比较如下三种计算近似值算法的可靠性.1-e 算法1 ;∑=--≈mn nn e 01!)1( 算法2 ;101!1-=-⎪⎭⎫ ⎝⎛≈∑m n n e算法3 ;101)!(1-=-⎪⎪⎭⎫ ⎝⎛-≈∑m n n m e9 (数值试验)设某应用问题归结为如下递推计算公式 ,,72.280=y 251-=-n n y y,2,1=n 在计算时取为具有5位有效数字的有效数. 试分析近似计算公式的2*c **1*5c y y n n -=-绝对误差传播以及相对误差传播情况,并通过数值实验验证 (准确值可以用IEEE 双精度浮点运算结果代替),该算法可靠可用吗?。
数值分析第1章绪论

THANKS
感谢您的观看
算法创新
在数值分析中,创新算法的提出是推 动学科发展的重要动力。新的算法可 以解决传统算法难以处理的问题,提 高计算效率和精度。
Part
05
Байду номын сангаас
数值分析的展望与启示
数值分析与其他学科的交叉研究
数值分析与物理学的交叉
数值分析在解决物理问题中扮演着重要角色,如流体动力学、电磁学和量子力学等领域。 通过数值模拟和计算,可以更深入地理解物理现象和预测新现象。
Part
04
数值分析的挑战与未来发展
数值稳定性的挑战
数值稳定性问题
在数值分析中,算法的数值稳定性是一个重要的问题。不稳定的算法可能会导致计算结果的误差累积,从而影响 结果的精度。
解决方法
为了提高数值稳定性,可以采用多种方法,如改进算法、增加迭代次数、使用稳定的数据类型等。
高性能计算的需求
高性能计算的重要性
或最小化线性目标函数问 题,如单纯形法等。
微分法
数值微分
利用已知函数值估计函数在某点 的导数值。
偏微分方程数值解
通过有限差分法、有限元法等求 解偏微分方程的数值解。
数值积分
利用已知函数值计算函数在某个 区间的积分值。
常微分方程数值解
通过离散化方法求解常微分方程 的数值解,如欧拉法、龙格-库塔 法等。
逼近法
最佳平方逼近
利用已知的离散数据点构造一个多项式,使得该 多项式在最小二乘意义下逼近目标函数。
傅里叶逼近
利用傅里叶级数的性质进行逼近,适用于周期函 数的逼近。
ABCD
切比雪夫逼近
利用切比雪夫多项式的性质进行逼近,具有最佳 逼近和一致逼近的特点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(3) 有好的计算复杂性:
节省时间(时间复杂性)和计算机存储空间 (空间复杂性)
(4) 要有数值实验。
通过数值实验证明是有效的.
研究的内容 1 非线性方程与方程组的数值方法;(第2、5章)
2 线性方程组的数值方法;(第3、4章)
3 插值与数值逼近;(第6、7章) 4 数值积分与数值微分;(第8章) 5 微分方程的数值解法. (第9章) 6 特征值与特征向量的计算. (第10章)
f ( x ) tan( x ) 1 2 f ( x ) 1 tan ( x) 2 cos ( x ) x * f ( x*) 1 Cp x* tan( x*) f ( x*) tan( x*)
1 | x x | 10m n , 2
称 x 有n位有效数字.
例:按四舍五入原则将下列各数保留到5位有 效数字:187.9325, 0.03785551, 8.000033. 解:
187.9325 187.93 0.03785551 0.037856 8.000033 8.0000
1 10 ( n1) 2(a1 1)
(a1 1) 10
1 10m n 2
m 1
所以 x 至少具有n位有效数字.
定理1说明有效数字越多,相对误差限越小. 例 要使 20 的近似值的相对误差限小于0.1% 要取几位有效数字? 解 假设取n位有效数字,由定理1可知
从而 即
x 0.5 x x 0.5,
70 0.5 x 70 0.5, x [69.5,70.5].
或
设某量的准确值为x, x 是x的近似值, 定义: * er 为 x 的相对误差,若 e 为 x 的绝对误差,
e x x ,
| e ( x ) || x2 x | 10
* 2
2
3
相对误差为
r
10 | e ( x1 ) | 0.81% 1.233 3 10 * | er ( x 2 ) | 100% 0.001
*
3
(2) 数值运算的误差估计 * * x *, y * *( x ), *( y ) 设 是 x 和 y 的近似值, 为对应的绝对误差限,则x*和y*的四则运算的 绝对误差限为
2
,(y* 0)
例:已测得某长方形场地长 x 的近似值 x 110 m,宽y的近似值y*=80m,且 *( x*) 0.2m, *( y*) 0.1m, 计算面积
S xy 的绝对误差限和相对误差限。
解
S x * y* 110 80 8800(m2 ),
1 n1 10 , 2a1
r
a1 4,
∴ 只要取n=4,就有
0.125 10 10
r 3 3
即对 20 的近似值取4位有效数字即可.
(4) 条件数与病态问题
定义 设f为 R R上的实值函数, 对于给定的x
计算y=f(x). 若y*是y的近似值,则称 y y y *
e x x
为 x 的绝对误差,简称误差. 通常我们无法算出准确值 x ,从而也不能 算出误差的准确值,只能根据测量或计算估计 出误差的绝对值的上界,即误差限。
例: 用毫米刻度尺测量一长度为x的物体,测量值
为 x 70mm,则 x 的误差限是0.5mm,即
x x 0.5,
*( x y ) *( x ) *( y )
* * * *
*( x y ) | x* | *( y ) | y* | *( x )
* * * *
*(x / y )
* *
| x* | * ( y ) | y* | * ( x )
* *
| y* |
解决实际问题的过程: 观测误差 截断误差 数值计算方法
模型误差
实际问题
数学模型
计算结果
程序设计
舍入误差
(1) 模型误差 用计算机解决科学计算问题首先要建立数 学模型,它是对被描述的实际问题进行抽象, 简化得到的,因而是近似的,我们把数学模型 与实际问题之间的这种误差成为模型误差.
(2) 参数误差 数学模型中包含一些根据观测得到的物理 量,如时间、温度和电压等。测量的数据只能 是近似的,测量值与真实值之间的误差为参数 误差.
为前向误差. 若存在x*使得f(x*)=y*, 则称
x x x * 为后向误差.
例 设y*=1.4为 2 的近似值,计算前向, 后向误差
y y y* 2 1.4 0.014
x x x* 2 1.96 0.04
前向误差和后向误差之间的关系
y f ( x*)x
x x 1 ( n 1) | e | 10 x 2a1
r
其中 a1 0 ;反之, 如果 x 的相对误差满足
x x 1 ( n 1) | er | 10 x 2(a1 1)
x 则 至少具有n位有效数字.
m m | x | 0. a a a 10 0. a 10 证明: 1 2 n 1
f ( n ) ( x0 ) ( x x0 )n Rn ( x ) n!
f ( n1) ( ) Rn ( x ) ( x x0 )n1 , ( n 1)!
( x0 , x).
若 x x0 较小时,有
f ( x ) Pn ( x )
k 0 n
f ( k ) ( x0 ) k ( x x0 ) k!
Numerical Analysis
数值分析
主讲: 邵嘉婷
shaojiating@
北京工业大学数理学院
第一章
1 数值分析简介
绪论
2 误差来源与种类 3 误差的基本概念 4 数值计算中需要注意的问题
1 数值分析简介 数值分析也称计算方法,属于计算数学的 研究范畴。它研究用计算机求解各种数学问题 数值方法的设计、理论分析和软件实现.
mn 1 10 x x 1 ( n 1) 2 | er | 10 x 0.a1 10m 2a1
反之,
x x | x x || x | x
| x | 0.a1a2 an 10m (a1 1) 10m1
由泰勒展开得
f ''( ) 2 f ( x ) f ( x*) f '( x*)( x x*) ( x x*) 2 ( x , x*) if x x * ( x*, x ) if x x *
f '( x ) 0, 则 若
( f ( x*)) | f '( x*) | *( x*).
则数值方法的截断误差为
f ( n1) ( ) Rn ( x ) f ( x ) Pn ( x ) ( x x0 )n1 ( n 1)!
(4) 舍入误差
有了求解数学问题的计算公式后,用计算 机进行数值计算时,由于计算机字长的位数有 限,只能用有限位数进行计算. 且当两数进行 算术运算时,其结果也要进行舍入,这种由舍 入产生的误差称为舍入误差. 如用3.14159来近似代替π产生的舍入误差 为: 3.14159 0.0000026
(3) 有效数字 当准确值x有多位时,常常按四舍五入 的原则得到x的前几位近似值 x ,如:
1 1 1 3 2 10 10 3.1415926 3.14 2 2 1
* 1
0.314 10
200 14.142 14.1
1 1 5 2 3 10 e 0.0067379 0.00674 10 2 2 2
在上述讨论的误差来源中,前两种误差是 客观存在的,后两种误差是由计算方法引起的. 本课程是研究数学问题的数值方法,因此只涉 及到后两种误差(截断误差和舍入误差),而 截断误差将结合具体算法来讨论。
3 误差的基本概念
(1) 绝对误差和相对误差
设某量的准确值为x, x 是x的近似值, 定义: 称
x 称 为 的绝对误差限。 显然
x x x ,
常记为
x x .
误差限的大小并不能完全表示近似值的好坏。 例 设 x 10 1, y 1000 1, 则
x* 10, y* 1000,
* * x y 1
但
* x
x 注:8.00033 的近似数 x 8.000, 2 8 的写法 1
是有区别的:
x 有4位有效数字;x 仅有1位有效数字.
1 2
有效数字和相对误差之间的关系:
m x 0. a a a 10 , 定理1 设x的近似数为 1: (1) 内容丰富; (2) 具有数学的抽象性和严谨性; (3) 应用的广泛性; (4) 很强的实用性; (5) 与计算机密切结合.
2 误差的来源与种类 数值计算方法得到的结果与实际问题的 真实值一般不等,称其差为误差. 引起误差的 原因是多方面的,对这些误差的分析也是十 分必要的。否则,一个看似合理的计算可能 会得出错误的结果。
( S*) | x* | *( y*) | y* | *( x*)
110 0.1 80 0.2 27(m )
2
| ( S*) |
r
*( S*)
S*
27 0.3068%. 8800
当自变量有误差时,计算函数也产生误差。
f ( x ) x 例: 设 是一元可微函数, 是x的近似值,
5