円周率単語

エンシュウリツ
  • 41
  • 0pt
掲示板へ

円周率(えんしゅうりつ)とは、円の直径に対する円周のである。直径1の円の周の長さに等しい。

数学定数の一つであり、超越数である為、便宜上“π”で表される。

円周率に関する慣用表現

ゆとり教育の代名詞として、「円周率が3」と導された世代と揶揄する人も多い。が、実際には「円周率が3」で導ということ自体がガセネタでそのような事実はなく、都市伝説である。当時の学習導要領に「円周率を教える前の段階で、円周率を使う必要がある問題を解かせる場合に限り円周率を3と代用してもかまわない(要約)」と書かれていたのを、とある学習塾が「ゆとり教育では円周率が3と教えるようになります。だから塾に行きましょう(要約)」というデタラメ広告を掲載したのが最初で、これがよく確認されないまま広まってしまったとされる。つまり、ゆとり教育世代でも普通に円周率は3.14で導されており、知った被って「お前は円周率が3と習っただろう」と発言すると、発言者こそがバカにされる結果となりかねないのでご注意を。

そもそも、3だろうが3.14だろうが、等しく慣用表現であり正確な数値ではない[注]

注:有効数字という概念から3.14を慣用する事と整数部が3であることを利用して3を用いることには何の違いもない。尚、工学物理の分野では、実用的にも十分な精度を確保する為、5~6桁程度に拡されて用いられている。

円周率として3を使った場合最大で33%程度の誤差が出るが、3.14を使った場合0.3%程度に、3.1415なら0.003%程度になる。日常使う範囲なら3.14で、高い精度がめられる場合でもせいぜい5桁程度あれば十分であるといえる。また、観測可宇宙と同じサイズ円盤(半径約465光年)の円周の長さを水素原子の半径(5.29×10-9m)以下の誤差に収めるするには40桁あればいいらしい。地球サイズならば15桁もあれば同程度の精度になる。

円周率を求める方法

測る

ラップの芯などの円に近い筒に糸を巻きつけ、その長さを直径で割ってやればよい。そこそこそれっぽい値になる。

誤差は紐の伸びや歪み、筒の円度や強度、ものさしの精度に依存する。

正多角形で近似正24角形とかを見てもらえばなんとなくわかると思うが、正n角形の

nをどんどん大きくすれば円を近似できる。下記のD言語版プグラムはこの原理に基づいて記述されている。「円周率およそ3」は円を内接正6角形と見做した場合に相当する。

a0=2√3, b0=3, an+1=2anbn/(an+bn), bn=√(an+1bn) としてやれば、anは直径1の円に外接する、bnは内接する正6×2n形となる。従って、an<π<bn。nを増やしていけばより正確になる。n=4で3桁、n=10で7桁の精度でまる。

初歩的なアルゴリズムであり図形的にも理解しやすいが、N桁めるためにN×1.66回程度の平方根計算と乗算が必要であるため現在は使われていない。

また、東京大学2003年度前期入試試験で「π>3.05を明せよ」という問題が出たが、円に内接する正八形以上の多形で計算すれば明することができる。

三角関数のテイラー展開

tan-1(x)をテイラー展開すると、tan-1(x)=x-x3/3+x5/5-x7/7+…

となる。このxに1を代入するとπ/4=tan-1(1)=1-1/3+1/5-1/7+…となる。しかし収束が極めて遅い。つまり、がんばって計算しても全然桁数が増えない。この方法でπ10桁の精度でめるために100億回計算する必要がある。

この級数オイラー変換と呼ばれる変換を施すと、t=x2/(1+x2)、an=2n!!/(2n+1)!!として、tan-1(x)=(1+Σ(antn))×t/xとなる。この善した方法を使うと30回程度の計算で10桁の精度を得ることができる。

arctan公式

π/4=Σ(pntan-1(1/qn))の形式の物。タンジェントの加法定理を繰り返し適用することで導出する。各項の数値はtan-1(x)のテイラー展開による。

などがある。

収束が速く、πの桁数≒テイラー展開の項数である。一番上の物でtan-1(1/5)、tan-1(1/239)をそれぞれ第2項までテイラー展開すれば3桁の精度で、10項まで展開すれば10桁程度の精度で円周率がまる。

区分求積

01(1/(1+x2))dx=π/4 であることを用いる。

0から1をn等分に分割し、k番の点xk=k/nをf(x)=1/(1+x2)に代入、π/4≒Σf(xk)/nとしてめる。

1000項でおよそ3桁の精度なので収束は遅い。

モンテカルロ法

乱数を発生させてめる統計的方法。簡単にいえば、一辺2の正方形上に点をランダムに打った時、正方形に内接する半径1の円版上にプロットされる確率からめる。

具体的には-1から1までの乱数の組2つを発生させて面上にプロットし、原点の距離が1以下の物とそれ以外に分ける。そうすると π≒4×(距離1以下の点)/(全点数)となる。だいたい1000点で2桁程度の精度。

また、長さ1cmの針を2cmの間隔で引かれた行線上に落とし、線と重なる確率からめるという方法もある。繰り返せば1/πに収束する。シャープペンの芯や鉛筆など十分に細長い棒があれば簡単に実験できる。

ラマヌジャンの公式

