スポンサーリンク

二重振り子シミュレータ in Python

プログラミング
0
(0)

二重振り子とは、1つの振り子の先にもう1つ振り子を連結したものである。1つの振り子は周期Tの規則的な運動をするが、二重振り子は非周期的で極めて複雑な運動をすることが知られている。これは身近な道具から観察できるカオスの代表例であり、カオス理論の初学者に実演してみせるには最適な実験である。

今回、この二重振り子をコンピュータ上で表現するためのコードを作成した。実験の振り子は糸が剛体である場合を想定し、質点はそれぞれの糸の先端に存在している。

以下、変数の一覧

g ... 重力加速度

m1 ... 質点1の質量

m2 ... 質点2の質量

l1 ... 糸1の長さ

l2 ... 糸2の長さ

dt ... 微小時間間隔

theta1 ... 糸1がy軸となす角度(初期角度)

theta2 ... 糸2がy軸となす角度(初期角度)

v_theta1 ... 糸1がy軸となす角速度(初速度)

v_theta2 ... 糸2がy軸となす角速度(初速度)

起動方法は、コマンドラインから

python double_pendulum.py none

と呼び出す。引数noneをtrajectoryに変更すると、質点2の軌跡を表示する。

この記事は役に立ちましたか?

星をクリックして、評価してください!

現在の平均評価 0 / 5. 評価した人数: 0

お役に立てたようで嬉しいです!

著者SNSをフォローしていただけると、更新情報が手に入ります。

記事がご期待に沿えなかったようで、申し訳ありません…。

是非、改善点を教えてください!

この記事において改善すべき点や、追加で知りたかったことは何ですか?

コメント