第一章 误差分析与向量与矩阵的数一、容提要本章要求掌握绝对误差、相对误差、有效数字、误差限的定义及其相互关系;掌握数值稳定性的概念、设计函数计算时的一些基本原则和误差分析;熟练掌握向量和矩阵数的定义及其性质。
1.误差的基本概念和有效数字 1).绝对误差和相对误差的基本概念设实数x 为某个精确值,a 为它的一个近似值,则称a x -为近似值a 的绝对误差,简称为误差. 当0≠x 时,x ax -称为a 的相对误差.在实际运算中,精确值x 往往是未知的,所以常把a ax -作为a 的相对误差.2).绝对误差界和相对误差界的基本概念设实数x 为某个精确值,a 为它的一个近似值,如果有常数a e ,使得 a e a x ≤-称a e 为a 的绝对误差界,或简称为误差界.称ae a是a 的相对误差界.此例计算中不难发现,绝对误差界和相对误差界并不是唯一的,但是它们越小,说明a 近似x 的程度越好,即a 的精度越好.3).有效数字设实数x 为某个精确值,a 为它的一个近似值,写成ΛΛn ka a a a 21.010⨯±=它可以是有限或无限小数的形式,其中),2,1(Λ=i a i 是9,,1,0Λ中的一个数字,k a ,01≠为整数.如果n k a x -⨯≤-1021则称a 为x 的具有n 位有效数字的近似值.如果a 有n 位有效数字,则a 的相对误差界满足:n a a a x -⨯≤-111021。
4).函数计算的误差估计如果),,,(21n x x x f y Λ=为n 元函数,自变量n x x x ,,,21Λ的近似值分别为n a a a ,,,21Λ,则)(),,,(),,,(12121k k nk akn n a x x fa a a f x x x f -⎪⎪⎭⎫⎝⎛∂∂≈-∑=ΛΛ 其中),,,(21n kak a a a f x x f Λ∂∂=⎪⎪⎭⎫ ⎝⎛∂∂,所以可以估计到函数值的误差界,近似地有 k a n k aka n n e x fe a a af x x x f ∑=⎪⎪⎭⎫⎝⎛∂∂≈≤-12121),,,(),,,(ΛΛ 如果令2=n ,设21,x x 的近似值分别为21,a a ,其误差界为111a e a x ≤-和≤-22a x 2a e ,取),(21x x f y =为21,x x 之间的四则运算,则它们的误差估计为,1121a a a a e e e +≈±;112121a a a a e a e a e +≈⋅;22211121a e a e a e a a a a +≈,02≠a 。
数相加或减时,其运算结果的精度不会比原始数据的任何一个精度高. 对于两个数作相减运算时,由于其相对误差界:21212121a a e e a a e a a a a -+≈-±。
如果1x 和2x 是两个十分接近的数,即1a 和2a 两个数十分接近,上式表明计算的相对误差会很大,导致计算值21a a -的有效数字的位数将会很少。
对于两个数作相除运算时,由于其相对误差界:2211121a e a e a e a a a a +≈。
从关系式中可以看出,如果2x 很小,即2a 很小,计算值21a a 的误差可能很大。
5).数值稳定性的概念、设计算法时的一些基本原则⑴ 算法的数值稳定性:一个算法在计算过程中其舍入误差不增长称为数值稳定。
反之,成为数值不稳定。
不稳定的算法是不能使用的。
⑵ 在实际计算中应尽量避免出现两个相近的数相减。
⑶ 在实际计算中应尽力避免绝对值很小数作除数。
⑷ 注意简化运算步骤,尽量减少运算次数。
⑸ 多个数相加,应把绝对值小的数相加后,再依次与绝对值大的数相加。
2.向量和矩阵数把任何一个向量或矩阵与一个非负实数联系起来,在某种意义下,这个实数提供了向量和矩阵的大小的度量。
对于每一个数,相应地有一类矩阵函数,其中每一个函数都可以看作矩阵大小的一种度量。
数的主要的应用:一、研究这些矩阵和向量的误差估计。
二、研究矩阵和向量的序列以及级数的收敛准则。
1)向量数定义 存在n R (n 维实向量空间)上的一个非负实值函数,记为x x f =)(,若该函数满足以下三个条件:即对任意向量x 和y 以及任意常数R ∈α(实数域)(1)非负性 0≥x ,并且0=x 的充分必要条件为0=x ; (2)齐次性x x αα=;(3)三角不等式y x y x +≤+. 则称函数⋅为nR 上的一个向量数.常用三种的向量数设任意n维向量T n x x x ),,,(21Λ=x ,(Tx 为向量x 的转置),∑==ni i x 11x , 向量的1-数()21,21122x x x x x x =⋅=⎪⎭⎫⎝⎛=∑=T n i i , 向量的2-数i ni x x≤≤∞=1max , 向量的∞-数一般情况下,对给定的任意一种向量数⋅,其加权的数可以表为x x W W =,其中W 为对角矩阵,其对角元作为它的每一个分量的权系数。
向量数的连续性定理 nR 上的任何向量数x 均为x 的连续函数。
向量数的等价性定理 设α⋅和β⋅为nR 上的任意两种向量数,则存在两个与向量x 无关的正常数c 1和c 2,使得下面的不等式成立βαβx xx21c c ≤≤,其中n x R ∈∀.2). 矩阵数 定义 存在nn ⨯R (n n ⨯维复矩阵集合)上的一个非负实值函数,记为A A f =)(,对任意的A,nn ⨯∈RB 均满足以下条件:(1)非负性:对任意矩阵A 均有0≥A ,并且0=A 的充分必要条件为O A =;(2)齐次性:A A αα=,α∈C ;(3)三角不等式:B A B A +≤+, nn ⨯∈R B A,;(4)相容性:B A AB ⋅≤, nn ⨯∈R B A,,则称⋅为n n ⨯R 上的矩阵数。
我们可定义如下的矩阵数:∑∑===m i nj ij m a 111A ,矩阵的1m -数()21112⎪⎪⎭⎫ ⎝⎛=∑∑==mi nj ij F a A ,矩阵的F -数(Frobenius )数。
(矩阵数与向量数相容性定义) 对于一种矩阵数M⋅和一种向量数V ⋅,如果对任意n ×n 矩阵A 和任意n 维向量x , 满足V M V x A Ax ≤,则称矩阵数M⋅与向量数V ⋅是相容的。
3)矩阵的算子数定理 已知nR 上的向量数V ⋅,A 为n ×n 矩阵,定义 V VV MVAx x Ax Axx 1max max=≠==则M A 是一种矩阵数,且与已知的向量数相容,称之为矩阵的算子数。
三种常用的矩阵的算子数∑=≤≤=mi ij nj a 111max A ; (列数)∑=≤≤∞=nj ij mi a 11max A. (行数),)(max 2A A A T λ=(谱数)其中)(max A A T λ表示矩阵A A T的最大特征值。
对任何算子数⋅,单位矩阵nn RI ⨯∈的数为1,即1=I 。
可以证明:① 任意给定的矩阵数必然存在与之相容的向量数;任意给定的向量数必然存在与之相容的矩阵数(如从属数).② 一个矩阵数可以与多种向量数相容(如矩阵1m 数与向量p -数相容);多种矩阵数可以与一个向量数相容(如矩阵-F 数和矩阵-2数与向量-2数相容)。
③ 从属数一定与所定义的向量数相容,但是矩阵数与向量数相容却未必有从属关系。
(如,F ⋅与向量2⋅、1m ⋅与向量1⋅相容,但无从属关系)。
④ 并非任意的矩阵数与任意的向量数相容。
4)矩阵数的性质① 设⋅为n n ⨯R 矩阵空间的一种矩阵数,则对任意的n 阶方阵A 均有 A A ≤)(ρ.其中(){}0det max )(=-=A I A λλρ为方阵A 的谱半径。
注意:当TA A =时,()()())(max 2max max 2A A ρλλλ====A A A A T 。
② 对于任给的ε>0, 则存在nn ⨯R 上的一种算子数M⋅(依赖矩阵A 和常数ε),使得ερ+≤)(A A M.③ 对于nn ⨯R上的一种算子矩阵数⋅,如果nn ⨯∈R A 且A <1, 则AI ±n 可逆且()AA I -≤±-111n . 二、典型例题分析例1.1:下列近似值的绝对误差限均为0.005,问它们各有几位有效数字?002.138=a ,0312.0-=b ,41086.0-⨯=c解: 现将近似值写成标准形式:310138002.0⨯=a , 110312.0-⨯-=b , 41086.0-⨯=c ,在直接根据有效数字定义得出,21021-⨯≤-a x ⇒=-n k 23-=-n ⇒5=n ,即a 有5 位有效数字;21021-⨯≤-b x ⇒=-n k 21-=--n ⇒1=n ,即b 有1位有效数字;21021-⨯≤-c x ⇒=-n k 24-=--n ⇒2-=n ,即c 无有效数字。
例1.2:已知x 的相对误差为003.0,求ma 的相对误差。
解:此题要利用函数计算的误差估计,即取()m x x f =,()1-⋅='m x m x f ,则由 ()()()()a x a f a f x f -'≈- ,可推出 ()a x am a x m mm-⋅⋅≈--1,故m a 的相对误差为m aax m a a x m m m 003.0=-⋅≈-。
例1.3:此为减少运算次数达到避免误差危害的例子利用3位算术运算求()5.12.31.623++-=x x x x f 在71.4=x 处的值。
表中给出了传统的方法的计算的中间结果。
在这里我们使用了两种取值法:截断法和舍入法。
x2x 3x 21.6x x 2.3精确值4.71 22.1841 104.487 111 .323 0115.072 3位数值(截断法) 4.71 22.1 104 15.0 3位数值(舍入法) 4.71 22.110415.1精确值:()5.1072.1501323.135111487.10471.4++-=f 899263.14-= 3位数值(截断法):()()()5.135.10.1513410471.4-=++-=f 3位数值(舍入法):()()()4.135.11.1513510571.4-=++-=f 上述3位数值方法的相对误差分别是05.0899263.145.13899263.14≈-+-,截断法 06.0899263.144.13899263.14≈-+-,舍入法作为另一种办法,用秦九韶方法(嵌套法)可将()x f 写为()5.12.31.623++-=x x x x f ()()5.12.31.6++-=x x x那么,3位数值(截断法):()()()2.145.171.42.371.41.671.471.4-=++-=f()5.171.42.371.438.1+⨯+⨯-= ()5.171.42.354.6+⨯+-=5.171.434.3+⨯-=2.145.17.15-=+-=3位数值(舍入法):()()()2.145.171.42.371.41.671.471.4-=++-=f()5.171.42.371.438.1+⨯+⨯-= ()5.171.42.355.6+⨯+-=5.171.435.3+⨯-=3.145.18.15-=+-=则相对误差分别是5004.0899263.142.14899263.14≈-+-,(截断法) 0025.0899263.143.14899263.14≈-+-,(舍入法) 可见使用秦九韶方法(嵌套法)已将截断近似计算的相对误差减少到原方法所得相对误差的%10之。