ニュートンのゆりかご 戻る
Collision Physics Simulator

ニュートンのゆりかご — 弾性衝突・運動量保存

球をドラッグして引き上げ、離すと弾性衝突の連鎖が始まる。重力・弦長・反発係数を変えてエネルギーの流れを体感しよう。

パラメータ設定
重力加速度 g 9.81 m/s²
弦の長さ L 1.0 m
反発係数 e 0.98
速度倍率 1.0×
プリセット
表示オプション

左端の球をドラッグして引き上げ、離してスタート

0.00
運動エネルギー J
0.00
位置エネルギー J
0.00
合計エネルギー J
周期 T (s)
エネルギー時刻歴

📐 物理モデル

  • 振り子運動: $\ddot{\theta}= -\dfrac{g}{L}\sin\theta$(Verlet積分)
  • 弾性衝突(等質量): $v_1' = e \cdot v_2,\; v_2' = e \cdot v_1$
  • 振り子周期: $T = 2\pi\sqrt{\dfrac{L}{g}}$
  • 運動量保存: $\sum m_i v_i = \text{const}$
CAEとの接点: 衝突シミュレーション(LS-DYNA・Abaqus/Explicit)の基礎。反発係数 e のモデル化は衝撃吸収材や衝突安全設計で必須の概念。 ボールミル・製造ラインの打刻プロセスも同様の接触力学で解析される。

ニュートンのゆりかごとは

🧑‍🎓
ニュートンのゆりかごって、端っこの球を1個引っ張って離すと、反対側の球が1個だけ飛び出す、あのデスクトイですよね。なんで真ん中の球は動かずに、端同士だけが動くんですか?
🎓
ざっくり言うと、運動量と運動エネルギーの両方が保存されるからだよ。等しい質量の球が完全弾性衝突(反発係数e=1)すると、ぶつかった球は止まり、その運動量とエネルギーが次の球に「そっくりそのまま」伝わるんだ。シミュレーターで「反発係数」のスライダーを1に保って、球を1個引いてみて。衝突が伝わっていく様子がよくわかるよ。
🧑‍🎓
え、そうなんですか!じゃあ、もし反発係数を1より小さくしたらどうなりますか?この「e」って何を表してるんですか?
🎓
実務ではe=1の完全弾性衝突はほとんどなくて、0.95〜0.99が多いね。eは衝突前後の相対速度の比で、1より小さいと非弾性衝突になる。つまり、衝突のたびに運動エネルギーが熱や音、変形に変わって失われるんだ。シミュレーターでeを0.8くらいに下げてみて。反対側の球の振れ幅がだんだん小さくなって、最終的に全部止まるのが観察できるはずだよ。
🧑‍🎓
なるほど!ところで、下にある「重力」と「弦の長さ」のパラメータを変えると、動きの速さが変わるみたいです。これは何が関係してるんですか?
🎓
それは振り子の周期が変わるからだ。例えば「弦の長さ」を長くすると、振り子がゆっくり大きく振れる。逆に「重力」を小さくすると(月面を想定)、これも周期が長くなって動きがのろのろになる。シミュレーターで「弦の長さ」をいじると、グラフの振動周期がどう変わるか確認してみよう。CAEで振動解析する時も、この周期は基本中の基本なんだ。

物理モデルと主要な数式

各球は単振り子として運動します。角度の時間変化(角加速度)は、重力と張力の釣り合いから導かれます。シミュレーターではこの微分方程式を「Verlet積分」という数値解法で解いています。

$$ \ddot{\theta}= -\dfrac{g}{L}\sin\theta $$

$\theta$: 振り子の角度 [rad], $g$: 重力加速度 [m/s²], $L$: 弦の長さ [m]

球と球が衝突する際の速度変化を決定する式です。等しい質量の球が正面衝突する場合、運動量保存則と反発係数の定義からこの形が導かれます。

$$ v_1' = e \cdot v_2, \quad v_2' = e \cdot v_1 $$

$v_1, v_2$: 衝突前の速度, $v_1', v_2'$: 衝突後の速度, $e$: 反発係数 (0 ≤ e ≤ 1)。e=1の時、速度が完全に入れ替わります。

実世界での応用

