振り子の波のシミュレーション

長さの違う24個の振り子を同時に振り出すと波のような模様が形を変えて現れる
ペンデュラム・ウェーブ (pendulum wave) という
ここでは一番長い振り子が、100秒で50回往復、
次は51回、次は52回…と一回づつ増える設定にした。
100秒後に全部の振り子が最初に位置に戻る。

huriko

それぞれの糸の長さを計算する。PIは円周率。
糸の長さL=9.8*(100秒/(2*PI*回数)2乗
計算した糸の長さはこんな感じ(↓)
0.9929475996949104, 0.9543902342319399, 0.9180358724989923, 0.8837198288491549, 0.8512925237439218, 0.8206178509875292, 0.7915717472057642, 0.7640409354377582, 0.7379218190360511, 0.7131195056700016, 0.6895469442325768, 0.6671241599670185, 0.6457775752438283, 0.6254394051996159, 0.606047118954413, 0.5875429583993552, 0.5698735076302286, 0.5529893070254569, 0.5368445067554661, 0.521396555185313...... 

振り子の周期は 2*PI*(L/9.8)**0.5
最初の角度をradとして、時間と振り子の角度θの関係は
θ=rad*cos(t*(9.8/L)**0.5)
この時のX・Y座標は:
X = L*sinθ
Y = -L*cosθ
最初の角度rad=20度としてグラフを書いてみた。
プログラムはpythonで書いた。



前のページへ戻る