主題
Search

Pi 迭代


pi 可以使用多種迭代演算法計算得出。其中最著名的演算法阿基米德演算法(由普法夫於 1800 年推導得出)和 Brent-Salamin 公式。Borwein 等人 (1989) 討論了 p 階迭代演算法。

Brent-Salamin 公式是一種二次收斂演算法。

另一種二次收斂演算法(Borwein 和 Borwein 1987,第 46-48 頁)透過定義以下公式獲得

x_0=sqrt(2)
(1)
y_1=2^(1/4)
(2)

x_n=1/2(x_(n-1)^(1/2)+x_(n-1)^(-1/2))
(3)
y_n=(y_(n-1)x_(n-1)^(1/2)+x_(n-1)^(-1/2))/(y_(n-1)+1).
(4)

那麼

 pi_n=pi_(n-1)(x_n+1)/(y_n+1),
(5)

其中 pi_0=2+sqrt(2)pi_n 單調遞減至 pi

 pi_n-pi<10^(-2^(n+1))
(6)

對於 n>=2

一種三次收斂演算法,它收斂到最接近 pi 倍數的 f_0 是簡單的迭代

 f_n=f_(n-1)+sin(f_(n-1))
(7)

(Beeler等人 1972)。例如,應用於 23 得到序列 23, 22.1537796, 21.99186453, 21.99114858, ...,它收斂到 7pi approx 21.99114858

一種四次收斂演算法透過令

y_0=sqrt(lambda^*(r))
(8)
alpha_0=alpha(r),
(9)

然後定義

y_n=(1-(1-y_(n-1)^4)^(1/4))/(1+(1-y_(n-1)^4)^(1/4))
(10)
alpha_n=(1+y_n)^4alpha_(n-1)-4^nsqrt(r)y_n(1+y_n+y_n^2).
(11)

那麼

 pi=lim_(n->infty)1/(alpha_n)
(12)

alpha_n 四次收斂到 1/pi

 alpha_n-1/pi<16·4^nsqrt(r)e^(-4^npisqrt(r))
(13)

(Borwein 和 Borwein 1987,第 170-171 頁;Bailey 1988,Borwein等人 1989)。該演算法基於 4 階的模方程恆等式。取特殊情況 r=2 得到 y_0=sqrt(2)-1alpha_0=2(sqrt(2)-1)^2=6-4sqrt(2)

一種五次收斂演算法透過令

s_0=5(sqrt(5)-2)
(14)
alpha_0=1/2.
(15)

然後令

 s_n=(25)/((z+x/z+1)^2s_(n-1)),
(16)

其中

x=5/(s_n)-1
(17)
y=(x-1)^2+7
(18)
z=[1/2x(y+sqrt(y^2-4x^3))]^(1/5).
(19)

最後,令

 alpha_(n+1)=s_n^2alpha_n-5^n[1/2(s_n^2-5)+sqrt(s_n(s_n^2-2s_n+5))],
(20)

那麼

 0<alpha_n-1/pi<16·5^ne^(-pi5^n)
(21)

(Borwein等人 1989)。該演算法基於 5 階的模方程恆等式。

從任何正整數 n 開始,向上舍入到最接近 n-1 的倍數,然後向上舍入到最接近 n-2 的倍數,依此類推,直到最接近 1 的倍數。令 f(n) 表示結果。那麼比率

 lim_(n->infty)(n^2)/(f(n))=pi.
(22)

David (1957) 將此結果歸功於 Jabotinski 和 Erdős,並給出了更精確的漸近結果

 f(n)=(n^2)/pi+O(n^(4/3)).
(23)

序列 {f(n)} 中的前幾個數字是 1, 2, 4, 6, 10, 12, 18, 22, 30, 34, ... (OEIS A002491)。

另一種演算法歸功於 Woon (1995)。定義 a(0)=1

 a(n)=sqrt(1+[sum_(k=0)^(n-1)a(k)]^2).
(24)

可以透過歸納法證明

 a(n)=csc(pi/(2^(n+1))).
(25)

對於 n=0,恆等式成立。如果它對於 n<=t 成立,那麼

 a(t+1)=sqrt(1+[sum_(k=0)^tcsc(pi/(2^(k+1)))]^2),
(26)

但是

 csc(pi/(2^(k+1)))=cot(pi/(2^(k+2)))-cot(pi/(2^(k+1))),
(27)

所以

 sum_(k=0)^tcsc(pi/(2^(k+1)))=cot(pi/(2^(t+2))).
(28)

因此,

 a(t+1)=csc(pi/(2^(t+2))),
(29)

因此恆等式對於 n=t+1 成立,並且透過歸納法,對於所有非負 n 都成立,且

lim_(n->infty)(2^(n+1))/(a(n))=lim_(n->infty)2^(n+1)sin(pi/(2^(n+1)))
(30)
=lim_(n->infty)2^(n+1)pi/(2^(n+1))(sin(pi/(2^(n+1))))/(pi/(2^(n+1)))
(31)
=pilim_(theta->0)(sintheta)/theta=pi.
(32)

另請參閱

阿基米德演算法, Brent-Salamin 公式, Pi, Pi 的位數, Pi 公式

使用 探索

參考文獻

Bailey, D. H. "使用 Borwein 的四次收斂演算法計算 pi29360000 位十進位制數字。" Math. Comput. 50, 283-296, 1988.Beeler, M. et al. 專案 140,出自 Beeler, M.; Gosper, R. W.; 和 Schroeppel, R. HAKMEM. Cambridge, MA: MIT 人工智慧實驗室, Memo AIM-239, p. 69, Feb. 1972. http://www.inwap.com/pdp10/hbaker/hakmem/pi.html#item140.Borwein, J. M. 和 Borwein, P. B. Pi & the AGM: 解析數論和計算複雜性研究。 New York: Wiley, 1987.Borwein, J. M.; Borwein, P. B.; 和 Bailey, D. H. "拉馬努金、模方程和 Pi 的近似值,或如何計算十億位 Pi。" Amer. Math. Monthly 96, 201-219, 1989.David, Y. "關於透過篩選過程生成的序列。" Riveon Lematematika 11, 26-31, 1957.Sloane, N. J. A. 序列 A002491/M1009,在“整數序列線上百科全書”中。Woon, S. C. "問題 1441。" Math. Mag. 68, 72-73, 1995.

在 中被引用

Pi 迭代

請引用為

Weisstein, Eric W. "Pi 迭代。" 來自 —— 資源。 https://mathworld.tw/PiIterations.html

學科分類