N重振り子シミュレータ

本シミュレータは、HTML5(canvas要素)+WebGL(Three.jsライブラリ)を用いて、プラグインなし実行することができます。
ただし、クライアントサイドのブラウザとグラフィックカードが、HTML5とWebGLに対応している必要があります。

【作者】藤原 亮
【解説ページ】N重振り子のアルゴリズム

本シミュレータの特徴

(1)直交座標系で記述したN重振子を速度Verletの方法を用いてJavascriptで計算しています
(2)計算結果をリアルタイムにcanvas要素にWebGLを用いて描画しています (canvas要素はjavascriptで動的に生成されています)
(3)マウスドラックとマウスホイールで視点を移動することができます
(4)おもりの速度が緑色の線で表示されます
(5)おもりの個数Nを指定し,「START」ボタンを押すと、シミュレーションを開始します
(6)「pause」ボタンを押すと、仮想物理実験室の時間がストップします
(7)「set」ボタンを押し、「pause」ボタンを押すと、初期状態設定モードになります
(8)初期状態設定モードのときに、数字が書いてあるボタンを押すとおもりの質量m、おもりの位置(x, y, z)と おもりの速度(vx, vy, vz)を変えることができます。
(9)拘束と矛盾する初速度を与えると発散します
(10)系のエネルギーや棒の長さは本来一定ですが、数値誤差により少しずつずれていきます。
(11)ページを更新すると、おもりの個数Nの設定からやり直すことができます。
【参考ページ】 HTML5による物理シミュレーション環境の構築 〜WebGLライブラリThree.js 入門(1/3)〜