妻の素朴な疑問

妻の素朴な疑問

出題

昨日の夜、寝室にて。

妻「建物の高さを測るのに、その建物までの距離と角度とを測る方法ってあるじゃない?」
僕「うん」
妻「あれが納得がいかない。地球って丸いから地面まっすぐじゃないじゃない?」
僕「あー、たしかに」
妻「あと目の高さによっても影響がありそう」
僕「それは無視できる程度の差だと思うけども」
妻「何がなぜ無視していいのかがよくわからない」
僕「なるほどなぁ、一度きっちり計算してみて、概算と大した差がないことを確認したらいいんだろうなぁ。ちなみに概算すると、1キロ先のものを眺めて角度45度でした、って時ならせいぜい10000分の2〜3くらい長い程度だと思うよ」


地球が平らだという思い込みと、現実の丸い地球との差

計算

僕は普段「地球は一周40000キロ」ってのを元に概算するんだけど、概算では納得してもらえなさそうなのでまずは地球の半径を調べる。Wikipediaによれば極半径で6356752メートル。これを使うことにしよう。

>>> hankei = 6356752

まず地球一周の長さを求めよう。演習の計算式は2 * pi * hankeiだね。これは39940650メートル。

>>> 2 * pi * hankei
39940650.76778445
>>> enshuu = _

次は1000メートル先ってのが角度で言うとどれくらいかっていうのを求める。0.009度だ。ちなみに単位にラジアンを使った方があとで便利なんでラジアンで求めておく。

>>> 360 * 1000 / enshuu 
0.009013373419803435
>>> 2 * pi * 1000 / enshuu 
0.00015731304288731102
>>> theta = _

さて、次は図のxの長さを求める。 (x + shintyou + hankei) * tan(theta) = x なので式を変形すると x = (shintyou + hankei) / (1 / tan(theta) - 1) だ。というわけでxは1000.158メートルだということがわかる。

>>> (shintyou + hankei) / (1 / tan(theta) - 1)
1000.1575033836971
>>> x = _

さて、それでは建物の高さ(takasa)を求めてみよう。大きな三角形の斜辺の長さは x / sin(theta) で、これは hankei + takasa だ。というわけで高さは1001.236メートル。地球が曲がっていないと思った時の1001メートルとの差は23.6センチ。割合にすれば10000分の2〜3ということになる。

>>> x / sin(theta)
6357753.236172293
>>> _ - hankei
1001.2361722933128
>>> takasa = _

ちなみに身長が2メートルの時の高さは1002.236メートル。目の高さの影響がほとんどないことがわかる。

>>> (2 + hankei) / (1 / tan(theta) - 1)
1000.1576607214926
>>> x = _
>>> x / sin(theta)
6357754.236329644
>>> _ - hankei
1002.2363296439871

概算

ちなみに僕の概算としては

  • 地球の円周は40000キロ
  • 半径はそれを2 * pi(およそ6)で割ったものだから、まあ6000キロぐらい
  • thetaは1/40000に2 * pi(およそ6)を掛けたもんだから1万分の1.5
  • thetaが小さい時、sin(theta)もtan(theta)もおよそtheta
  • thetaが小さい時、cos(theta)はおよそ 1 - theta ^ 2
  • ちなみにある値 v が小さい時、 1 / (1 - v) はおよそ 1 + v
  • 地球が丸いことによって地面が沈み込む距離(図中y)はhankei / cos(theta) - hankei、これはつまり hankei / (1 - theta ^ 2) - hankei で、 theta ^ 2 は小さいので hankei * (1 + theta ^ 2) - hankei になって、ようするに hankei * theta * thetaになる。theta * thetaがだいたい一億分の2だから6000キロを掛けると12センチぐらい。
  • 目の高さの1メートルがどう増えるか。これ同じく1メートルに一億分の2掛けた値なので小さいから無視。
  • 建物が斜めっていることでxが1キロからどれくらい増えるか。まじめに計算するの面倒だなぁ、だいたいオーダー的には1キロに tan(theta) 掛けたぐらいかなぁ、じゃあ15センチか。
  • 合計すると(27センチだと思うけどそんな正確に計算していないから)だいたい20〜30センチかなー

さっき計算した値と比べてみよう。

  • 地球の半径が40000000メートル→39940650.76778445、ほぼ同じ。
  • 半径6000キロぐらい→6356752、実際はそれより5%くらい大きい。
  • thetaは1万分の1.5→0.00015731304288731102、これも実際は5%ほど大きい。
  • thetaが小さい時、sin(theta)もtan(theta)もおよそtheta→正しい。
>>> theta
0.00015731304288731102
>>> sin(theta)
0.00015731304223846304
>>> tan(theta)
0.00015731304418500693
  • hankei / cos(theta) - hankeiはおよそhankei * theta * theta→おっと2倍間違えている。あ、そうか、cos(theta) はおよそ 1 - theta ^ 2 / 2 か。/ 2の事を忘れてた。
>>> hankei / cos(theta) - hankei
0.0786565225571394
>>> hankei * theta * theta
0.15731304288731104
  • yは12センチぐらい→正解は8センチぐらい
  • xが1キロから増えるのは15センチぐらい→1000.1576、実際は5%程度大きい。
  • 合計すると27センチ→正解は23センチ

とまあこんな感じ。

多分あとでこれを読んだ妻に「わかりにくい」ってダメ出しされるな…

追記まとめ

そうか、まとめがないからわかりにくいんだな。まとめ

Q「地球が曲がっているから正確な値は出ないじゃん?」
A「うん、そのとおり。まっすぐと仮定して計算しても正確な値にはならない。でも地球の曲がり具合は1キロ進んで8センチ下がる程度。1キロ先の1000メートルくらいの高さのものを測ったときで、曲がりの影響は23センチくらい。これを無視するかどうかは必要に応じてあなたが決めること」

次回予告「完全に球な地球に、完全に球なボールを置いたら、止まってるの?」