よく考えてみると、円周率って本当に不思議な数ですよね。この無理数は、本当に奇妙なところに現れるんです。例えば、紐で質量を前後に揺らすと、そこに円周率が現れます。ハイゼンベルクの不確定性原理、アインシュタインの一般相対性理論、そして二つの電荷の相互作用にも出てきます。
もちろん、ほとんどの人は円周率を円と結びつけます。円周率の最も基本的な定義は円の円周と直径の比であるため、それは理解できます。

イラスト: レット・アラン
さて、ここからが重要な部分です。ご存知の通り、今日は円周率の日です。なぜ今日なのか?それは、今日が3月14日、そう、3/14だからです。そして、円周率を小数点以下2桁まで数えると3.14になります。もちろん、実際の数は小数点以下無限大、つまり3.14159265359…と、永遠に続きます。だからこそ無理数と呼ばれるのです。
付け加えておきますが、月/日/年のミドルエンディアン形式を採用しているのは、ほぼアメリカだけです。日/月/年のリトルエンディアン形式を採用する場合、今日は14/3になりますが、これは明らかに円周率ではありません。(その場合、7/22という分数は円周率のかなり正確な近似値なので、7月22日をお勧めします。)
とにかく、円周率の日を祝う私の伝統的な方法は、毎年円周率の数値を計算する新しい方法を見つけることです。これが私のやり方です。もうかなり長い間この方法を続けているので、お気に入りの方法をいくつかご紹介します。
- 乱数(および Python)を使用して円周率を求める
- バネ上で振動する質量を使って円周率の値を決定する
- 実際の円の円周と直径を実際に測定する
円周率の日に関する投稿は他にもたくさんあります。でも今回は新しい方法を試してみましょう。円を描いて円周率にどれだけ近づけるか試してみましょう。
仕組みはこうです。まず円を描きます。その円から円周と半径を決定できます。円周率は円周を半径の2倍で割った値になります。簡単ですよね?
でも、もし円が完璧じゃなかったらどうするの?そもそも完璧な円なんて描ける人なんているの?この不完全な円が、実は線分で繋がれた離散的な点の集まりだと想像してみて。その一部を拡大すると、こんな感じになるかもしれない:

イラスト: レット・アラン
次の式を使用して、連続する各ポイント間の距離を見つけることができます。

イラスト: レット・アラン
円周全体を求めるには、これらの距離をすべて足し合わせれば十分でしょう。それでうまくいくはずです。では、半径はどうでしょうか?不完全な円の中心が分かっていると仮定しましょう。その場合、中心から円を構成するすべての点までの平均距離として半径を計算できます。
そこで、計算を行うためのPythonスクリプトを作成しました。ぜひ以下で試してみてください!黄色いボールを中央の白いボールの周りをドラッグして、できるだけきれいな円を描いてみてください。円を一周させると、プログラムが円の円周と半径を計算し、そこから円周率を計算します。鉛筆アイコンをクリックするとコードを確認できます。もう一度実行するには、「再生」ボタンをクリックしてください。
正直に言うと、もっと改善できると思います。VPythonにマウスインタラクションを追加すると、いつも少しおかしなことになってしまうので(少なくとも私の場合はそうでした)、今回は独特の問題が発生しました。とはいえ、私は物事をできるだけシンプルにしておきたいのです。
さあ、円周率の日チャレンジに挑戦しましょう。(そう、自分でチャレンジを作っているんです。)円周率を計算し、3.14159265359に近い円を描けますか?小数点以下何桁まで正確に出せますか?友達より良い値を出せますか?さあ、見てみましょう!
WIREDのCOVID-19に関するその他の記事
- 手作りハンドサニタイザーの作り方
- シンガポールは新型コロナウイルスへの備えができていた――他国は参考にすべき
- パンデミック中に配達を注文するのは倫理的でしょうか?
- 顔を触るのをやめられない?科学的な理由
- 気が狂わずに在宅勤務するためのヒント
- コロナウイルスに関する当社の報道はすべてこちらでご覧いただけます