洪明理 霍振香 王福昌
[摘要]把收斂速度較慢的級數變成另一個收斂較快的級數在數值計算中具有非常重要的實際意義。本文主要介紹三種加快慢級數收斂速度的方法,并構造案例說明它們在提高慢級數收斂速度取得的效果。這些內容可以作為課堂教學的重要補充,豐富學生的知識結構。
[關鍵詞]級數;收斂速度;數值計算
[基金項目] 防災科技學院高等數學教學團隊基金資助項目(JT201312)
引 言
級數是牛頓和萊布尼茲微積分工作的一個重要部分。在18世紀,甚至今天,無窮級數一直被認為是微積分的一個不可缺少的組成部分。它們是研究和計算復雜的代數函數和超越函數的最富有成效的工具[1]。很多超越函數,只有把它們表示成級數并進行微分和積分,人們才能處理它們。除了用于微積分之外,級數的主要應用在于數值計算,如計算π,e等特殊的量以及對數函數和三角函數等。但是有些級數收斂得太慢太慢,對于計算來說幾乎不能使用。例如萊布尼茲在1674年得到了有名的結論:
π4=1-13+15-17+…
但是要利用該級數計算π,即使要達到阿基米德已經取得的小數點后3位的精度,也得算到100000項。這樣的收斂速度對于計算來說作用不大。因此,研究如何把收斂較慢的級數變成另一個收斂較快的級數在近似計算中具有非常重要的實際意義。 本文將分別介紹加速級數收斂三種變換方法,并結合案例說明這些方法在提高慢級數收斂速度的作用。
1。Kummer變換
定理1([4]) 已知級數∑∞n=0an和∑∞n=0cn收斂,且 ∑∞n=0cn=c,若limn→∞ancn=λ≠0,則可對∑∞n=0an
作如下線性變換:∑∞n=0an=λc+∑∞n=0(1-λcnan)an。
Kummer變換通過一個和已知的級數求其他級數的和,這種變換具有加快級數收斂的作用。
例1 利用∑∞n=01n(n+1)(n+2)=14對∑∞n=11n3進行kummer變換∑∞n=11n3=14+∑∞n=13n+2n3(n+1)(n+2)。
計算∑∞n=11n3的前100項的和為1。2020,其精度為10-4。而變換后的級數要達到同等的精度,只需計算到前50項。
kummer變換提高收斂速度的效果比較有限,在很多近似計算中往往無法滿足實際的要求。
2。Euler變換
18世紀,歐拉提出了歐拉變換[3],變換方法如下定理。
定理2 設交錯級數∑∞n=0(-1)nan(an≥0)收斂,則可對其作如下的變換:
∑∞n=0(-1)nan=∑∞n=0(-1)nΔna02n+1,
其中Δna0=∑nm=0(-1)mCmnan-m,且和不變。
Euler變換在計算交錯時具有明顯加快交錯級數收斂的作用。
例2 利用萊布尼茲定理,如果取交錯級數∑∞n=0(-1)nn+1前n項的和作為級數和的近似值,余項的絕對值rn+1 變換后的級數要達到同等的精度,只需計算到Δ7。 對于一般的收斂級數∑∞n=0un,我們可以通過加括號的方法將其轉化成交錯級數,再進行歐拉變換。 ∑∞n=0un=(u1+u2+…un1)+(un1+1+un1+2+…un2)+…(unk-1+1+unk-1+2+…unk)+…=a1+a2+…+ak+… 其中ak與ak+1(k=1,2,3,…)異號。即有∑∞n=0un=∑∞k=0(-1)kak。這時候就可以用歐拉變換 進行計算,直到前n項的和Sn=∑nk=0(-1)kΔka02k+1滿足我們所需的相對精度ε,即計算到 Sn+1-SnSn<ε 為止。 3。利用函數的冪級數展開式進行變換 情形1套用函數的冪級數展開式,將數項級數的一般項表示成級數的形式,從而把該數項級數表示累級數,再通過交換求和符號的順序加速級數收斂。 例3 對于級數∑∞k=21klnkk-1, 利用ln(1+x)的冪級數展開公式ln(1+x)=∑∞n=1(-1)n-1nxn,-1 知-xln(1-x)=∑∞n=1(-1)n-1n(-x)n+1=∑∞n=1xn+1n,-1 ∑∞k=21klnkk-1=∑∞k=2-1kln(1-1k)=∑∞k=2∑∞n=11n1kn+1。 由∑∞k=21klnkk-1收斂,知∑∞k=2∑∞n=11n1kn+1收斂,從而∑∞k=2∑∞n=11n1kn+1=∑∞n=1∑∞k=21n1kn+1([2]),因此∑∞k=21klnkk-1=∑∞n=1∑∞k=21n1kn+1=∑∞n=1ζ(n+1)-1n,其中ζ(n)=∑∞k=11kn為黎曼zeta函數。變換后的級數比原級數的收斂速度具有明顯的提高。經數值計算顯示:∑∞n=1ζ(n+1)-1n前10項的和為0。7885,精度為10-4。而原級數∑∞k=21klnkk-1要達到同等的精度,必須計算到2×104項。 情形2 利用函數的冪級數展開式,將收斂速度慢的級數轉化為收斂速度快的級數。 例4 對級數∑∞n=1(-1)n-11n,由ln(1+x)=∑∞n=1(-1)n-1nxn,-1 從而ln1+x1-x=ln(1+x)-ln(1-x)=2x+13x3+15x5+…,-1 ∑∞n=1(-1)n-11n=ln2=ln1+1[]31-1[]3=213+13133+15135+17137+…。 顯然轉換后的級數的收斂速度要快得多。如果取轉換后的級數的前n項作為∑∞n=1(-1)n-11n的近似值,要使得誤差 212n+1132n+1+12n+3132n+3+12n+5132n+5+…<14132n-1<10-4。只需n≥5。但是如果直接計算∑∞n=1(-1)n-11n的和,要達到10-4的精度,則必須計算到10000項。 [參考文獻] [1]莫里斯 克萊因著。朱學賢,申又棖,葉其孝等譯。《古今數學思想》第二冊。2002,p161。 [2]《數學手冊》編寫組,《數學手冊》,高等教育出版社,1979,p189。