計算ソフト
シュテルマーの公式を使ったプログラムと、ガウス・ルジャンドルの公式を使ったプログラムです。
☆シュテルマーの公式を使ったプログラム☆
シュテルマーの公式とは、シュテルマー(C.Störmer)が1896年に発見した公式です。
π | =44arctan | 1 | +7arctan | 1 | −12arctan | 1 | +24arctan | 1 |
4 | 57 | 239 | 682 | 12943 |
arctan x は
arctan x=x^1/1-x^3/3+x^5/5-x^7/7+.....
とすれば求められます。
このプログラムでは100000桁ぐらいまで求められます。
シュテルマーの公式πの計算プログラム(MS-DOS用:LZH圧縮:5768Byte)
Pentium-II 300MHzで、10000桁を約5.5秒です。
☆ガウス・ルジャンドルの公式を使ったプログラム☆
ガウス・ルジャンドルの公式は最近まで記録更新の主計算にも使われていた公式です。
東京大学の金田教授らのグループが作った"Superπ"もこの公式を使っています。
多倍長演算にはFFT(高速フーリエ変換)を使っています。プログラムの大体は東京大学の誰かが作ったのですが、(忘れました。m(__)m)ちょっとだけ修正しました。まじめに筆算のように計算するととても時間がかかってやってられません。(100桁計算するのに1時間ぐらいかかったような気がします)
できれば自作でも作りたいのですが、もう一つよくわからなくて..。
ガウス・ルジャンドルの公式のπの計算プログラム(MS-DOS用:LZH圧縮:11.3KB)
Pentium-II 300MHzで、256桁を約15秒です。
同じガウス・ルジャンドルの公式を使っていますが、こちらは格段に速いです。
東京大学の金田研究室のグループが作ったソフトです。
Superπ(Windows用:LZH:69.4KB)
Superπ(Windows用:LZH自己解凍:71.0KB)
Pentium-II 300MHzで、104万桁を約7分です。
☆近藤さん作のソフト☆
ガウス・ルジャンドルの公式を利用しています。1GBのメモリで2億6843万桁まで求められます。
何回かループの回数が少ないのである桁数以上計算すると、Superπより速いです。
PIPIPIH.EXE(Windows用:LZH圧縮:222KB)
Pentium-II 300MHzで、104万桁を約5分半です。
上と同じやり方ですが、ハードディスクを使わずにメモリだけを用いて計算を行っています。だから、ちょっとだけ計算できる桁数が小さくて、6710万桁までしかできません。だが、上のソフトよりさらに高速化されています。必要なメモリは求める桁数×10バイトぐらいです。
PIPIM.EXE(Windows用:LZH圧縮:223KB)
Pentium-II 300MHzで、104万桁を約3分です。
ボールウェインの4次の収束の公式を利用して計算しています。最大6710万桁。計算がややこしい分だけ少し遅いです。
PIB4M.EXE(Windows用:LZH圧縮:223KB)
Pentium-II 300MHzで、104万桁を約6分です。
ガウスの公式を利用して計算します。上の3つのソフトと比べると格段に計算速度が遅いので、桁数を伸ばす計算には不向きです。最大10万桁まで。計算速度は桁数の2乗にほとんど比例します。
PIGAUSS.EXE(Windows用:LZH圧縮:220KB)
Pentium-II 300MHzで、10000桁を約6秒です。
マチンの公式を利用して計算します。コンピューターによる円周率の計算としては一番基礎となるものです。上のソフトよりさらに計算速度が遅いので、桁数を伸ばす計算にはかなり不向きです。最大10万桁まで。計算速度は桁数の2乗にほとんど比例します。
PIMACHIN.EXE(Windows用:LZH圧縮:220KB)
Pentium-II 300MHzで、10000桁を約5秒です。
近藤さんのソフトについて詳しくは近藤さんのホームページへ