衝突安全設計(自動車・鉄道):車両の衝突シミュレーション(LS-DYNAなど)では、反発係数eは衝撃吸収材の特性をモデル化する重要なパラメータです。eの値がエネルギー吸収量(=乗員への衝撃)を決定します。

製造プロセス(ボールミル・打刻):粉砕機や金属加工の打撃プロセスでは、媒体(ボールやハンマー)同士の衝突が製品品質を左右します。衝突時のエネルギー伝達効率は、まさにこのツールで学ぶ物理で解析されます。

スポーツ用具の開発:ゴルフクラブのヘッドとボール、テニスラケットとボールなどの衝突も、反発係数(COR)が性能の鍵を握ります。規格で上限値が定められているものもあります。

宇宙開発(ドッキング・サンプルリターン):宇宙機のドッキングや、小惑星探査機のサンプル採取時の衝突は、極めて低い相対速度で行われます。非弾性衝突(e<1)を利用して運動エネルギーを消散させる設計が重要です。

よくある誤解と注意点

まず、「球が5個あるから、端の1個を引くと反対側も1個だけ動く」と思い込んでいない? 実は、これは初期条件が完全に対称で、かつ完全弾性衝突(e=1)という理想的な場合だけの話なんだ。例えば、最初に2個の球を同時に引っ張って離すと、反対側からは2個の球が飛び出す。これは運動量とエネルギーの保存から必然的に決まるんだよ。シミュレーターで試してみて。次に、パラメータ設定の落とし穴。 「重力」を0に設定すると、球は衝突後、一直線に等速運動して戻ってこなくなるぞ。これは振り子ではなくなってしまうから。実務でパラメータを極端な値にすると、モデルが成り立たなくなる典型例だね。最後に、「反発係数eは材質だけで決まる」という誤解。 実際には衝突速度や温度、表面状態でも変わる。CAEで衝突解析する時は、eを定数とせず、速度に依存するモデルを使うことも多いんだ。このツールでeを変えた時の挙動の変化を、単なる「減衰」ではなく「エネルギー損失の割合」と結びつけて観察するのがコツだ。

関連する工学分野

このシンプルなシミュレーターの背後にある計算は、多体動力学(Multibody Dynamics) という分野の基礎そのものだ。例えば自動車のサスペンションやロボットアームの関節など、複数の剛体がヒンジで繋がり、互いに干渉し合う系の運動を解析するんだ。また、球の衝突計算は、離散要素法(DEM: Discrete Element Method) の核心部分。鉱石の粉砕プロセスや、穀物のサイロ内の流れ、薬品の混合状態をシミュレーションするのに使われる高度な技術だ。さらに、振り子の運動方程式を数値的に解く「Verlet積分」は、分子動力学法(MD法) でも原子の軌道計算に使われる基本的なアルゴリズム。つまり、おもちゃのシミュレーションから、ナノスケールの物質シミュレーションまで、根本的な考え方は繋がっているんだ。衝突安全設計(クラッシュシミュレーション)では、ここで扱ったような「点」の衝突ではなく、「面」同士の複雑な接触(コンタクト解析)を扱うが、その出発点はここにあるんだよ。

発展的な学習のために

まず次のステップは、「保存則」を数式で追いかけることだ。このツールでは等質量だったが、質量が異なる2球(例えばm1=1kg, m2=3kg)の正面弾性衝突を、運動量保存則と運動エネルギー保存則の連立方程式から解いてみよう。衝突後の速度がどうなるか導けると、理解が一気に深まる。次に、振り子の微分方程式の数学的背景を学ぼう。$$ \ddot{\theta}= -\dfrac{g}{L}\sin\theta $$ この式は、角度が小さい時(sinθ≒θ)に「単振動」の式に近似できる。これが線形化の第一歩だ。シミュレーターで「弦の長さ」を変えた時にグラフの周期がどう変わるか、近似式 $$ T = 2\pi \sqrt{L/g} $$ と比較してみるのが良い練習になる。さらに学びたいなら、「角運動量保存」や「非中心衝突(斜め衝突)」 に進むことをお勧めする。ビリヤードの球の衝突や、ボールが壁に斜めに当たる現象は、こちらの方が現実的だ。このツールで基礎を体感したら、次は2次元平面で球を動かせる、より高度なシミュレーターに挑戦してみよう。