1/π=(2√2/9801)×Σ((4k)!×(1103+26390k)/((k!)43964k)

というもの。めちゃくちゃな式に見えるがモジュラー関数がどうのこうので収束が非常に速いらしい。

さらに高度な方法

算術幾何均、楕円積分法を用いたり、掛け算や割り算の計算量を圧縮するため高速フーリエ変換ニュートン法を用いたりする。また、通常のコンピュータではせいぜい十進数で19桁程度しか扱えないので桁数があっという間に足りなくなる。そのため高い桁数を計算するための専用ソフトを開発する必要がある。

アルゴリズムソフトウェアの開発だけでなく、大規模計算ではスパコンを始めとした並列計算を用いるのが必須であり、半導体技術やエネルギー効率の善、コンピュータの設計技術の発展も欠かせない。

楽で円周率をめるだけでもその背景には科学技術の凄まじい発展が垣間見えるのである。

桁数の記録

暇だから俺も計算してみたい

簡単にでいいならCとかのプログラムの知識と、高校生程度の数学があれば簡単にできる。

エクセルがあればコンパイルが通らないなどと悩まずもっと簡単にできる。

え? 手計算? 人間のやるもんじゃないよ。

俺の書いたプログラム

D言語編 (多角形近似)

import std.cstream;
import std.math;

void main() {
int N = 10;
real[] a = new real[N], b = new real[N], t = new real[N], pi = new real[N];
a[0] = 1.0;
b[0] = 1.0 / sqrt(2.0);
t[0] = 1.0 / 4.0;
for(int i=0; i<N-1; i++) {
a[i+1] = (a[i] + b[i]) / 2.0;
b[i+1] = sqrt(a[i] * b[i]);
t[i+1] = t[i] - pow(2.0, cast(real)i) * pow(a[i] - a[i+1], 2.0);
}
for(int i=0; i<N; i++) {
dout.writefln("%40.37f", pow(a[i] + b[i], 2.0) / (4.0 * t[i]));
}
dout.writefln("%40.37f", real.epsilon);
}

実行結果exit

OCaml編 (sin-1(x)のx=1/2におけるテイラー展開)

open Num;;

let pi length =
let min = Int 1 // Int 10 **/ Int length in
let rec sum n an x =
let n2 = (Int 2) */ n in
let n2_1 = n2 +/ (Int 1) in
let an' = (n2_1 */ n2_1) //
(Int 4 */ (n2 +/ Int 2) */ (n2 +/ Int 3)) */
an in
if an' </ min then x +/ an'
else sum (n +/ Int 1) an' (x +/ an') in
let a0 = Int 1 // Int 2 in
Int 6 */ sum (Int 0) a0 a0;;

print_string (approx_num_fix 100 (pi 100));;

宿題(来週までに65000桁覚えること)

記事が重くなりすぎるので分離しました。→こちら

豆知識

円周率は全な乱数表という予想がある。これが正しければ、円周率には全ての数字、例えばあなたが適当に思い浮かべた数値でも、ニコニコ動画ログインするパスワードでも、はてはクレジットカード暗号鍵も個人のDNA情報も全て載っていることになる。ただし、的の桁数を定する方が情報量が多くなるので情報圧縮には使えない。

関連動画

関連商品

関連コミュニティ

関連項目

【スポンサーリンク】

  • 41
  • 0pt
スマホ版URL:
https://dic.nicovideo.jp/t/a/%E5%86%86%E5%91%A8%E7%8E%87

この記事の掲示板に最近描かれたお絵カキコ

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

円周率

309 ななしのよっしん
2019/06/04(火) 17:16:00 ID: g1LIII7Af6
せっかくだから教えて
310 ななしのよっしん
2019/06/08(土) 11:18:17 ID: WuWFa1TW7F
円の直径に対する円周のだよ
311 ななしのよっしん
2019/07/09(火) 02:37:35 ID: vK4wUQMPtw
なんで√2先輩円周率君より人気ないんすか?
円周率くんはなんか秘的なイメージつけられて持ち上げられすぎてません?
同じ無理数ですよね?どう思いますピタゴラス先生
312 ななしのよっしん
2019/07/20(土) 04:30:03 ID: WuWFa1TW7F
普通代数的数祭り上げられる理由などどこにもない
313 ななしのよっしん
2019/07/26(金) 20:12:17 ID: YlkjfNL29f
たぶん√2は超越数じゃないからだと思うそれよりなぜeが空気なのか
314 ななしのよっしん
2019/08/23(金) 20:29:39 ID: vb6Wf1Gi4n
314コメ
315 ななしのよっしん
2019/09/12(木) 16:09:09 ID: 8nYE3nGeSB
>>304
原点中心半径5の円のx,y>0部分の弧の長さは5/2π
その弧の上の(0,5),(4,3),(3,4),(5,0)を結んでできる線の長さは√2+2√10
この線分は弧の長さよりも短いので√2+2√10<5/2π
√2>1.41と√10>3.16を用いて計算すると2/5(1.41+2*3.16)=3.092<2/5(√2+2√10)<π
よって3.092<πとなるので題は示された

多分これが一番簡単だと思います
316 ななしのよっしん
2020/01/02(木) 02:03:44 ID: pnrMybMDKj
>>sm31415926exit_nicovideo
317 ななしのよっしん
2020/03/01(日) 00:32:44 ID: XPAdSg3jAz
円周率何千桁とか覚えるより暗算したほうが楽だと思う
318 ななしのよっしん
2020/03/16(月) 20:49:27 ID: /vgoPR00FI
気持ち悪いものを気持ち悪いまそれなりに扱う技術」かも
πなどと書いて気持ち良くしちゃうのは逃げ(笑)