背後的物理
軌道沒有摩擦,兩車碰撞時彼此的作用力是內力,系統在水平方向不受外力,所以總動量守恆:
\[ m_1 v_1 + m_2 v_2 = m_1 v_1' + m_2 v_2' \]
只靠動量守恆還解不出兩個未知數 \(v_1'\)、\(v_2'\)。另一個條件由恢復係數 \(e\) 描述:碰撞後「分離的相對速度」與碰撞前「接近的相對速度」之比。
\[ e = -\frac{v_1' - v_2'}{v_1 - v_2} \qquad 0 \le e \le 1 \]
\(e = 1\) 為彈性碰撞(動能守恆),\(e = 0\) 為完全非彈性碰撞(兩車黏在一起),\(0 < e < 1\) 為非彈性碰撞。兩式聯立,得到碰撞後的速度:
\[ v_1' = \frac{m_1 v_1 + m_2 v_2 - e\,m_2 (v_1 - v_2)}{m_1 + m_2} \qquad v_2' = \frac{m_1 v_1 + m_2 v_2 + e\,m_1 (v_1 - v_2)}{m_1 + m_2} \]
代入 \(e = 0\),兩車以共同速度前進,這正是質心速度:
\[ v_1' = v_2' = v_{\mathrm{cm}} = \frac{m_1 v_1 + m_2 v_2}{m_1 + m_2} \]
碰撞損失的動能(轉為熱、聲音與車體形變)可寫成約化質量 \(\mu\) 與相對速度的形式:
\[ \Delta K = K - K' = \frac{1}{2}\,\mu\,(1 - e^2)\,(v_1 - v_2)^2 \qquad \mu = \frac{m_1 m_2}{m_1 + m_2} \]
觀察重點
- 總動量永遠不變:把 \(e\) 從 1 拉到 0,長條圖中「總和」的動量長條始終一樣長;但 \(e < 1\) 時總動能的長條在碰撞瞬間變短。損失的動能和 \(1 - e^2\) 成正比。
- 作用力與反作用力:比較表中 \(\Delta p_1\) 與 \(\Delta p_2\) 大小相等、正負相反,因為兩車受到的衝量 \(J = F\,\Delta t\) 大小相等、方向相反(牛頓第三運動定律)。
- 等質量彈性碰撞會交換速度:按「等質量彈性」,原本靜止的車 2 帶走車 1 全部的速度,車 1 停下來。
- 重撞輕:重車幾乎不減速,輕車以接近 \(2v_1\) 的速度彈出。輕撞重:輕車反彈,重車只得到很小的速度。
- 質心做等速度運動:地面上每 0.25 s 留下一個質心位置的標記,碰撞前後間距完全相同。勾選「以質心為參考系」,質心靜止不動,兩車在碰撞前的動量大小相等、方向相反;碰撞後各自反向,速率變為原來的 \(e\) 倍。
- 試試看把 \(v_1\) 設得比 \(v_2\) 小(例如兩車都向右,但後面的車 1 比較慢):兩車不會接近,也就不會碰撞。
加上彈簧:看見碰撞的過程
前面把碰撞當成瞬間完成。勾選「加彈簧」後,車 1 前端裝一條理想彈簧(質量不計、遵守虎克定律 \(F = kx\)),碰撞變成一段看得見的過程。兩車受到的彈力大小相等、方向相反,由衝量–動量定理:
\[ J = \int F\,dt = \Delta p_2 = -\Delta p_1 \]
在質心參考系中,壓縮量 \(x\) 滿足 \(\mu\,\ddot{x} = -kx\),是角頻率 \(\omega = \sqrt{k/\mu}\) 的簡諧運動;設接近的相對速度 \(u = v_1 - v_2\):
\[ x(t) = \frac{u}{\omega}\sin\omega t \qquad F(t) = kx(t) \]
\[ \Delta t = \frac{\pi}{\omega} = \pi\sqrt{\frac{\mu}{k}} \qquad x_{\max} = u\sqrt{\frac{\mu}{k}} \qquad F_{\max} = u\sqrt{k\mu} \]
接觸期間動能與彈性位能互相轉換,總和不變;彈簧放開時位能全部還給兩車,所以結果就是 \(e = 1\) 的彈性碰撞。彈力–時間圖是半個正弦,面積 \(\int F\,dt = 2\mu u\) 與 \(k\) 無關。
\[ K_1 + K_2 + \tfrac{1}{2}kx^2 = \text{constant} \qquad U_{\max} = \tfrac{1}{2}k\,x_{\max}^2 = \tfrac{1}{2}\mu u^2 \]
最大壓縮的瞬間,兩車的速度相同,都等於 \(v_{\mathrm{cm}}\)——正是完全非彈性碰撞(\(e = 0\))後的狀態;這時彈簧儲存的位能 \(\tfrac{1}{2}\mu u^2\) 恰好等於完全非彈性碰撞損失的動能。差別在於彈簧會把能量還回來,而黏在一起的兩車不會。
- 換硬一點的彈簧(\(k\) 變大):接觸時間變短、最大彈力變大,但彈力–時間圖下的面積(衝量)一樣,碰撞後的速度也一樣。這就是安全氣囊、緩衝墊的原理:同樣的動量變化,拉長作用時間就能降低最大力。
- 看最大壓縮的瞬間:用慢動作播放,彈力–時間圖到達頂點時,「即時數值」中兩車速度相同、都等於質心速度,總動能最小,彈性位能最大。
- 能量長條圖:接觸期間「彈簧 U」的長條長出來、兩車動能的長條變短,但「總和」\(K_1 + K_2 + U\) 始終不變。
模擬方法
- 碰撞視為瞬間完成。碰撞前後兩車各自做等速度運動,所以任何時刻的位置與速度都直接由解析式算出,沒有數值積分的累積誤差;動畫的每一格只是把時間往前推。
- 車 1 在左、車 2 在右,只有 \(v_1 > v_2\) 時兩車才會接近;接觸時刻 \(t_c = d/(v_1 - v_2)\),其中 \(d\) 是兩車之間的空隙。
- 為了讓碰撞發生在畫面中,程式會依速度自動安排兩車的起始位置,讓碰撞點落在軌道中央附近。
- 車子的大小隨質量略為增加,只是為了容易辨認輕重,不影響計算(計算時把車子當成質點,只用到車長來決定接觸時刻)。
- 加彈簧時,彈簧視為理想彈簧:質量不計、遵守虎克定律,裝在車 1 前端;彈簧尖端碰到車 2 時開始接觸。接觸期間質心照樣等速度前進,相對運動用簡諧運動的解析式 \(x(t) = (u/\omega)\sin\omega t\) 計算,所以接觸前、中、後任何時刻都精確,沒有數值積分。若最大壓縮量會超過自然長度的 80%,程式會把該次的自然長度加長為 \(x_{\max}/0.8\),讓彈簧不會壓到底(壓到底就不再是理想彈簧)。彈力箭頭的長度與彈力成正比,以該次的最大彈力為滿格。
- 動畫的每一格最多前進 \(1/30\ \mathrm{s}\)(慢動作時再乘以 0.25),切換分頁回來或裝置變慢時,動畫不會突然跳到後面。
參考資料