计算方法第0章绪论
数值计算1-5章
数值计算1-5章数值计算⽅法第1章绪论1.1数值计算⽅法的研究对象和特点数值计算⽅法也称数值分析,它研究⽤计算机求解各种数学问题的数值⽅法及其理论。
数学学科内容⼗分⼴泛,数值计算⽅法属于计算数学的范畴,这⾥只涉及科学和⼯程计算中常见的数学问题,如函数的插值、逼近、离散数据的拟合、数值积分与数值微分、线性和⾮线性⽅程数值解法和矩阵特征值问题数值解法和微分⽅程数值解法等.由于计算机科学与技术的迅速发展,数值计算⽅法的应⽤已经普遍深⼊到各个科学领域,很多复杂和⼤规模的计算问题都可以在计算机上进⾏计算,新的、有效的数值⽅法不断出现.现在,科学与⼯程中的数值计算已经成为各门⾃然科学和⼯程技术科学研究的⼀种重要⼿段,成为与实验和理论并列的⼀个不可缺少的环节.所以,数值计算⽅法既是⼀个基础性的,同时也是⼀个应⽤性的数学学科分⽀,与其他学科的联系⼗分紧密.⽤数值⽅法求解数学问题⾸先要构造算法,即由运算规则(包括算术运算、逻辑运算和运算顺序)构成的完整的解题过程.同⼀个数学问题可能有多种数值计算⽅法,但不⼀定都有效.评价⼀个算法的好坏主要有两条标准:计算结果的精度和得到结果所付出的代价.我们⾃然应该选择代价⼩⼜能满⾜精度要求的算法.计算代价也称为计算复杂性,包括时间复杂性和空间复杂性.时间复杂性好是指节省时间,主要由运算次数决定.空间复杂性好是指节省存储量,主要由使⽤的数据量决定.⽤计算机求数学问题的数值解不是简单地构造算法,它涉及多⽅⾯的理论问题,例如,算法的收敛性和稳定性等.除理论分析外,⼀个数值⽅法是否有效,最终要通过⼤量的数值实验来检验.数值计算⽅法具有理论性、实⽤性和实践性都很强的特点.作为数值计算⽅法的基础知识,本课程不可能⾯⾯俱到.除构造算法外,各章根据内容⾃⾝的特点,讨论的问题有所侧重.学习时我们⾸先要注意掌握⽅法的基本原理和思想,要注意⽅法处理的技巧及其与计算机的结合,要重视误差分析、收敛性和稳定性的基本理论.其次,要通过例⼦,学习使⽤各种数值⽅法解决实际计算问题,熟悉数值⽅法的计算过程.最后,为了掌握本课程的内容,还应做⼀定数量的理论分析与计算练习.1.2数值计算的误差1.2.1误差的来源应⽤数学⼯具解决实际问题,⾸先,要对被描述的实际问题进⾏抽象、简化,得到实际问题的数学模型.数学模型与实际问题之间会出现的误差,我们称之为模型误差.在数学模型中,通常要包含⼀些由观测数据确定的参数.数学模型中⼀些参数观测结果⼀般不是绝对准确的.我们把观测模型参数值产⽣的误差称为观测误差.例如,设⼀根铝棒在温度t时的实际长度为Lt,在t=0时的实际长度为L0,⽤lt来表⽰铝棒在温度为t时的长度计算值,并建⽴⼀个数学模型l t =L(1+at), a≈0.0000238/℃,其中a是由实验观测得到的常数,a∈[0.0000237,0.0000239],则称Lt -lt为模型误差,a-0.0000238是a 的观测误差.在解实际问题时,数学模型往往很复杂,因⽽不易获得分析解,这就需要建⽴⼀套⾏之有效的近似⽅法和数值⽅法.我们可能⽤容易计算的问题代替不易计算的问题⽽产⽣误差,也可能⽤有限的过程代替⽆限的过程⽽产⽣误差.我们将模型的准确解与⽤数值⽅法求得的准确解之间的误差称为截断误差或⽅法误差.例如,对函数()()35721sin 13!5!7!21!n x x x xn x x n +=-+-+++-+,该式右边有⽆限多项,计算机上⽆法计算.然⽽,根据微积分学中的泰勒(Taylor )定理,当|x |较⼩时,我们若⽤前3项作为sin x 的近似值,则截断误差的绝对值不超过77!x .⽤计算机做数值计算时,⼀般也不能获得数值计算公式的准确解,需要对原始数据、中间结果和最终结果取有限位数字.我们将计算过程中取有限位数字进⾏运算⽽引起的误差称为舍⼊误差.例如,13=0.33333…,如果我们取⼩数点后4位数字,则13-0.3333=0.000033…就是舍⼊误差.在数值分析中,除了研究数学问题的算法外,还要研究计算结果的误差是否满⾜精度要求,这就是误差估计问题.在数值计算⽅法中,主要讨论的是截断误差和舍⼊误差.1.2.2 误差与有效数字定义1.1 设x 是某实数的精确值,A x 是它的⼀个近似值,则称x -A x 为近似值A x 的绝对误差,或简称误差.Ax x x-称为x A 的相对误差.当x =0时,相对误差没有意义.在实际计算中,精确值x 往往是不知道的,所以通常把AAx x x -作为A x 的相对误差.定义1.2 设x 是某实值的精确值,A x 是它的⼀个近似值,并可对A x 的绝对误差作估计|x -A x |?A ε,则称εA 是A x 的绝对误差界,或简称误差界.称AAx ε是A x 的相对误差界.例 1.1 我们知道π=3.1415926…,若取近似值πA =3.14,则π-πA =0.0015926…,可以估计绝对误差界为0.002,相对误差界为0.0006.例 1.2 测量⼀⽊板长是954 cm,问测量的相对误差界是多⼤?解因为实际问题中所截取的近似数,其绝对误差界⼀般不超过最⼩刻度的半个单位,所以当x =954 cm 时,有A ε=0.5 cm ,其相对误差界为0.50.00052410.053%954AAx ε==< .定义1.3 设A x 是x 的⼀个近似值,将A x 写成12100.,k A i x a a a =±? , (1.1) 它可以是有限或⽆限⼩数的形式,其中i a (i =1,2,…)是0,1,…,9中的⼀个数字,1a ≠0,k 为整数.如果|x -A x |?0.5×10k n -,则称A x 为x 的具有n 位有效数字的近似值.可见,若近似值A x 的误差界是某⼀位的半个单位,该位到A x 的第⼀位⾮零数字共有n 位,则A x 有n 位有效数字.通常在x 的准确值已知的情况下,若要取有限位数的数字作为近似值,就采⽤四舍五⼊的原则,不难验证,采⽤四舍五⼊得到的近似值,其绝对误差界可以取为被保留的最后数位上的半个单位.例如|π-3.14|?0.5×210-, |π-3.142|?0.5×310-.按定义,3.14和3.142分别是具有3位和4位有效数字的近似值.显然,近似值的有效数字位数越多,相对误差界就越⼩,反之也对.下⾯,我们给出相对误差界与有效数字的关系.定理1.1 设x 的近似值A x 有(1.1)式的表达式. (1) 如果A x 有n 位有效数字,则 111×102A nAx x x a --≤; (1.2)(2) 如果()111×1021A nAx x x a --≤+, (1.3)则A x ⾄少具有n 位有效数字.证由(1.1)式可得到()111--?+≤≤?k A k a x a . (1.4)所以,当A x 有n 位有效数字时11110.5101×10,×102k nA nk Ax x x a a ----?≤=即(1.2)式得证.由(1.3)式和(1.4)式有()()nk nk AAA A a a x x x x x x ---?=?+?+≤-=-105.0101211011111,即说明A x 有n 位有效数字,(2)得证.例1.30.1%,应取⼏位有效数字?解由于因此1a =4,设有n 位有效数字,则由(1.2)式,可令11110a -?≤,即410n -?18,得n ?4.故只要对4位有效数字,其相对误差就可⼩于0.1%,4.472.例1.4 已知近似数A x 的相对误差界为0.3%,问A x ⾄少有⼏位有效数字?解设A x 有n 位有效数字,由于A x 的第⼀个有效数1a 没有具体给定,⽽我们知道1a ⼀定是1,2,…,9中的⼀个,由于()12311101000210291A Ax x x --≤<=+,故由(1.3)式知n=2,即A x ⾄少有2位有效数字.1.2.3 函数求值的误差估计对⼀元函数f(x ),⾃变量x 的⼀个近似值为A x ,以f(A x )近似f(x ),其误差界记作ε(f(A x )).若f(x )具有⼆阶连续导数,f′(A x )与f″(A x )的⽐值不太⼤,则可忽略|x -A x |的⼆次项,由Taylor 展开式得到f(A x )的⼀个近似误差界ε(f(A x ))≈|f′(A x )|ε(A x ).对n 元函数f(x 1,x 2,…,x n ),⾃变量x 1,x 2,…,x n 的近似值分别为x 1A ,x 2A ,…,x n A ,则有()()()12121,,,,,,nn A A nA k kA k k Af f x x x f x x x x x x=??-≈- ∑ ,其中()12,,,A A nA k k f f x x x x x A.因此,可以得到函数值的⼀个近似误差界()()()121,,,nAA nA kA k k Af f x x x x x εε=??≈ ∑. 特别地,对f(x 1,x 2)=x 1±x 2有ε(x 1A ±x 2A )=ε(x 1A )+ε(x 2A ).同样,可以得到ε(x 1A x 2A )≈|x 1A |ε(x 2A )+|x 2A |ε(x 1A ),()()12211222A A A A A A A x x x x x x x εεε+??≈,20A x ≠例1.5 设有长为l,宽为d 的某场地.现测得l 的近似值l A =120 m,d 的近似值d A =90 m ,并已知它们的误差界为|l-l A |?0.2 m,|d-d A |?0.2 m.试估计该场地⾯积S=ld 的误差界和相对误差界.解这⾥ε(l A )=0.2,ε(d A )=0.2,并且有2,,10800A A A S S d l S l d mld====.于是有误差界()21200.2900.242A S m ε≈?+?=,相对误差界()()420.39%10800A r A AS S l dεε=≈=.例1.6 设有3个近似数a=2.31, b=1.93, c=2.24,它们都有3位有效数字.试计算p=a+bc 的误差界和相对误差界,并问p 的计算结果能有⼏位有效数字?解 p=2.31+1.93×2.24=6.6332.于是有误差界ε(p)=ε(a)+ε(bc)≈ε(a)+|b|ε(c)+|c|ε(b) =0.005+0.005(1.93+2.24)=0.02585,相对误差界εr (p)=()0.025856.6332p pε≈≈0.39%.因为ε(p)≈0.02585<0.05,所以p=6.6332能有2位有效数字.1.2.4 计算机中数的表⽰任意⼀个⾮零实数⽤(1.1)式表⽰,是规格化的⼗进制科学记数⽅法.在计算机中通常采⽤⼆进制的数系(或其变形的⼗六进制等),并且表⽰成与⼗进制类似的规格化形式,即浮点形式±2m ×0.β1β2…βt ,这⾥整数m 称为阶码,⽤⼆进制表⽰为m=±α1α2…αs , αj =0或1(j=1,2,…,s),s 是阶的位数.⼩数0.β1β2…βt 称为尾数,其中β1=1,βj =0或1(j=2,3,…,t),t 是尾数部位的位数.s 和t 与具体的机器有关.由于计算机的字长总是有限位的,所以计算机所能表⽰的数系是⼀个特殊的离散集合,此集合的数称为机器数.⽤浮点⽅式表⽰的数有⽐较⼤的取值范围.⼗进制输⼊计算机时转换成⼆进制,并对t 位后⾯的数作舍⼊处理,使得尾数为t 位,因此⼀般都有舍⼊误差.两个⼆进制数作算术运算时,对计算结果也要作类似的舍⼊处理,使得尾数为t 位,从⽽也有舍⼊误差.在实现算法时,计算的最后结果与算法的精确解之间的误差,从根本上说是由机器的舍⼊误差造成的,包括输⼊数据和算术运算的舍⼊误差.因此有必要对计算机中数的浮点表⽰⽅法和舍⼊误差有⼀个初步的了解.有时为了分析某⼀个计算⽅法可能出现的误差现象,为了适应⼈们的习惯,我们会采⽤⼗进制实数系统进⾏误差分析.1.3 数值稳定性和要注意的若⼲原则 1.3.1 数值⽅法的稳定性实际计算时,给定的数据会有误差,数值计算中也会产⽣误差,并且,这些误差在进⼀步的计算中会有误差传播.因此,尽管数值计算中的误差估计⽐较困难,我们还是应该重视计算过程中的误差分析.定义 1.4 对于某个数值计算⽅法,如果输⼊数据的误差在计算过程中迅速增长⽽得不到控制,则称该算法是数值不稳定的,否则是数值稳定的.下⾯举例说明误差传播的现象.例 1.7 计算积分值105nxdx I x =+?, n=0,1,…,6.解由于要计算系列的积分值,我们先推导In 的⼀个递推公式.由1110555n n n n x x I I dx x --++=+?111n xdx n-==,可得下⾯两个递推算法.算法1:115n n I I n-=-,n=1,2, (6)算法2:1115n n I I n -??=-,n=6,5, (1)直接计算可得0ln 6ln 5I =-.如果我们⽤4位数字计算,得I 0的近似值为0I *=0.1823.记n n n E I I *=-,I n *为In 的近似值.对算法1,有15n n E E -=-=…=()5n-E 0.按以上初始值I0的取法有|E 0|?0.5×410-,事实上|E 0|≈0.22×410-.这样,我们得到|E 6|=65|E 0|≈0.34.这个数已经⼤⼤超过了I 6的⼤⼩,所以6I *连⼀位有效数字也没有了,误差掩盖了真值.对算法2,有E k-n =15n ??-E k ,|E 0|=615??|E 6|.如果我们能够给出I 6的⼀个近似值,则可由算法2计算I n (n=5,4,…,0)的近似值.并且,即使E 6较⼤,得到的近似值的误差将较⼩.由于()()11011616551kkk xxI d d x x k k =<<=++??,因此,可取Ik 的⼀个近似值为()()11126151k I k k *=+?? ? ?++??. 对k=6有6I *=0.0262.按0I *=0.1823和6I *=0.0262,分别按算法1和算法2计算,计算结果如表1-1,其中()1n I 为算法1的计算值, ()2n I 为算法2的计算值.易知,对于任何⾃然数n,都有0表1-1n()1nI()2nInI (4位)0 0.1823 0.1823 0.18231 0.0885 0.0884 0.08842 0.0575 0.0580 0.05803 0.0458 0.0431 0.04314 0.0210 0.0344 0.03435 0.0950 0.0281 0.02856-0.3083 0.0262 0.0243当然,数值不稳定的⽅法⼀般在实际计算中不能采⽤.数值不稳定的现象属于误差危害现象.下⾯讨论误差危害现象的其他表现及如何避免问题.1.3.2 避免有效数字的损失在数值计算中,参加运算的数有时数量级相差很⼤,⽽计算机位数有限,如不注意,“⼩数”的作⽤可能消失,即出现“⼤数”吃“⼩数”的现象. 例1.8 ⽤3位⼗进制数字计算x =101+δ1+δ2+…+δ100,其中0.1?δi ?0.4,i =1,2, (100)解在计算机内计算时,要写成浮点数形式,且要对阶.如果是101与δ1相加,对阶时,101=0.101×103,δ1=0.000×103.因此,如果我们⾃左⾄右逐个相加,则所有的δi 都会被舍掉,得x ≈101.但若把所有的δi 先加起来,再与101相加,就有111=101+100×0.1?x ?101+100×0.4=141.可见,计算的次序会产⽣很⼤的影响.这是因为⽤计算机计算时,在运算中要“对阶”,对阶引起了⼤数吃⼩数的现象.⼤数吃⼩数在有些情况下是允许的,但有些情况下则会造成谬误.在数值计算中,两个相近数相减会使有效数字严重损失.例1.9 求实系数⼆次⽅程20ax bx c ++=的根,其中b 2-4ac>0,ab ≠0. 解考虑两种算法. 算法1:1,22x a=算法2:(12b sign b x a--=, 21c x ax =,其中sign 表⽰取数的符号,即()1,0,0,0,1,0.b sign b b b >??==??-对算法1,若ac b 42>>,则是不稳定的,否则是稳定的.这是因为在算法1中分⼦会有相近数相减的情形,会造成有效数字的严重损失,从⽽结果的误差很⼤.算法2不存在这个问题,在任何情况下都是稳定的.因此称算法1是条件稳定的,算法2是⽆条件稳定的.例如,对于⽅程262.10 1.0000x x ++=,⽤4位有效数字计算,结果如下:算法1:x 1=-62.08, x 2=-0.02000. 算法2:x 1=-62.08, x 2=-0.01611.准确解是x 1=-62.083892…,x 2=-0.016107237….这⾥,ac b 42>>,所以算法1不稳定,舍⼊误差对x 2的影响⼤.在进⾏数值计算时,如果遇到两相近数相减的情形,可通过变换计算公式来避免或减少有效数字的损失.例如,如果|x |≈0,有变换公式1cos sin sin 1cos x x xx-=+.如果x 1≈x 2,有变换公式1122lg lg lgx x x x -=.如果x 〉〉1,有变换公式.此外,⽤绝对值很⼩的数作除数时,舍⼊误差会很⼤,可能对计算结果带来严重影响.因此,要避免除数绝对值远远⼩于被除数绝对值的除法运算.如果⽆法改变算法,则采⽤增加有效位数进⾏计算,或在计算上采⽤双精度运算,但这要增加机器计算时间和多占内存单元.1.3.3 减少运算次数在数值计算中,要注意简化计算步骤,减少运算次数,这也是数值分析中所要研究的重要内容.同样⼀个计算问题,如果能减少运算次数,不但可节省计算机的计算时间,还能减少误差的积累.下⾯举例说明简化计算公式的重要性.例1.10 给定x ,计算多项式()110nn n n n P x a x a xa --=+++的值.如果我们先求ak x k ,需要进⾏k 次乘法,再相加,则总共需要()12n n +次乘法和n次加法才能得到⼀个多项式的值.如果我们将多项式写成下⾯的形式()(){}1210n n n n P x x x x a x a a a a --??=+++++?? ,则只需n 次乘法和n 次加法即可得到⼀个多项式的值,这就是著名的秦九韶算法,可描述为1,,1,2,,0,n n k k k u a u u x a k n n +=??=+=--?最后有()0n u P x =.例1.11 计算ln2的值. 解如果利⽤级数()()11ln 11nn n xx n∞+=+=-∑计算ln2,若要精确到误差的绝对值⼩于10-5,要计算10万项求和,计算量很⼤,并且舍⼊误差的积累也⼗分严重.如果改⽤级数()35211ln 213!5!21!n xx x xx x n +??+=+++++ ? ?-+??来计算ln2,取x =1,则只要计算前9项,截断误差便⼩于10-10.1.4 向量和矩阵的范数为了对矩阵计算进⾏数值分析,我们需要对向量和矩阵的“⼤⼩”引进某种度量.在解析⼏何中,向量的⼤⼩和两个向量之差的⼤⼩是⽤“长度”和“距离”的概念来度量的.在实数域中,数的⼤⼩和两个数之间的距离是通过绝对值来度量的.范数是绝对值概念的⾃然推⼴.1.4.1 向量的范数定义1.5 如果向量x ∈n R 的某个实值函数f(x )=‖x ‖满⾜ (1) 正定性:x ?0,且x =0当且仅当x =0;(2) 齐次性:对任意实数α,都有αx =|α|x ; (3) 三⾓不等式:对任意x ,y ∈R n ,都有+x y ?x +y ,则称x 为n R 上的⼀个向量范数.在n R 中,记()12,,,Tn x x x =x ,实际计算中最常⽤的向量范数有: (1) 向量的∞范数1max i i nx ∞≤≤=x;(2) 向量的1范数11nii x ==∑x;(3) 向量的2范数12221in x i ==??∑x.容易验证,向量的∞范数和1范数满⾜定义1.5中的条件.对于2范数,满⾜定义1.5中的条件(1)和(2)是显然的,对于条件(3),利⽤向量内积的Cauchy-Schwarz 不等式可以验证.更⼀般地,有如下向量的p 范数1pipn px i ==??∑x,其中p ∈ [1,+∞).容易验证1ppn∞∞≤≤xxx,由此可得如下定理.定理1.2 lim pp ∞→∞=xx.下⾯,我们利⽤向量范数的连续性来说明向量范数的重要特征.定理1.3 设给定A ∈R n ×n ,x =(x 1,x 2,…,x n )T ∈R n ,则对R n 上每⼀种向量范数,‖A x ‖都是x 1,x 2,…,x n 的n 元连续函数.证设a j 为A 的列向量,将A 写成A =(a 1,a 2,…,a n ). 则由三⾓不等式,对h =(h 1,h 2,…,h n )T ∈R n,有|‖A (x +h )‖-‖A x ‖|?‖A h ‖=‖1ni i h =∑a i ‖1ni i h =∑‖a i ‖M max|h i |,其中M=1ni =∑‖a i ‖.所以,对任意的ε>0,当max|h i |<Mε时,有|‖A (x +h )‖-‖A x ‖|<ε, 这就证明了‖A x ‖的连续性.推论1.1 ‖x ‖是x 的各分量的连续函数. 向量范数的⼀个重要特征是具有等价性.定理 1.4 R n 上的所有向量范数是彼此等价的,即对R n 上的任意两种向量范数‖x ‖s和‖x ‖t ,存在常数c 1,c 2>0,使得对任意x ,有c 1‖x ‖s ?‖x ‖t ?c 2‖x ‖s .证只要就‖x ‖s =‖x ‖∞证明上式成⽴即可,即证明存在常数c 1,c 2>0,对⼀切x ∈R n且x ≠0,有c 1‖x ‖∞?‖x ‖t ?c 2‖x ‖∞.记R n 上的有界闭集D={x :x =(x 1,x 2,…,x n )T ,‖x ‖∞=1}.由定理1.3的推论知,‖x ‖t 是D 上的n 元连续函数,所以在D 上有最⼤值c 2和最⼩值c 1,且x ∈D 时有x ≠0,故有c 2?c 1>0.现考虑x ∈R n ,且x ≠0,则有∞x x ∈D,所以有c 1?‖∞x x ‖t ?c 2, ?x ∈R n ,x ≠0.从⽽对x ≠0有c 1‖x ‖∞?‖x ‖t ?c 2‖x ‖∞.⽽x =0时上式⾃然成⽴,定理得证.由于向量范数之间具有等价性,对于范数的极限性质,我们只需对⼀种范数进⾏讨论,其余范数也都具有相似的结论.⽐如,我们可以⽅便地讨论向量序列的收敛性.定义1.6 设向量序列x (k)=()()()()12,,,Tk k k nx x x ∈R n ,k=1,2,…,若存在x *=()12 ,,,Tn x x x ***∈R n ,使得()lim k iik x x *→∞=, i =1,2,…,n,则称序列{x (k)}收敛于x *,记为()lim k ik *→∞=x x.按定义有)()lim lim 0k k k k **→∞→∞∞=?-=xx xx.⼜因为()()()12k k k c c ***∞∞-≤-≤-xxxxxx,所以有()()lim lim 0k k k k **→∞→∞=?-=xx xx.因此,若向量序列在⼀种范数下收敛,则在其他范数下也收敛.不必强调是在哪种范数意义下收敛.1.4.2矩阵的范数定义1.7 如果矩阵A ∈R n ×n 的某个实值函数f(A )=‖A ‖满⾜ (1) 正定性:‖A ‖?0,且‖A ‖=0当且仅当A =0;(2) 齐次性:对任意实数α,都有‖αA ‖=|α|‖A ‖;(3) 三⾓不等式:对任意A ,B ∈R n ×n ,都有‖A +B ‖?‖A ‖+‖B ‖; (4) 相容性:对任意A ,B ∈R n ×n ,都有‖A B ‖?‖A ‖‖B ‖;则称‖A ‖为Rn ×n上的⼀个矩阵范数.可以验证,对()ij n na ?=A ,12211Fn n a ij i j ?? ?=∑∑ ?==??A是⼀种矩阵范数,称之为Froben i us 范数,简称F 范数.由于矩阵与向量常常同时参与讨论与计算,矩阵范数与向量范数之间需要有⼀种联系. 定义1.8 对于给定的R n 上的⼀种向量范数‖x ‖和R n ×n 上的⼀种矩阵范数‖A ‖,如果满⾜‖A x ‖?‖A ‖‖x ‖,则称矩阵范数‖A ‖与向量范数‖x ‖相容.上⾯的定义1.7是矩阵范数的⼀般定义,下⾯我们通过已给的向量范数来定义与之相容的矩阵范数.定义 1.9 设x ∈R n ,A ∈R n ×n ,对给出的⼀种向量范数v x ,相应地定义⼀个矩阵的⾮负函数m axvvx v≠=A x Ax.称之为由向量范数导出的矩阵范数,也称为算⼦范数或从属范数.由定义可得vvv≤A xAx,1max vvv==xAAx.算⼦范数满⾜矩阵范数⼀般定义中的条件(1)和(2)是显然的,现验证满⾜条件(3)和(4).对任意的A ,B ∈R n ×n ,有()1maxvvv =+=+xA B x11max max v vvvvvxx==≤+=+Ax BxAB1max vvv==xABABx1max vvvvvv=≤=xABxA.因此,算⼦范数满⾜矩阵范数⼀般定义中的条件(3)和(4).由常⽤的向量范数,可以导出与其相容的矩阵算⼦范数.定理1.5 设A ∈R n ×n ,记()ij n na ?=A ,则(1)11max nij i nj a ∞≤≤==∑A,称之为矩阵A 的⾏范数;(2) 111m ax nij j ni a ≤≤==∑A ,称之为矩阵A 的列范数;(3)2=A称之为矩阵A 的2范数或谱范数,其中,()max TλA A 表⽰T A A的最⼤特征值.证这⾥只对(1)和(3)给出证明,(2)的证明同理可得. 先证明(1):设x =(x 1,x 2,…,x n )T ≠0,不妨设A ≠0,则有1111max max nnij j ij i ni nj j xa x xa ∞∞≤≤≤≤===≤∑∑A .111max max nij xi nj a ∞∞∞=≤≤===∑AAx.设矩阵A 的第p ⾏元素的绝对值之和达到最⼤,即111max nnpj ij i nj j a a ≤≤===∑∑.取向量()12,,,Tn ξξξ= ξ,其中1,0,1,0.a pj j apjξ≥??=?-显然,‖ξ‖∞=1,⽽且1111m ax m axnn∞∞=≤≤===≥==∑∑xAA xA ξ.于是(1)得证.再证明(3):显然,A TA 是对称半正定矩阵,它的全部特征值均⾮负,设为120n λλλ≥≥≥≥ .由实对称矩阵的性质,各特征值对应的特征向量必正交.设对应的标准正交特征向量为12,,,nu u u ,即T i i i λ=A Au u (i =1,2,…,n),(u i ,u j )=δi j (i ,j=1,2,…,n).对向量x ∈R n ,‖x ‖2=1,可由R n 的⼀组基u i (i =1,2,…,n)线性表⽰,即有1niii c ==∑x u ,22211nii c===∑x11nnT Ti ii i i cc λλλ====≤=∑∑A xx A A x .另⼀⽅⾯,取ξ=u 1,显然有‖ξ‖2=1,211112T T Tλλ===A ξξA A ξu u .因此,2221m ax ===xAA x得证.由定理1.5可见,计算⼀个矩阵的⾏范数和列范数是⽐较容易的,⽽矩阵的2范数计算却不⽅便,但由于它有许多好的性质,所以在理论上还是有⽤的.例1.12 设矩阵1234-??=解 {}m ax 3,77∞==A,{}1m ax 4,66==A ,10141420T-??=-A A ()21014det 3041420Tλλλλλ--==-+-I A A ,求得115λ=+215λ=-因此25.46=≈A.定义1.10 设A ∈R n ×n 的特征值为λi (i =1,2,…,n),称()1max i i nρλ≤≤=A为A 的谱半径.谱半径在⼏何上可解释为以原点为圆⼼,能包含A 的全部特征值的圆的半径中最⼩者.例1.13 计算例1.12中矩阵的谱半径.解由A 的特征⽅程()2=--=-I A得12λ=,22λ=所以() 5.372ρ=≈A .定理1.6 设A ∈R n ×n ,则有()ρ≤A A .证设A x =λx ,x ≠0,且|λ|=ρ(A ),必存在向量y ,使x y T 不是零矩阵.于是()TTTTA ρλ==≤A xyxyxyA xy,即得ρ(A )?‖A ‖.例1.14 设矩阵A 与矩阵B 是对称的,求证ρ(A +B )?ρ(A )+ρ(B ).证因T =A A ,于是有()()()222max max 2A A AA ,即‖A ‖2=ρ(A ).同理‖B ‖2=ρ(B ).由于A +B =(A +B )T,因此()()()222ρρρ+=+≤+=+A B A BABA B .定理1.7 如果‖B ‖<1,则I ±B 为⾮奇异矩阵,且()111-±≤-I B B,这⾥的矩阵范数是指矩阵的算⼦范数.证若I ±B 奇异,则存在向量x ≠0,使(I ±B )x =0,故有ρ(B )?1,这与‖B ‖<1⽭盾,所以I ±B ⾮奇异.由于()()11--±=± I B I B I B ,于是得()()11--±≤+±I B I BI B .上的任意两种矩阵范数都是等价的,即对Rn ×n上的任意两种矩阵范数sA和t A ,存在常数c 1,c 2>0,使得12stsc c ≤≤AAA.由矩阵范数的等价性,我们可以⽤矩阵的范数描述矩阵序列的极限性质.定义1.11 设矩阵序列()()()kk n nijn na ??=∈A R,k=1,2,…,若存在()n nij n na **=∈A R,使得()lim k ijijk a a *→∞()lim k k *→∞=AA.可以验证()()lim lim 0k k k k **→∞→∞=?-=AA AA.评注本章介绍了数值计算的研究对象、误差及相关概念、数值计算的稳定性及构造算法的基本原则.考虑到矩阵计算的数值分析,本章还介绍了向量范数和矩阵范数的基本概念和常⽤定理.误差分析问题是数值分析中重要⽽困难的问题.误差的基本概念和误差分析的若⼲原则,对学习本课程是很有必要的.但是,作为⼯程或科学计算的实际问题则要复杂得多,往往要根据不同问题分门别类地进⾏分析.例如,由于舍⼊误差有随机性,有⼈应⽤概率的观点研究误差规律.在⼯程计算中,常⽤⼏种不同办法(包括实验⽅法)进⾏⽐较,以确定计算结果的可靠性.20世纪60年代以来,发展了两种估计误差的理论:⼀种是J.H.W i lk i nson 等⼈针对计算机浮点算法提出了⼀套预先估计的研究误差的⽅法,使矩阵运算的舍⼊误差研究获得了新发展;另⼀种是R .E.Moore 等⼈应⽤区间分析理论估计误差,开创了研究误差的新⽅法. 关于范数⽅⾯,所述内容是为以下各章服务的⼀些初步概念和常⽤的定理,对本书够⽤就可以了.例如只讨论了R n ×n 的范数,⽽没有顾及R n ×m .⼜例如介绍了R n 和R n ×n 上范数的等价性,此性质对有限维空间都是成⽴的,⽽对于C[a,b]则没有这个性质,这些都是赋范线性空间有关的问题,详细讨论这些问题是泛函分析的内容.习题 11.1 已知e=2.71828…,问下列近似值A x 有⼏位有效数字,相对误差界是多少? (1) x =e, A x =2.7; (2) x =e, A x =2.718; (3) x =e100, A x =0.027; (4) x =e100, A x =0.02718. 1.2 设原始数据的下列近似值每位都是有效数字:1x *=1.1021, 2x *=0.031, 3x *=56.430. 试计算(1) 1x *+2x *+3x *;(2),并估计它们的相对误差界.1.3 设x 的相对误差界为δ,求n x 的相对误差界.1.4 设x >0,x 的相对误差界为δ,求ln2的绝对误差界.1.5 为了使计算球体体积时的相对误差不超过1%,问测量半径R 时的允许相对误差界是多少?1.6 三⾓函数值取4位有效数字,怎样计算1-cos2°才能保证精度? 1.7 设0Y =28,按递推公式nY=1n Y --…,计算.若取27.982(5位有效数字),试问计算Y 100将有多⼤误差?1.8 求解⽅程25610x x ++=,使其根⾄少具有4位有效数字(≈27.982).1.9 正⽅形的边长⼤约为100 cm ,应怎样测量才能使其⾯积的误差不超过21cm ? 1.10 序列{yn}满⾜递推关系1101n n y y -=-,n=1,2,….若y 0 1.41(3位有效数字),计算到y 10时的误差有多⼤?这个计算过程稳定吗?1.11 对积分11n x n I x edx -=,n=0,1,…,验证101I e-=-,11n n I nI -=-.若取e -1≈0.3679,按递推公式11n n I nI -=-,⽤4位有效数字计算I 0,I 1,…,I 9,并证明这种算法是不稳定的.1.12 反双曲正弦函数为()(ln f x x =+.如何计算f(x )才能避免有效数字的损(1) sin x -siny ; (2) arctan x -arctany ;(3)2; (4)212xe-.1.14 已知三⾓形⾯积1sin 2s ab C=,其中C 为弧度,0π,且测量a,b,C 的误差分别为Δa,Δb,ΔC ,证明⾯积的误差Δs 满⾜s a b C s ab C≤++ .1.15 设P ∈R n ×n 且⾮奇异,⼜设‖x ‖为R n 上的⼀种向量范数,定义p=xP x.试证明‖x‖P 是R n 上的⼀种向量范数.1.16 设A ∈R n ×n 为对称正定矩阵,定义()12,A=xA x x .试证明‖x‖A 为R n 上的⼀种向量范数.1.17 设矩阵0.60.50.10.3??=2F≤≤AA,并说明‖A ‖F 与‖x‖2相容.1.19 设P ∈Rn ×n且⾮奇异,⼜设‖x‖为R n上的⼀种向量范数,定义范数‖x‖P =‖P x ‖.证明对应于‖x‖P 的算⼦范数1 p-=APAP.1.20 设A 为⾮奇异矩阵,求证:11m iny ∞-≠∞∞=A y yA.。
计算方法实验指导书
第一章 绪论一、主要要求通过实验,认真理解和体会数值计算的稳定性、精确性与步长的关系。
二、主要结果回顾:1、算法:电子计算机实质上只会做加、减、乘、除等算术运算和一些逻辑运算,由这些基本运算及运算顺序规定构成的解题步骤,称为算法.它可以用框图、算法语言、数学语言或自然语言来描述。
用计算机算法语言描述的算法称为计算机程序。
(如c —语言程序,c++语言程序,Matlab 语言程序等)。
2、最有效的算法:应该运算量少,应用范围广,需用存储单元少,逻辑结构简单,便于编写计算机程序,而且计算结果可靠。
3、算法的稳定性:一个算法如果输入数据有误差,而在计算过程中舍入误差不增长,则称此算法是数值稳定的,否则称此算法为不稳定的。
换句话说:若误差传播是可控制的,则称此算法是数值稳定的,否则称此算法为不稳定的。
4、控制误差传播的几个原则: 1)防止相近的两数相减; 2)防止大数吃小数;3)防止接近零的数做除数;4)要控制舍入误差的累积和传播;5)简化计算步骤,减小运算次数,避免误差积累。
三、数值计算实验(以下实验都需利用Matlab 软件来完成) 实验1.1(体会数值计算精度与步长关系的实验)实验目的:数值计算中误差是不可避免的,要求通过本实验初步认识数值分析中两个重要概念:截断误差和舍入误差,并认真体会误差对计算结果的影响。
问题提出:设一元函数f :R →R ,则f 在x 0的导数定义为:hx f h x f x f h )()(lim)('0000-+=→实验内容:根据不同的步长可设计两种算法,计算f 在x 0处的导数。
计算一阶导数的算法有两种:hx f h x f x f )()()('000-+≈(1)hh x f h x f x f 2)()()('000--+≈(2)请给出几个计算高阶导数的近似算法,并完成如下工作: 1、对同样的h ,比较(1)式和(2)式的计算结果;2、针对计算高阶导数的算法,比较h 取不同值时(1)式和(2)式的计算结果。
数值计算方法
k4 hf (tn h, yn k3 ))
这里, f (x, y) y 2x ;h为步长。 y
现取h=0.05,其结果见下表:
xn
yn
y
xn
0
1.00000 1.00000 1.2
0.2
1.18322 1.18322 1.4
0.4
1.34164 1.34164 1.6
0.6
1.48324 1.48324 1.8
|,当C
1,
Cr 1时有
e( f ) e(x*)
er ( f ) er (x* )
这表明当C 1, Cr 1时,函数值的误差 是可以控制的,或是稳定的。
一般分别称C, Cr为f (x)在绝对意义下 和相对意义下的条件数。
当C 1称f (x)为良态; 当C 1称f (x)为病态。
例题
| e(x* ) || x* x | 1 10mn 2
则称x*为x的具有n位有效数的近似数。
绝对误差,相对误差,有效数是度量近似数 精度的常用三种。实际计算时最终结果均以 有效数给出。同时也就隐含了绝对误差和相 对误差界。
如 x 2, x* 1.4142, m 1, n 5
则x*的绝对误差界 1 104
n i 1
f xi*
n
( xi* xi )
i 1
f xi*
e( xi* )
因此绝对误差界为
e( f )
n i 1
f xi*
e( xi* )
同理相对误差为
er ( f )
n f(x*) i1 xi*
f
xi* (x*
)
er
( xi*
)
相对误差界
| er ( f ) |
ID数值计算方法与算法
第1章 插值
函数逼近 用未知函数f(x)的值构造近似函数φ(x)。 要求误差小、形式简单、容易计算。
常用的函数逼近方法 • 插值:φ(xi)=yi, i=0,1,…,n. • 拟合:||φ(x)-f(x)||尽可能小 通常取 φ(x) = a0φ0(x) + … + anφn(x),其中 {φi(x)}为一组基函数。
多项式插值
给定平面上n+1个插值点(xi,yi), 构造n次多 项式φ(x), 满足φ(xi)=yi, i=0,1,…,n.
单项式 插值
(x) a0 a1x an xn,或
(x)
a0
a1
0 x0n a0 y0
1
1
x1
xn
x1n
xn n
a1
误差估计:
R(x)
f (x) (x)
f (n (n
1) ( )
1)!
(
x
x0
)
(
x
xn
)
证明:设 R(x) K (x)( x x0 )(x xn ),则
g(t) f (t) K (x)(t x0 )(t xn )
有n+2个零点。根据中值定理,存在
g (n1) ( ) 0,a b
an
y1
yn
(x) (((an x an1)x )x a1)x a0
Lagrange (x) b0L0 (x) b1L1(x) bnLn (x),
插值
Li (x) (x x0 )(x x1)(x xn ) (x xi )
L0 (x0 )
b0 y0
L1 ( x1 )
数值计算方法与算法
第0章 绪论
数值分析计算方法试题集及答案
数值分析复习试题第一章 绪论 一. 填空题 1.*x为精确值x 的近似值;()**x f y =为一元函数()x f y =1的近似值;()**,*y x f y =为二元函数()y x f y ,2=的近似值,请写出下面的公式:**e x x =-:***r x xe x -=()()()*'1**y f x x εε≈⋅ ()()()()'***1**r r x f x y x f x εε≈⋅()()()()()**,**,*2**f x y f x y y x y x yεεε∂∂≈⋅+⋅∂∂()()()()()****,***,**222r f x y e x f x y e y y x y y y ε∂∂≈⋅+⋅∂∂ 2、 计算方法实际计算时,对数据只能取有限位表示,这时所产生的误差叫 舍入误差 。
3、 分别用2.718281,2.718282作数e 的近似值,则其有效数字分别有6 位和7 位;又取 1.73≈-211.73 10 2≤⨯。
4、 设121.216, 3.654x x ==均具有3位有效数字,则12x x 的相对误差限为0.0055 。
5、 设121.216, 3.654x x ==均具有3位有效数字,则12x x +的误差限为0.01 。
6、 已知近似值 2.4560A x =是由真值T x 经四舍五入得到,则相对误差限为0.0000204 .7、递推公式,⎧⎪⎨⎪⎩0n n-1y =y =10y -1,n =1,2,如果取0 1.41y ≈作计算,则计算到10y 时,误差为8110 2⨯;这个计算公式数值稳定不稳定 不稳定 . 8、精确值 14159265.3*=π,则近似值141.3*1=π和1415.3*2=π分别有 3位和 4 位有效数字。
9、若*2.71828x e x =≈=,则x 有 6 位有效数字,其绝对误差限为1/2*10-5。
10、 设x*的相对误差为2%,求(x*)n的相对误差0.02n11、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字;12、计算方法主要研究( 截断 )误差和( 舍入 )误差; 13、为了使计算 ()()2334610111y x x x =++---- 的乘除法次数尽量地少,应将该表达式改写为11,))64(3(10-=-++=x t t t t y ,为了减少舍入误差,应将表达式19992001-改写为199920012+。
数值计算方法与算法
多项式插值
给定平面上n+1个插值点(xi,yi), 构造n次多 项式φ(x), 满足φ(xi)=yi, i=0,1,…,n.
单项式 插值
(x) a0 a1x an xn,或
(x)
a0
a1
x h
an
(
x h
)n
1 x0 x0n a0 y0
k阶差商
f
[ x0
,,
xk
]
f [
x1,,
xk 1,
xk ] xk
f [x0 x0
,
x1
,
xk
1 ]
差商表
0 1 2 … n
0
1
x0
x1
y0
y1
y1 y0 x1 x0
ij f [x ji ,, x j ]
2
x2
y2
y2 y1 x2 x1 1, 2 1,1 x2 x0
(n 1)!
Hermite插值
给定平面上n+1个插值点(xi,yi,mi), 构造 2n+1次多项式φ(x), 满足φ(xi)=yi, φ’(xi)=mi, i=0,1,…,n.
单项式 基函数
Lagrange 基函数
(x) a0 a1x an1x2n1
1
(
x
x0
)
(
x
ห้องสมุดไป่ตู้
xn
)
证明:设 R(x) K (x)( x x0 )(x xn ) ,则
g(t) f (t) K (x)(t x0 )(t xn )
有n+2个零点。 根据中值定理,存在
数值分析(计算方法)总结
第一章绪论误差来源:模型误差、观测误差、截断误差(方法误差)、舍入误差是的绝对误差,是的误差,为的绝对误差限(或误差限)为的相对误差,当较小时,令相对误差绝对值得上限称为相对误差限记为:即:绝对误差有量纲,而相对误差无量纲若近似值的绝对误差限为某一位上的半个单位,且该位直到的第一位非零数字共有n位,则称近似值有n位有效数字,或说精确到该位。
例:设x==3。
1415926…那么,则有效数字为1位,即个位上的3,或说精确到个位.科学计数法:记有n位有效数字,精确到。
由有效数字求相对误差限:设近似值有n位有效数字,则其相对误差限为由相对误差限求有效数字:设近似值的相对误差限为为则它有n位有效数字令1.x+y近似值为和的误差(限)等于误差(限)的和2.x-y近似值为3.xy近似值为4.1.避免两相近数相减2.避免用绝对值很小的数作除数3.避免大数吃小数4.尽量减少计算工作量第二章非线性方程求根1。
逐步搜索法设f (a) <0, f (b)〉 0,有根区间为 (a, b),从x0=a出发,按某个预定步长(例如h=(b-a)/N)一步一步向右跨,每跨一步进行一次根的搜索,即判别f(x k)=f(a+kh)的符号,若f(x k)〉0(而f(x k-1)<0),则有根区间缩小为[x k-1,x k] (若f(x k)=0,x k即为所求根),然后从x k—1出发,把搜索步长再缩小,重复上面步骤,直到满足精度:|x k—x k-1|< 为止,此时取x*≈(x k+x k-1)/2作为近似根.2。
二分法设f(x)的有根区间为[a,b]= [a0,b0], f(a)<0,f(b)〉0。
将[a0,b0]对分,中点x0= ((a0+b0)/2),计算f(x0)。
3.比例法一般地,设 [a k,b k]为有根区间,过(a k,f(a k))、 (b k, f(b k))作直线,与x轴交于一点x k,则:1.试位法每次迭代比二分法多算一次乘法,而且不保证收敛.2。
第一章 数值计算方法 绪论
er
e x
因为
e x
e x
er
e x
x x
x
e(x x)
(e )2
xx x ( x e )
( 1
e x
)2
e x
相对误差也可正可负
相对误差限——相对误差的绝对值的上界
r
/* relative accuracy */
e x
x x x
r
Def 1.3 (有效数字/*Significant Digits*/ )
0
e
记为
I
* 0
则初始误差
E0
I0
I
0
0.5 108
此公式精确成立
1
e
1 0
xn
e0
dx
In
1 e
1 x n e1 dx
0
1 e(n 1 )
In
1 n1
I 1
1
1
I 0
0.36787944
... ... ... ...
I 10
1
10
I 9
0.08812800
I 11
1 11
I 10
0.03059200
求函数y y(x)在某些点
xi
n i 1
的近似函数值
数学问题 数值问题
数值问题的来源:
实际 问题
建立数学模型
数值 求解 问题
设计高效、可 靠的数值方法
数值 问题
重点讨论
近似结果
输出
上机 计算
程序 设计
可 收敛性:方法的可行性
则数
靠 性
稳定性:初始数据等产生的误差对结果的影响
值分
数值计算方法课后习题答案(李庆扬等) (修复的)
,。
第一章 绪论(12)1、设0>x ,x 的相对误差为δ,求x ln 的误差。
[解]设0*>x 为x 的近似值,则有相对误差为δε=)(*x r ,绝对误差为**)(x x δε=,从而x ln 的误差为δδεε=='=*****1)()(ln )(ln x xx x x , 相对误差为****ln ln )(ln )(ln x x x x rδεε==。
2、设x 的相对误差为2%,求n x 的相对误差。
[解]设*x 为x 的近似值,则有相对误差为%2)(*=x r ε,绝对误差为**%2)(x x =ε,从而nx 的误差为nn x x nxn x x n x x x **1***%2%2)()()()(ln *⋅=='=-=εε,相对误差为%2)()(ln )(ln ***n x x x nr==εε。
3、下列各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出它们是几位有效数字:1021.1*1=x ,031.0*2=x ,6.385*3=x ,430.56*4=x ,0.17*5⨯=x 。
[解]1021.1*1=x 有5位有效数字;0031.0*2=x 有2位有效数字;6.385*3=x 有4位有效数字;430.56*4=x 有5位有效数字;0.17*5⨯=x 有2位有效数字。
4、利用公式(3.3)求下列各近似值的误差限,其中*4*3*2*1,,,x x x x 均为第3题所给的数。
(1)*4*2*1x x x ++;[解]3334*4*2*11***4*2*1*1005.1102110211021)()()()()(----=⨯=⨯+⨯+⨯=++=⎪⎪⎭⎫ ⎝⎛∂∂=++∑x x x x x f x x x e nk k k εεεε;(2)*3*2*1x x x ;[解]52130996425.010********.2131001708255.01048488.2121059768.01021)031.01021.1(1021)6.3851021.1(1021)6.385031.0()()()()()()()()(3333334*3*2*1*2*3*1*1*3*21***3*2*1*=⨯=⨯+⨯+⨯=⨯⨯+⨯⨯+⨯⨯=++=⎪⎪⎭⎫⎝⎛∂∂=-------=∑x x x x x x x x x x x f x x x e n k k kεεεε;(3)*4*2/x x 。
计算方法第一章 绪论
知称道,实为Er际近(x)计似算值时x的通相常对取误差,由于精确值 一般x不*
x* x
Er (x)
作为近似值x的相对误差。
x
若能求出一个正数 ,使r 得
E,r (x则) 称r 为近似r
值x的相对误差限。它是无量纲的数,通常用百分
比表示。
2021/6/26
整理课件
15
例:甲用米尺测量10M长的物体,所产生的绝对 误差为2cm,乙用同一米尺测量1M长的物体,所产 生的绝对误差为1cm,他们谁的测量精度好?
用计算机解决科学计算问题的一般过程,可以概括为:
实际问题→数学模型→计算方法→ 程序设计→上机计算→结果分析
整理课件
由实际问题应用有关科学知识和数学理论建立
数学模型这一过程,通常作为应用数学的任务。 而根据数学模型提出求解的计算方法直到编出程 序上机算出结果,进而对计算结果进行分析,这 一过程则是计算数学的任务,也是数值计算方法 的研究对象。
第二,有可靠的理论分析,能任意逼近并达到精度要 求,对近似算法要保证方法的收敛性和数值稳定性,还要对 误差进行分析,这些都建立在相应数学理论基础上。
第三,要有好的计算复杂性(即时间复杂性和空间复杂 性);时间复杂性好是指节省时间,空间复杂性好是指节省 存储量,这也是建立算法要研究的问题,它关系到算法能否 在计算机上实现。
x x * 0.04 0.05 1 101 2
x 又 (0.3289) 1,故02该不等式又可写为
x x * 1 10 23 2
x 故 有3位有效数字,分别是 3,2,8。 x x 由于 中的数字9不是有效数字,故 不是有效数。
思考: 3.1415有几位有效数字?
2021/6/26
第一章数值计算方法绪论
er ( y )
e ( y ) f(x)f(x) x xx f ( x ) xx f(x) x
x f(x) f(x)
er (x)
相对误差条件数
注:关于多元函数 yf(x1,x2,...xn ,)可类似讨论, 理论工具:Taylor公式
2、向后误差分析法:把舍入误差的累积与导出 A 的已
数值计算方法
第0章 课程介绍
什么是数值计算方法? 数值计算方法特点 数值计算方法重要性 本课程主要内容 本课程要求
什么是数值计算方法?
实际 问题
建立数学模型
近似结果 输
上机
出
计算
设计高效、 可靠的数值 方法
程序 设计
什么是数值计算方法? 数值计算方法是一种研究并解决数学问题的数值
若 x 的每一位都是有效数字,则x 称是有效数。
特别地,经“四舍五入”得到的数均为有效数
5.定理:
将 x 近似值 x 表示为 x 0.a 1a2 ak an 10m,
若 x * 有k位有效数字,则
; | er
|
1 2a1
10(k1)
x 反之,若
er
1 , 10(k1) 则
注:(1)
近似数
x
1
,
x
2
四则运算得到的误差分别为
| e(x1 x2)| |e(x1)e(x2)|,
er ( x1 x2 )
e(x1) x1 x2
e(x2) x1 x2
,
(避免两近似数相减)
e
(
x x
1 2
)
x1e(x2) x2e(x1) x22
计算方法第一章绪论(32学时)-2014.2
教材聂玉峰、王振海等《数值方法简明教程》,高等教育出版社,2011作业计算方法作业集(A、B)参考书¾封建湖,车刚明计算方法典型题分析解集(第三版)西北工业大学出版社,2001¾封建湖,聂玉峰,王振海数值分析导教导学导考(第二版)西北工业大学出版社,2006¾车刚明,聂玉峰,封建湖,欧阳洁数值分析典型题解析及自测试题(第二版)西北工业大学出版社,2003西北工业大学理学院欧阳洁2第一章绪论§1 引言§2 误差的度量与传播§3 选用算法时应遵循的原则西北工业大学理学院欧阳洁3§1 引言科学与工程领域中运用计算机求解问题的一般过程:1 实际问题的提出2 建立数学模型3 设计可靠、高效的数值方法4 程序设计5 上机实践计算结果6 数据处理及结果分析西北工业大学理学院欧阳洁4学习算法的意义科学计算(数值模拟)已经被公认为与理论分析、实验分析并列的科学研究三大基本手段之一。
计算方法课程的研究对象具有广泛的适用性,著名流行软件如Maple、Matlab、Mathematica 等已将其绝大多数内容设计成函数,简单调用之后便可以得到运行结果。
但由于实际问题的具体特征、复杂性, 以及算法自身的适用范围决定了应用中必须选择、设计适合于自己特定问题的算法,因而掌握数值方法的思想和内容至关重要。
西北工业大学理学院欧阳洁5鉴于实际问题的复杂性,通常将其具体地分解为一系列子问题进行研究,本课程主要涉及如下几个方面问题的求解算法:¾非线性方程求根¾线性代数方程组求解¾函数插值¾曲线拟合¾数值积分与数值微分¾常微分方程初值问题的数值解法¾矩阵特征值与特征向量计算西北工业大学理学院欧阳洁6§2 误差的度量与传播一误差的来源与分类模型误差:数学模型与实际问题的误差观测误差:观测结果与实际问题的误差截断误差:数学模型的理论解与数值计算问题的精确解之间的误差舍入误差:对超过某有限位数的数据进行舍入所产生的误差西北工业大学理学院欧阳洁75 使用数值稳定性好的公式一个算法,如果初始数据微小的误差仅使最终结果产生微小的误差,或在运算过程中舍入误差在一定条件下能够得到控制,则称该算法(数值)稳定,否则称其为(数值)不稳定.西北工业大学理学院欧阳洁26总结1.数值运算的误差估计2.绝对误差、相对误差与有效数字3.数值运算中应遵循的若干原则西北工业大学理学院欧阳洁30。
(完整版)数值计算方法教案
《计算方法》教案课程名称:计算方法适用专业:医学信息技术适用年级:二年级任课教师:***编写时间:2011年 8月新疆医科大学工程学院张利萍教案目录《计算方法》教学大纲 (4)一、课程的性质与任务 (4)二、课程的教学内容、基本要求及学时分配 (4)三、课程改革与特色 (5)四、推荐教材及参考书 (5)《计算方法》教学日历..................................... 错误!未定义书签。
第一章绪论 .. (6)第1讲绪论有效数字 (6)第2讲误差………………………………………………………………………………第二章线性方程组的直接法 (14)第3讲直接法、高斯消去法 (14)第4讲高斯列主元消去法 (22)第5讲平方根法、追赶法 (29)第三章插值法与最小二乘法 (31)第6讲机械求积、插值型求积公式 (32)第7讲牛顿柯特斯公式、复化求积公式 (37)第8讲高斯公式、数值微分 (42)第9讲第10讲第12讲第四章数值积分与数值微分 (48)第11讲欧拉公式、改进的欧拉公式 (48)第12讲龙格库塔方法、亚当姆斯方法 (52)第13讲收敛性与稳定性、方程组与高阶方程 (56)第14讲第15讲第五章微分常微分方程的差分方法 (59)第16讲迭代收敛性与迭代加速 (60)第17讲牛顿法、弦截法 (64)第18讲第19讲第20讲第六章线性方程组的迭代法 (67)第21讲迭代公式的建立 (68)第22讲第23讲第24讲向量范数、迭代收敛性 (71)第25讲《计算方法》教学大纲课程名称:计算方法/Computer Numerical Analysis B学时/学分:54/4先修课程:高等数学、线性代数、高级语言程序设计(如:Matlab语言)适用专业:计算机科学与技术、信息管理与信息系统开课学院(部)、系(教研室):医学工程技术学院、医学信息技术专业一、课程的性质与任务计算方法是一门专业必修课。
计算方法教学大纲
第六章 线性方程组直接法(6学时) 6.1 Gauss列主元消元法 6.2 直接分解法 6.3 向量和矩阵范数 6.4 矩阵的条件数 第七章 解线性方程组的迭代法(4学时) 7.1 Jacobi迭代 7.2 Gauss-Seidel迭代 7.3 松弛迭代 7.4 共轭斜量法
教 学 大 纲 ( 甲 型 )
其实,世上最温暖的语言,“ 不是我爱你,而是在一起。” 所以懂得才是最美的相遇!只有彼此以诚相待,彼此尊重, 相互包容,相互懂得,才能走的更远。 相遇是缘,相守是爱。缘是多么的妙不可言,而懂得又是多么的难能可贵。否则就会错过一时,错过一世! 择一人深爱,陪一人到老。一路相扶相持,一路心手相牵,一路笑对风雨。在平凡的世界,不求爱的轰轰烈烈;不求誓 言多么美丽;唯愿简单的相处,真心地付出,平淡地相守,才不负最美的人生;不负善良的自己。 人海茫茫,不求人人都能刻骨铭心,但求对人对己问心无愧,无怨无悔足矣。大千世界,与万千人中遇见,只是相识的 开始,只有彼此真心付出,以心交心,以情换情,相知相惜,才能相伴美好的一生,一路同行。 然而,生活不仅是诗和远方,更要面对现实。如果曾经的拥有,不能天长地久,那么就要学会华丽地转身,学会忘记。 忘记该忘记的人,忘记该忘记的事儿,忘记苦乐年华的悲喜交集。 人有悲欢离合,月有阴晴圆缺。对于离开的人,不必折磨自己脆弱的生命,虚度了美好的朝夕;不必让心灵痛苦不堪, 弄丢了快乐的自己。擦汗眼泪,告诉自己,日子还得继续,谁都不是谁的唯一,相信最美的风景一直在路上。 人生,就是一场修行。你路过我,我忘记你;你有情,他无意。谁都希望在正确的时间遇见对的人,然而事与愿违时, 你越渴望的东西,也许越是无情无义地弃你而去。所以美好的愿望,就会像肥皂泡一样破灭,只能在错误的时间遇到错的人。 岁月匆匆像一阵风,有多少故事留下感动。愿曾经的相遇,无论是锦上添花,还是追悔莫及;无论是青涩年华的懵懂赏 识,还是成长岁月无法躲避的经历……愿曾经的过往,依然如花芬芳四溢,永远无悔岁月赐予的美好相遇。 其实,人生之路的每一段相遇,都是一笔财富,尤其亲情、友情和爱情。在漫长的旅途上,他们都会丰富你的生命,使 你的生命更充实,更真实;丰盈你的内心,使你的内心更慈悲,更善良。所以生活的美好,缘于一颗善良的心,愿我们都能 善待自己和他人。 一路走来,愿相亲相爱的人,相濡以沫,同甘共苦,百年好合。愿有情有意的人,不离不弃,相惜相守,共度人生的每 一个朝夕……直到老得哪也去不了,依然是彼此手心里的宝,感恩一路有你!
计算理论导引 0_绪论
主要内容
0.0 课程性质 0.1 自动机、可计算性与复杂性 0.2 数学概念和术语 0.3 定义、定理和证明 0.4 证明的类型 0.5 作业
8
0.1 自动机、可计算性与复杂性
什么是计算? 计算机的基本能力和局限性是什么? 计算复杂性理论
把问题分成容易计算和难以计算的
可计算理论
布尔逻辑
合取、析取、非、异或
12
主要内容
0.0 课程性质 0.1 自动机、可计算性与复杂性 0.2 数学概念和术语 0.3 定义、定理和证明 0.4 证明的类型 0.5 作业
13
0.3 定义、定理和证明
定义:描述了我们使用的对象和概念。 证明:是一种逻辑论证。 定理:是被证明为真的数学命题。 引理:有助于证明另一个更有意义的命题的命题。
5
课程说明
教材处理
讲要点,前后次序有少数调整 略讲或自学的部分,要求了解主要思想 快讲的部分,需要一般了解的章节,要求了解主要方法和演绎框架 要求深入掌握的部分——能作题目或作难题,通过考试
6
课时安排
第0章 绪论——2学时 第1章 正则语言——5学时 第2章 上下文无关文法——3学时 第3章 丘奇-图灵论题——2学时 第4章 可判定性——2学时 第5章 可归约性——2学时 第6章 可计算理论高级专题——2学时 第7章 时间复杂性——4学时 第8章 空间复杂性——3学时 第9章 难解性——3学时 第10章 复杂性理论高级专题——4学时
京: 清华大学出版社. (美) John E.Hopcroft等著. 孙家骕等译.自动机理论、语言和计算导
论(原书第3版). 北京: 机械工业出版社.
4
课程说明
作业
计算方法习题及答案
第一章 绪论一.填空题1.*x 为精确值x 的近似值;()**x f y=为一元函数()x f y =1的近似值;()**,*y x f y =为二元函数()y x f y ,2=的近似值,请写出下面的公式:**e x x =-:***rx x e x -=()()()*'1**y f x x εε≈⋅ ()()()()'***1**r r x f x y x f x εε≈⋅ ()()()()()**,**,*2**f x y f x y y x y x yεεε∂∂≈⋅+⋅∂∂()()()()()****,***,**222r f x y e x f x y e y y x y y y ε∂∂≈⋅+⋅∂∂2、 计算方法实际计算时,对数据只能取有限位表示,这时所产生的误差叫 舍入误差 。
3、 分别用2.718281,2.718282作数e的近似值,则其有效数字分别有 6 位和 7 位;又取1.73≈(三位有效数字),则-211.73 10 2≤⨯。
4、设121.216, 3.654x x ==均具有3位有效数字,则12x x 的相对误差限为 0.0055 。
5、设121.216, 3.654x x ==均具有3位有效数字,则12x x +的误差限为 0.01 。
6、已知近似值 2.4560A x =是由真值T x 经四舍五入得到,则相对误差限为 0.000021 .7、递推公式,⎧⎪⎨⎪⎩0n n-1y =y =10y -1,n =1,2,如果取0 1.41y ≈作计算,则计算到10y 时,误差为8110 2⨯;这个计算公式数值稳定不稳定 不稳定 .8、精确值 14159265.3*=π,则近似值141.3*1=π和1415.3*2=π分别有 3 位和 4 位有效数字。
9、 若*2.71828x e x =≈=,则x 有 6 位有效数字,其绝对误差限为1/2*10-5。
10、 设x*的相对误差为2%,求(x*)n 的相对误差0.02n 二、计算题1. 有一个长方形水池,由测量知长为(50±0.01)米,宽为(25±0.01)米,深为(20±0.01)米,试按所给数据求出该水池的容积,并分析所得近似值的绝对误差和相对误差公式,并求出绝对误差限和相对误差限. 解:设长方形水池的长为L ,宽为W,深为H ,则该水池的面积为V=LWH当L=50,W=25,H=20时,有 V=50*25*20=25000(米3) 此时,该近似值的绝对误差可估计为()()()()()()()=V V VV L W H L W HWH L HL W LW H ∂∂∂∆≈∆+∆+∆∂∂∂∆+∆+∆ 相对误差可估计为:()()r V V V∆∆=而已知该水池的长、宽和高的数据的绝对误差满足()()()0.01,0.01,0.01L W H ∆≤∆≤∆≤故求得该水池容积的绝对误差限和相对误差限分别为()()()()()()325*20*0.0150*20*0.0150*25*0.0127.5027.501.1*1025000r V WH L HL W LW H V V V -∆≤∆+∆+∆≤++=∆∆=≤=2.已知测量某长方形场地的长a=110米,宽b=80米.若()()**0.1 0.1a a b b -≤-≤米,米试求其面积的绝对误差限和相对误差限. 解:设长方形的面积为s=ab当a=110,b=80时,有 s==110*80=8800(米2) 此时,该近似值的绝对误差可估计为()()()()()=b s ss a b a ba ab ∂∂∆≈∆+∆∂∂∆+∆ 相对误差可估计为:()()r s s s∆∆=而已知长方形长、宽的数据的绝对误差满足()()0.1,0.1a b ∆≤∆≤故求得该长方形的绝对误差限和相对误差限分别为()()()()() 80*0.1110*0.119.019.00.0021598800r s b a a b s s s ∆≤∆+∆≤+=∆∆=≤= 绝对误差限为19.0;相对误差限为0.002159。
数值计算方法习题答案(第二版)(绪论)
数值分析(p11页)4 试证:对任给初值x 0,0)a >的牛顿迭代公式112(),0,1,2,......k ak k x x x k +=+= 恒成立下列关系式:2112(1)(,0,1,2,....(2)1,2,......kk k x k x x k x k +-=-=≥=证明:(1)(21122k k k k k kx a x x x x +-⎫⎛-=+==⎪ ⎝⎭(2) 取初值00>x ,显然有0>k x ,对任意0≥k ,a a x a x x a x x k k k k k ≥+⎪⎪⎭⎫ ⎝⎛-=⎪⎪⎭⎫ ⎝⎛+=+2121216 证明:若k x 有n 位有效数字,则n k x -⨯≤-110218, 而()k k k k k x x x x x 288821821-=-⎪⎪⎭⎫⎝⎛+=-+ nnk k x x 2122110215.22104185.28--+⨯=⨯⨯<-∴>≥ 1k x +∴必有2n 位有效数字。
8 解:此题的相对误差限通常有两种解法. ①根据本章中所给出的定理:(设x 的近似数*x 可表示为m n a a a x 10......021*⨯±=,如果*x 具有l 位有效数字,则其相对误差限为()11**1021--⨯≤-l a x x x ,其中1a 为*x 中第一个非零数)则7.21=x ,有两位有效数字,相对误差限为025.010221111=⨯⨯≤--x x e 71.22=x ,有两位有效数字,相对误差限为025.010221122=⨯⨯≤--x x e 3 2.718x =,有两位有效数字,其相对误差限为:00025.010221333=⨯⨯≤--x e x ②第二种方法直接根据相对误差限的定义式求解 对于7.21=x ,0183.01<-e x∴其相对误差限为00678.07.20183.011≈<-x e x 同理对于71.22=x ,有003063.071.20083.022≈<-x e x 对于718.23=x ,有00012.0718.20003.033≈<-x e x备注:(1)两种方法均可得出相对误差限,但第一种是对于所有具有n 位有效数字的近似数都成立的正确结论,故他对误差限的估计偏大,但计算略简单些;而第二种方法给出较好的误差限估计,但计算稍复杂。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
| e* || x* x | *
数值 *称为x*的 绝对误差限或误差限.
显然
* 0
且
x* * x x* *
准确值 x 的范围
或
x x* *
2020/10/29
17
若对于 x 15 2
x* 15
* 2
y 1000 5 y* 1000
* 5
哪个更精确呢?
x* 15吗?
经过大量的运算之后,积累的总误差有时会大得惊人, 因此如何控制误差的传播也是数值方法的研究对象.
二、误差和误差限
定义1.
设x为准确值 , x*为x的一个近似值 , 称
e* x* x 为近似值 x*的绝对误差 ,简称误差.
2020/10/29
16
因为准确值 x 往往是未知甚至是无法 知道的
因此 e* x* x 往往也无法求出 而只能知道 e* x* x 绝对值的某个上界 ,即
2020/10/29
7
二、数值方法 数值方法:
是指解数值问题的在计算机上 可执行的系列计算公式
在计算机上可执行的公式
是指只含有加减乘除的公式
现在的计算机中几乎都含有关于开方的标准函数sqrt()
常见的在计算机上不能直接运行的计算有: 开方、极限、超越函数、微分、积分等等
要在计算机上实行上述运算需将其化为可执行的等价 或近似等价运算
数值计算方法:研究适合计算机进行科学计算的方法。 使用计算机、离散。
解决科学技术和工程问题的步骤: 实际问题建立数学模型研究计算方法
编程上机计算求的结果。
2020/10/29
4
• 数值分析的特点: 1、面向计算机。 2、有可靠的理论分析(收敛性、稳定性、误差分析)。 3、要有好的计算复杂性(时间、空间) 4、要有数值试验。
2020/10/29
8
如求根公式
b x1,2
b2 4ac 2a
应化为公式
x1,2
b
sqrt(b2 2a
4ac)
超越函数 ex 应化为
ex 1 x x2 xn
2!
n!
函数y( x)的导数 y( x)的计算应化为
y(x) y(x h) y(x) h
2020/10/29
9
研究数值方法的主要任务:
1.目的明确
算法必须有明确的目的,其条件和结论 均应有清楚的规定
2.定义精确
Байду номын сангаас
对算法的每一步都必须有精确的定义
3.可执行
算法中的每一步操作都是可执行的
4.步骤有限
算法必须在有限步内能够完成解题过程
2020/10/29
11
• 对算法所要考虑的问题:
1.计算速度。 例如,求解一个20阶线性方程组,用消元法需3000次乘法运算;
3.14159265
2 1.414213562
1 1 0.166666666 3! 6
3.1415927
2 1.4142136 1 0.16666667 3!
过失误差
由于模型错误或方法错误引起的误差. 这类误差一般可以避免
2020/10/29
15
数值计算中除了过失误差可以避免外,其余误差都是 难以避免的.数学模型一旦建立,进入具体计算时所考 虑和分析的就是截断误差和舍入误差
2020/10/29
6
求解微分方程
y 2x 3
y(0) 0
不是数值问题
输入的虽是数据 ,但输出的不是数据而是 函数y x2 3x
将其变成数值问题,即将其“离散化”
即将求函数 y x2 3x
改变成求函数值 y(x1 ), y(x2 ),, y(xn ), x1 x2 xn
“离散化”是将非数值问题的数学模型化为数值问题 的主要方法,这也是计算方法的任务之一
而用克莱姆法则要进行
次运算,如用每秒1亿次乘法运算的计
算机要30万年。
2.存储量。 大型问题有必要考虑。
9.7 10 3.数值稳定性。 在大量计算中20,舍入误差是积累还是能控制,这与算法有关。
2020/10/29
12
§ 1.3 数值计算的误差
一、误差的种类及来源
模型误差
在建立数学模型过程中,要将复杂的现象抽象归结为 数学模型,往往要忽略一些次要因素的影响,而对问题 作一些简化,因此和实际问题有一定的区别.
2020/10/29
1
第一章 绪论
§ 1.1 数值计算的研究对象与特点 § 1.2 数值问题与数值方法 § 1.3 误差
2020/10/29
2
本章要点:
绝对误差(限)和相对误差(限) 有效数字位数及其与误差的关系 数值问题的性态与误差的关系 数值算法设计原则
2020/10/29
3
§ 1.1 计算机数值方法的研究对象与特点
2020/10/29
5
§ 1.2 数值问题与数值算法
一、数值问题
数值问题:
输入数据与输出数据之间函数关系的 一个确定而无歧义的描述
即:输入与输出的都是数值的数学问题
如求解线性方程组 求解二次方程
Ay B
ax2 bx c 0
是数值问题
输入的数据是系数矩阵A,常数项向量B与系数a,b, c
输出的数据是解向量 y,和方程的解 x1, x2
1.将计算机上不能执行的运算化为在计算机上可 执行的运算
2.针对所求解的数值问题研究在计算机上可执行 的且有效的计算公式
3.因为可能采用了近似等价运算,故要进行误差分析, 即数值问题的性态及数值方法的稳定性
2020/10/29
10
三、数值算法
数值算法是指有步骤地完成解数值问题的过程.
数值算法有四个特点:
观测误差
在建模和具体运算过程中所用的数据往往是通过观察 和测量得到的,由于精度的限制,这些数据一般是近似 的,即有误差
截断误差
2020/10/29
由于计算机只能完成有限次算术运算和逻辑运算,因此要 将有些需用极限或无穷过程进行的运算有限化,对无穷过 程进行截断,这就带来误差.
13
如:
ex 1 x x2 x3
定义2. 设x为准确值 , x*为x的一个近似值 , 称
er *
e* x
x* x x
为近似值 x*的相对误差
x* x x
2! 3!
sin x x x3 x5 x7 3! 5! 7!
ln(1 x) x x2 x3 x4 2! 3! 4!
Taylor展开
若将前若干项的部分和作为函数值的近似公式, 由于以后各项都舍弃了,自然产生了误差
2020/10/29
14
舍入误差
在数值计算过程中还会遇到无穷小数,因 计算机受到机器字长的限制,它所能表示 的数据只能有一定的有限位数,如按四舍 五入规则取有限位数,由此引起的误差