雷の音の速さ:アルケーを知りたい(431)

今回の話題は(A)物理学。

▼雷が光ってから音が届くまでの時間で、遠いか近いかの見当がつく。実際のところ、雷がゴロゴロ音が鳴る位置は、地上よりかなり高いから、温度の違い(
100m上昇すると温度が0.6℃低下する)が速度に影響する。そこで、地上の気温と雷の高度を入れると、その高度での音の速さを求めるコードを作ってみた。(ごちゃついているのは私の手際がよろしくないため)

temp = float(input('Temp: '))
height = float(input('Height: '))
temp2 = temp - height /100*0.6
oto_no_speed2 = 331.5 + (0.6*(temp2))
print('地上の温度が', temp, '℃のとき', '高度', height,'mの場所の温は',round(temp2, 2),'℃、音速は', round(oto_no_speed2, 2) '〔m/s〕')

地上の気温24℃、富士山の高さで実行すると
Temp: 24
Height: 3776
地上の温度が 24.0 ℃のとき 高度 3776.0 mの場所の温度は 1.34 ℃、音速は 332.31 〔m/s〕

▼問題は、雷が鳴っている場所の高さが分からないのでそれらしい結果が出ても実はアバウトなこと(笑)、その高度での音速が分かっても地上で何の役に立つのかという疑問があること(笑)。

▼そんなことより、高度が変われば温度も変わるので、音速も変わる。この計算を動的にやろうとすると難度が高い。できないので私の解決法は、中間地点の温度で計算してしまえ、というもの。当然、アバウトにアバウトが重なって精度なんてものはとっくになくなっている。

your_temp = float(input('Temp: '))
height = float(input('Height: '))
middle_height = height/2
temp2 = your_temp - middle_height/100*0.6
print(your_temp - height/100*0.6)  #念のため、入力した高度での温度を表示する
print(temp2) #これも念のため、中間地点の温度を表示する
oto_no_speed3 = 331.5 + 0.6*temp2
print('地上の温度が', your_temp, '℃のとき', '高度', height,'mから地上までの平均音速は', oto_no_speed3, '〔m/s〕')

気温24度、高度1万メートルで実行すると
Temp: 24
Height: 10000
-36.0
-6.0
地上の温度が 24.0 ℃のとき 高度 10000.0 mから地上までの平均音速は 327.9 〔m/s〕

▼分かったこと:100m上昇するごとに温度が0.6℃低下するので、空はとても寒い、ということ。音の速さより高いところに行くときは、温度対策のほうが重要である。

▼今日の人物:大気を調査するため、熱気球で高度5000メートルまで上昇したゲイ=リュサック(Joseph Louis Gay-Lussac, 1778 - 1850さん)。地上の気温が10℃としたとき、高度5000メートルの気温はマイナス20℃。パリ国立土木学校卒業。フランスの化学者、物理学者。シャルルの法則の発見者。弟子はリービッヒの最小律で名高いユストゥス・フォン・リービッヒさん(1803 - 1873)。

〔参考〕
有山智雄et al.『中学総合的研究 理科[四訂版]』旺文社。
平尾淳一『総合的研究 物理』旺文社。
https://en.wikipedia.org/wiki/Joseph_Louis_Gay-Lussac

コメント

このブログの人気の投稿

大伴旅人の万葉集459番歌~アルケーを知りたい(1092)

大伴旅人の万葉集876-879番歌~アルケーを知りたい(1117)

大伴旅人の万葉集577番歌~アルケーを知りたい(1097)