邵任翔,萬 麗,鄧小成
(廣州大學(xué)a.數(shù)學(xué)與信息科學(xué)學(xué)院;b.數(shù)學(xué)與交叉科學(xué)廣東普通高校重點實驗室,廣東廣州510006)
一種減少泰勒公式計算誤差的數(shù)值方法
邵任翔,萬 麗,鄧小成
(廣州大學(xué)a.數(shù)學(xué)與信息科學(xué)學(xué)院;b.數(shù)學(xué)與交叉科學(xué)廣東普通高校重點實驗室,廣東廣州510006)
利用泰勒公式計算某些無理數(shù)的近似值的時候,經(jīng)常會把它分解為一些有理分?jǐn)?shù)(這些分?jǐn)?shù)可以是正數(shù),也可以是負(fù)數(shù))之和,然后把這些分?jǐn)?shù)轉(zhuǎn)化為有限小數(shù).在分?jǐn)?shù)轉(zhuǎn)化為小數(shù)的時候,有些分?jǐn)?shù)的轉(zhuǎn)化是沒有誤差的,有些有誤差.文章分析了這些誤差產(chǎn)生的原因,以及怎樣減少這些誤差.
泰勒公式;數(shù)值計算;誤差分析
泰勒公式[1]在數(shù)值計算中扮演著重要角色.通過泰勒公式進(jìn)行數(shù)值計算,產(chǎn)生的誤差有兩個原因,一個原因在于舍棄了余項,另一個原因在于每項進(jìn)行了近似計算,產(chǎn)生了舍入誤差,也就是由分?jǐn)?shù)通過除法(四舍五入)轉(zhuǎn)化為有限小數(shù)所產(chǎn)生的誤差.文獻(xiàn)[2-4]討論了余項所產(chǎn)生的誤差,而文獻(xiàn)[5-7]討論了怎樣改變余項以減少余項所產(chǎn)生的誤差.對于怎樣控制舍入誤差,討論的論文較少,本文主要討論怎樣減少舍入誤差.
比如通過泰勒公式計算e的近似值(要求誤差小于10-6),下面看一般教科書[8]的做法:
已知ex的麥克勞林公式為ex=1+x+x 2?。?/p>
定義1 如果一個分?jǐn)?shù)能用有限小數(shù)精確表示,則把這個分?jǐn)?shù)稱為有限分?jǐn)?shù),如1/2、2/5等等.
定義2 如果一個分?jǐn)?shù)只能用循環(huán)小數(shù)精確表示(有限小數(shù)只能表示它的近似值),則把這個分?jǐn)?shù)稱為無限分?jǐn)?shù).比如1/3、2/7等等.
定義3 如果一個有限分?jǐn)?shù)的小數(shù)點后的總位數(shù)在問題所要求的精度范圍之內(nèi),那么這個有限分?jǐn)?shù)稱為可控有限分?jǐn)?shù),否則稱為不可控有限分?jǐn)?shù).
不可控有限分?jǐn)?shù)雖然可以用有限小數(shù)表示,但是精確表示的代價可能太大,需要超過精度范圍的位數(shù)才可以精確表達(dá).比如上例中誤差要求小于10-6,求和分?jǐn)?shù)的項數(shù)為7,每項四舍五入到小數(shù)點后7位,這樣總的舍入誤差可以控制在7× 0.5×10-7.本例中的分?jǐn)?shù)如果至多只需要用小數(shù)點后面7位數(shù)字精確表示,那么這個分?jǐn)?shù)就叫可控有限分?jǐn)?shù).如果求和的項數(shù)較多,為了減少總的舍入誤差,則需要提高每個分?jǐn)?shù)的計算精度.一個有限分?jǐn)?shù)是否可控,需要根據(jù)具體問題提前給出.因此,一個有限分?jǐn)?shù)是否可控依賴于問題的誤差限以及求和的項數(shù).
定義4 設(shè)a、b是2個無限分?jǐn)?shù),如果a+b是一個有限分?jǐn)?shù),那么稱a是b的對偶無限分?jǐn)?shù),或者b是a的對偶無限分?jǐn)?shù).顯然,一個無限分?jǐn)?shù)的對偶分?jǐn)?shù)不唯一.
定義5 設(shè)a、b是兩個不可控有限分?jǐn)?shù),如果a+b是一個可控有限分?jǐn)?shù),則稱a是b的對偶不可控有限分?jǐn)?shù),或者b是a的對偶不可控有限分?jǐn)?shù).顯然,一個不可控有限分?jǐn)?shù)的對偶分?jǐn)?shù)不唯一.
定義6 2或者5這樣的素因子稱為平凡素因子,其它素因子稱為不平凡素因子.
從2003到2015年,耦合度的空間分異規(guī)律愈加明顯,總體上呈現(xiàn)出沿邊地區(qū)(西北、東北、西南)>中部內(nèi)陸>東南沿海的三級階梯式分布(具體如表4所示),2003年高耦合度區(qū)域包含11個省(直轄市、自治區(qū)),集中分布于西北、東北、西南的沿邊地區(qū);中等耦合度區(qū)域19個,分布于中部以及東南沿海區(qū)域;低耦合度區(qū)域僅有廣東省。到2015年,高耦合度區(qū)域擴(kuò)展到12個省(直轄市、自治區(qū)),大部分區(qū)域耦合度穩(wěn)定,沿邊分布的特性更加凸顯;中等耦合度區(qū)域減少到12個,減少主要源于東部沿海區(qū)域的低耦合度轉(zhuǎn)變;低耦合度區(qū)域增加到7個,分布集中于東南沿海區(qū)域。
定義7 分子與分母互質(zhì)的分?jǐn)?shù)稱為既約分?jǐn)?shù)或者最簡分?jǐn)?shù)[9].
定理1 一個最簡分?jǐn)?shù)為有限分?jǐn)?shù)的充要條件是分母只含有2或5這樣平凡的素因子.
定理2 有限分?jǐn)?shù)與有限分?jǐn)?shù)之和還是有限分?jǐn)?shù).
證明 由于有限分?jǐn)?shù)轉(zhuǎn)化為有限小數(shù)以后,相加后還是有限小數(shù),所以也就是有限分?jǐn)?shù).
推論1 無限分?jǐn)?shù)與有限分?jǐn)?shù)之和一定是無限分?jǐn)?shù).
證明 反證法,假設(shè)無限分?jǐn)?shù)與有限分?jǐn)?shù)之和是有限分?jǐn)?shù),則無限分?jǐn)?shù)可以寫成兩個有限分?jǐn)?shù)之差,這與定理2矛盾,所以推論1成立.
舍入誤差的控制有3種方法:
(1)增加除法的計算精度,也就是增加四舍五入到小數(shù)點后面的位數(shù).這種方法在一般的高等數(shù)學(xué)或者數(shù)值計算[1]的書籍中都可以找到.
(2)每項分?jǐn)?shù)先不進(jìn)行數(shù)值運算,而是對分?jǐn)?shù)的和運算進(jìn)行符號運算,對最后的結(jié)果進(jìn)行數(shù)值運算.這種運算的復(fù)雜性會隨著計算的項數(shù)增加而增加,所以不大適合項數(shù)很多的運算.這種方法在符號計算或者計算機(jī)代數(shù)[10]類書籍中有討論.
(3)尋找不可控有限分?jǐn)?shù)的對偶分?jǐn)?shù),以及無限分?jǐn)?shù)的對偶分?jǐn)?shù),然后調(diào)整運算的次序,挑出一些分?jǐn)?shù),讓這些分?jǐn)?shù)求和,使它們的和沒有誤差或者減少誤差.
本文重點介紹第3種方法.
有限分?jǐn)?shù)和無限分?jǐn)?shù)之和一定是無限分?jǐn)?shù).3個或者3個以上的無限分?jǐn)?shù)之和是否為有限分?jǐn)?shù),情況較復(fù)雜,這里暫不討論.本文只關(guān)心2個無限分?jǐn)?shù)(正數(shù)或者負(fù)數(shù))是否能夠湊成一個有限分?jǐn)?shù),然后判斷這個有限分?jǐn)?shù)是否為可控有限分?jǐn)?shù).2個不可控有限分?jǐn)?shù)能否湊成可控有限分?jǐn)?shù).
第1步將分?jǐn)?shù)分為3類(見圖1):第1類是可控有限分?jǐn)?shù);第2類是不可控有限分?jǐn)?shù);第3類是無限分?jǐn)?shù).2個無限分?jǐn)?shù)組合有以上3種可能.如果可以組合成可控有限分?jǐn)?shù),則將其和值放入第1 類.如果可以組合成不可控有限分?jǐn)?shù),則將其和值放入第2類.2個不可控有限分?jǐn)?shù)組合有2種可能,如果可以組合成可控有限分?jǐn)?shù),則將其求和放入第1類.然后將可控有限分?jǐn)?shù)、沒有組合的不可控有限分?jǐn)?shù)、沒有組合的無限分?jǐn)?shù)轉(zhuǎn)化成小數(shù).最后一步求和.
圖1 計算流程圖Fig.1 The calculation flow chart
現(xiàn)以一個簡單例子說明該算法的計算效果:計算ln1.2的值,使誤差不超過10-4.
解 先寫出f(x)=ln(1+x)帶拉格朗日型余項的麥克勞林展開式:
取n=5可以滿足上面的不等式,但是由于舍入誤差的影響,必須取n=6才可以保證總誤差小于10-4.因此,
一般數(shù)值方法的優(yōu)點在于有很好的統(tǒng)一性,易于操作.它較好地考慮了問題的普遍性,但往往忽略了問題的特殊性.文中提到的數(shù)值方法不會對每一個問題都有減少誤差的作用,但是只要生成了新的有限分?jǐn)?shù),就可以減少數(shù)值計算的誤差.怎樣判斷一個分?jǐn)?shù)數(shù)項和是否為有限分?jǐn)?shù)以及怎樣有效地組合某些無限分?jǐn)?shù)?2個無限分?jǐn)?shù)的和是一個有限分?jǐn)?shù)的充要條件是什么?是否有一個有效的算法存在?這些問題都需要進(jìn)一步研究.
致謝 感謝上海數(shù)學(xué)中心的項征御老師對本論文的貢獻(xiàn).
[1] 華東師范大學(xué)數(shù)學(xué)系.數(shù)學(xué)分析[M].北京:高等教育出版社,2011:51-59.
Department of Mathematics,East China Normal University.Mathematical analysis[M].Beijing:Higher Education Press,2011:51-59.
[2] 安世全.泰勒公式及其應(yīng)用[J].高等數(shù)學(xué)研究,2011(9):26-28.
AN S Q.Taylor formula and its application[J].Stud Coll Math,2011(9):26-28.
[3] 孔珊珊.泰勒公式在數(shù)值計算中的應(yīng)用[J].濟(jì)寧學(xué)院學(xué)報,2011(6):70-72.
KONG S S.Application of Taylor formula in numerical computation[J].J Jining Univ,2011(6):70-72.
[4] 朱永生,劉莉.基于泰勒公式應(yīng)用的幾個問題[J].長春師范學(xué)院學(xué)報,2006(8):30-32.
ZHU Y S,LIU L.Some problems of Taylor formula’s applications[J].J Changchun Norm Univ,2006(8):30-32.
[5] ANASTASSIOUA G A,DRAGOMIRB S S.On some estimates of the remainder in Taylor's formula[J].J Math Anal Appl,2001,263(1):246-263.
[6] AHMAD E A,OMAR A A,MOHAMMED A S.A general form of the generalized Taylor’s formula with some applications [J].Appl Math Comp,256(1):851-859.
[7] PE?ARI?J E,TUDOR G,CRSTICI B,et al.Note on Taylor's formula and some applications[J].J Appr Thor,51(1):47-53.
[8] 楊一都.數(shù)值計算方法[M].北京:高等教育出版社,2008:77-80.
YANG Y D.Numerical calculation method[M].Beijing:Higher Education Press,2008:77-80.
[9] 維基百科.http://zh.wikipedia.org/wiki/%E6%9C%80%E7%AE%80%E5%88%86%E6%95%B0.Wikipedia. [EB/OL][2015-04-22].
[10]王東明,夏壁燦,李子明.計算機(jī)代數(shù)[M].北京:清華大學(xué)出版社,2007:34-45.
WANG D M,XIA B C,LI Z M.Computer algebra[M].Beijing:Tsinghua University Press,2007:34-45.
The improvement of numerical calculation based on Taylor formula
SHA0Ren-xiang,WAN Li,DENG Xiao-chen
(a.School of Mathematics and Information Sciences;b.Key Laboratory of Mathematics and Interdisciplinary Sciences of Guangdong Higher Education Institutes,Guangzhou University,Guangzhou 510006,China)
The approximate value calculation of some irrational number by using the Taylor formula is often decomposed into the sum of some rational fraction(These fractions are positive number,or not).Then every fraction is put into a finite decimal.When every fraction transforms into finite decimal,some fractions of the transformation have no error,some have error.This paper analyzes the causes of errors,and how to reduce the errors.
Taylor formula;numerical calculation;error analysis
0242.2
A
【責(zé)任編輯:周 全】
1671-4229(2015)05-0009-04
2015-03-27;
2015-04-24
廣州市教育局科技計劃資助項目(2012A022)
邵任翔(1976-),男,講師.E-mail:shaorenxiang@163.com