📋 PROBLEM SETUP ── 問題の設定
▌ 初期状態:物体Aが速度 v₀ で静止中の物体Bに向かって接近
v₀ →
A
質量m
質量m
静止
B
質量M
質量M
※ 物体Bは軽いバネ(バネ定数 k)を壁側に向けて持っている
※ AとBは同一直線上を運動 / 床との摩擦・空気抵抗なし / A・B間の衝突なし(バネを介して力を伝える)
※ AとBは同一直線上を運動 / 床との摩擦・空気抵抗なし / A・B間の衝突なし(バネを介して力を伝える)
▌ 与えられた量
物体A:質量 m
物体B:質量 M(M > m を想定)
バネ定数:k
A の初速:v₀(右向き正)
B の初速:0(静止)
物体B:質量 M(M > m を想定)
バネ定数:k
A の初速:v₀(右向き正)
B の初速:0(静止)
▌ 問われること
(1) AがBのバネに触れてから離れるまでの間の
運動量保存の確認(式を示せ)
(2) 同じ間のエネルギー保存の確認(式を示せ)
(3) 分離直後のA・Bの速度
(4) B が壁で反射し再度Aに近づく場合の考察
運動量保存の確認(式を示せ)
(2) 同じ間のエネルギー保存の確認(式を示せ)
(3) 分離直後のA・Bの速度
(4) B が壁で反射し再度Aに近づく場合の考察
① なぜ「物議を醸した」のか?
問題の背景
🔥 受験生・指導者が驚いた3つの理由
① 電通大のイメージを超えた計算量
電通大物理は例年「基礎〜標準レベル」が定評。しかし2023後期は弾性衝突後の速度導出 + 保存則の証明という二段構え。計算ミスで大崩れするリスクが高かった。
② 「保存則が成り立つことを示せ」という異例の設問
通常は「保存則を使って解け」が普通。しかし本問は「なぜ成り立つか」を微積・運動方程式から導くことを要求。本質的理解がないと手が出ない。
③ バネを介した衝突という設定の難しさ
通常の「直接衝突 → 反発係数」と違い、バネ介在型は弾性衝突と同等(e=1)になる理由が直感的に分かりにくい。これを証明的に示す必要がある。
④ 後期試験という特殊性
後期日程は前期の滑り止め的な位置づけが多い中、明らかに前期より難しい問題が出題されたことでSNS等で話題に。「電通大を舐めていた」という声も。
② 運動量保存が成り立つことの丁寧な証明
核心①
📐
運動方程式から積分で導く
バネが圧縮された状態でAとBが相互作用している時刻 t の瞬間を考える。
▌ 各物体の運動方程式
物体A:m · dv_A/dt = −f(t)
物体B:M · dv_B/dt = +f(t)
物体B:M · dv_B/dt = +f(t)
f(t) = バネの弾性力(内力)。作用反作用で逆符号。
▌ 2式を足すと内力が消える
m · dv_A/dt + M · dv_B/dt = 0
d(m·v_A + M·v_B) / dt = 0
d(m·v_A + M·v_B) / dt = 0
全運動量の時間微分がゼロ → 全運動量は時間的に一定!
▌ 積分して保存則を得る
∫d(m·v_A + M·v_B) = ∫0 dt
m·v_A + M·v_B = const.
接触前:m·v₀ + M·0 = m·v₀
分離後:m·v_A' + M·v_B' = m·v₀
m·v_A + M·v_B = const.
接触前:m·v₀ + M·0 = m·v₀
分離後:m·v_A' + M·v_B' = m·v₀
✅
運動量保存 ── 成立の理由
外力(床の垂直抗力・重力)は水平方向に仕事をしない。バネ力は内力なので全系の運動量変化に寄与しない。よって水平方向の全運動量は保存する。
m·v₀ = m·v_A' + M·v_B' …★
⚡
重心速度で見ると一目瞭然
▌ 重心速度は時間不変
v_G = (m·v_A + M·v_B) / (m+M)
d(v_G)/dt = d/dt[(m·v_A+M·v_B)/(m+M)]
= 0 ← 全運動量の微分がゼロ
d(v_G)/dt = d/dt[(m·v_A+M·v_B)/(m+M)]
= 0 ← 全運動量の微分がゼロ
重心は等速直線運動(または静止)を維持する。
▌ 数値で確認
v_G = m·v₀ / (m+M) (衝突前)
v_G = (m·v_A' + M·v_B') / (m+M) (分離後)
→ 両者は等しい ✓
v_G = (m·v_A' + M·v_B') / (m+M) (分離後)
→ 両者は等しい ✓
POINT — 外力チェックリスト
水平外力ゼロの確認が必須
重力:鉛直方向のみ → 水平に無関係 ✓
垂直抗力:鉛直方向のみ → 水平に無関係 ✓
摩擦力:問題文「なし」 ✓
壁からの力:Bに作用するが…Bが壁から離れている間は無関係 ✓
垂直抗力:鉛直方向のみ → 水平に無関係 ✓
摩擦力:問題文「なし」 ✓
壁からの力:Bに作用するが…Bが壁から離れている間は無関係 ✓
注意 — 壁との接触中は?
壁が力を及ぼす間は系全体の運動量は保存しない
Bが壁と接している間、壁から外力を受ける。この期間は壁を含めた系で考える必要あり。
③ エネルギー保存が成り立つことの丁寧な証明
核心②
⚙️
運動方程式を「速度」で積分する
エネルギー保存は「運動方程式 × 速度 を時間積分」することで自然に導かれる。
▌ Aの方程式 × v_A で積分
m·(dv_A/dt)·v_A = −f(t)·v_A
d(½m·v_A²)/dt = −f(t)·v_A
d(½m·v_A²)/dt = −f(t)·v_A
▌ Bの方程式 × v_B で積分
M·(dv_B/dt)·v_B = +f(t)·v_B
d(½M·v_B²)/dt = +f(t)·v_B
d(½M·v_B²)/dt = +f(t)·v_B
▌ 2式を足す
d(½m·v_A² + ½M·v_B²)/dt
= f(t)·(v_B − v_A)
右辺 = f(t)·v_rel
= f(t)·(v_B − v_A)
右辺 = f(t)·v_rel
v_rel = v_B − v_A は相対速度。バネ力 f(t) = k·Δx と相対変位 Δx の変化率がまさに v_rel。
▌ バネの弾性エネルギーを含めると
f(t)·v_rel = k·Δx·(dΔx/dt) = d(½k·Δx²)/dt
∴ d(½mv_A²+½Mv_B²+½k·Δx²)/dt = 0
∴ d(½mv_A²+½Mv_B²+½k·Δx²)/dt = 0
全力学的エネルギー(運動+弾性)の時間微分がゼロ!
🔍
接触前後での検算
▌ 接触前(バネ自然長:Δx = 0)
K_before = ½·m·v₀² + ½·M·0² + ½k·0²
= ½m·v₀²
= ½m·v₀²
▌ 最大圧縮時(v_rel = 0 → A,B同速 V_G)
V_G = m·v₀ / (m+M)
K_max_comp = ½(m+M)·V_G² + ½k·Δx_max²
→ ½m·v₀² = ½(m+M)·V_G² + ½k·Δx_max²
K_max_comp = ½(m+M)·V_G² + ½k·Δx_max²
→ ½m·v₀² = ½(m+M)·V_G² + ½k·Δx_max²
最大圧縮でバネに蓄えられたエネルギーが計算できる。
▌ 分離後(再びΔx = 0)
K_after = ½·m·v_A'² + ½·M·v_B'² + 0
= ½m·v₀² ← 接触前と等しい!
= ½m·v₀² ← 接触前と等しい!
✅
エネルギー保存 ── 成立の理由
バネは保存力(弾性力)のみを及ぼす。分離時にバネは自然長に戻るためΔx=0。弾性ポテンシャルエネルギーは全て運動エネルギーに変換されて返ってくる。摩擦なし = 非保存力の仕事なし。
½m·v₀² = ½m·v_A'² + ½M·v_B'² …★★
⭐ バネ衝突 = 弾性衝突(e=1)の理由
直接衝突と違いバネ介在型では変形・発熱なし。バネが蓄えたエネルギーは全て返ってくる。これが実質的にe=1の弾性衝突と等価な理由。
④ 分離後の速度を求める ── 計算の本丸
計算激ヤバ!
🧮
連立方程式を解く(弾性衝突公式)
保存則2本を連立して未知数 v_A'、v_B' を求める。この計算が「激ヤバ」の正体。
── ★ 運動量保存(再掲)
m·v_A' + M·v_B' = m·v₀ …(1)
── ★★ エネルギー保存(再掲)
½m·v_A'² + ½M·v_B'² = ½m·v₀² …(2)
── (1) から v_A' を v_B' で表す
v_A' = v₀ − (M/m)·v_B' …(1')
── (1') を (2) に代入して整理
m·(v₀ − M/m·v_B')² + M·v_B'² = m·v₀²
m·v₀² − 2M·v₀·v_B' + M²/m·v_B'² + M·v_B'² = m·v₀²
−2M·v₀·v_B' + M(M/m + 1)·v_B'² = 0
M·v_B'·[−2v₀ + (M+m)/m·v_B'] = 0
── v_B' ≠ 0 の解を採用(v_B' = 0 は衝突なしの自明解)
v_B' = 2m·v₀ / (m+M) …(答1)
── (答1) を (1') に代入
v_A' = v₀ − (M/m)·2m·v₀/(m+M)
= v₀·[1 − 2M/(m+M)]
= v₀·(m+M−2M)/(m+M)
v_A' = (m−M)·v₀ / (m+M) …(答2)
⚠️
M > m のとき v_A' < 0 に注意!
(m−M) が負になるため、Aは衝突後に左向きに跳ね返される。「速さ」と「速度」を区別して答えること。符号ミスが「計算激ヤバ」の最大の落とし穴。
✅
答えの検証(保存則で逆チェック)
求めた v_A', v_B' が保存則を満たすか必ず確認する。
── 運動量の検算
m·v_A' + M·v_B'
= m·(m−M)v₀/(m+M) + M·2m·v₀/(m+M)
= m·v₀·[(m−M) + 2M] / (m+M)
= m·v₀·(m+M) / (m+M)
= m·v₀ ✓ 運動量保存 OK
── エネルギーの検算
½m·v_A'² + ½M·v_B'²
= ½m·(m−M)²v₀²/(m+M)² + ½M·4m²v₀²/(m+M)²
= ½m·v₀²/(m+M)² · [(m−M)² + 4mM]
= ½m·v₀²/(m+M)² · [m²−2mM+M²+4mM]
= ½m·v₀²/(m+M)² · [m²+2mM+M²]
= ½m·v₀²/(m+M)² · (m+M)²
= ½m·v₀² ✓ エネルギー保存 OK ← ここが「丁寧に確かめる」の肝!
⭐ (m−M)² + 4mM = (m+M)² の恒等式
展開すると m²−2mM+M²+4mM = m²+2mM+M² = (m+M)²。
この変形がエネルギー検算の核心。見えた瞬間「美しい!」となる。
この変形がエネルギー検算の核心。見えた瞬間「美しい!」となる。
⑤ 問題の多フェーズ展開 ── 全体の流れ
時系列整理
🗓️
フェーズ別 状態まとめ
0
初期状態
t = 0 前
A:速度 v₀(右向き)
B:速度 0(静止)
バネ:自然長 P_total = m·v₀ K_total = ½m·v₀²
B:速度 0(静止)
バネ:自然長 P_total = m·v₀ K_total = ½m·v₀²
1
AがBのバネに接触 → 圧縮開始
接触フェーズ
バネが圧縮 → A に左向き弾性力、B に右向き弾性力
A 減速、B 加速。運動量保存・エネルギー保存(弾性含む)が成立
A 減速、B 加速。運動量保存・エネルギー保存(弾性含む)が成立
この間が「丁寧に確かめる」対象。上記②③の証明がここに対応。
2
最大圧縮(A・B の相対速度 = 0)
ターニングポイント
v_A = v_B = V_G = m·v₀ / (m+M)
── バネの最大圧縮量 Δx_max を求めると:
½k·Δx_max² = ½m·v₀² − ½(m+M)·V_G²
= ½·mM/(m+M)·v₀² ← 換算質量 μ の寄与!
Δx_max = v₀·√[mM / {k(m+M)}]
3
バネが伸び戻る → A・B 分離
分離フェーズ
── 分離直後の速度(④で導出)
v_A' = (m−M)·v₀ / (m+M)
v_B' = 2m·v₀ / (m+M)
── M > m のとき:v_A' < 0 → Aは左に、Bは右に
── m = M のとき:v_A' = 0、v_B' = v₀ → 速度が完全入れ替わり!
4
Bが壁に衝突・反射
壁反射フェーズ
壁との衝突が弾性(e=1)の場合:
B の速度 v_B' → −v_B'(符号反転)
B は左向きに 2m·v₀/(m+M) の速さで戻る
B の速度 v_B' → −v_B'(符号反転)
B は左向きに 2m·v₀/(m+M) の速さで戻る
壁に外力(法線力)を受けるためBの運動量は変化する。壁を含めた系で考えること。
🤔
Aに再び追いつくか?
v_A' が左向き(M > m)かつ B が左向きで戻る場合、A と B が再衝突するかどうかを相対速度で判断する。この考察が問題の後半部分。
5
第2回衝突(M > m の場合)
最終フェーズ
第2回衝突後も弾性衝突の公式が使える:
v_A'' = [ (m−M)·v_A' + 2M·(−v_B') ] / (m+M)
v_B'' = [ 2m·v_A' + (M−m)·(−v_B') ] / (m+M)
m = M の特殊ケース:
第1回でAが停止 → Bが壁反射で戻る → 再びA静止・B静止?
v_A'' = [ (m−M)·v_A' + 2M·(−v_B') ] / (m+M)
v_B'' = [ 2m·v_A' + (M−m)·(−v_B') ] / (m+M)
m = M の特殊ケース:
第1回でAが停止 → Bが壁反射で戻る → 再びA静止・B静止?
m = M のとき、第1回でA停止・B速度v₀。壁で反射してv₀でAに戻り、Aがv₀で左に、Bが停止。Bは再び右に動かない。面白い振る舞い!
⑥ 「計算激ヤバ!」の正体 ── 詰まるポイント TOP6
失点防止
💥
ポイント①
連立方程式の因数分解
連立方程式の因数分解
詰まる場所
M·v_B'·[…] = 0 の形に持ち込む
v_B'(v_B' − 〇) = 0 の形に因数分解できるかが鍵。v_B'=0を捨てる判断も必要。
📏
ポイント②
符号管理(v_A' の正負)
符号管理(v_A' の正負)
詰まる場所
v_A' = (m−M)v₀/(m+M) の符号判定
M > m → 負。問題が「速度」を聞いているか「速さ」を聞いているかで答えが変わる。要注意!
🔢
ポイント③
恒等式の展開
恒等式の展開
詰まる場所
(m−M)²+4mM = (m+M)² の確認
検算の必須ステップ。この恒等式に気づかないと「エネルギーが合わない!」とパニックになる。
🌀
ポイント④
最大圧縮量 Δx_max
最大圧縮量 Δx_max
詰まる場所
½k·Δx_max² = ½μ·v₀²(相対運動視点)
換算質量 μ=mM/(m+M) が自然に登場する。知らないと遠回りな計算になる。
🪞
ポイント⑤
壁反射後の扱い
壁反射後の扱い
詰まる場所
「壁で反射」時に運動量保存が使えない
壁は外力を与える存在。Bの速度は反転するが、「A+B系」の運動量は保存しない。壁を含めた系を考える。
🎯
ポイント⑥
「丁寧に示せ」の答案作法
「丁寧に示せ」の答案作法
詰まる場所
運動方程式 → 積分 → 保存則という流れを書く
「保存則を使って解く」ではなく「保存則が成り立つことを運動方程式から示す」。この記述の流れが採点の核心。
⑦ 物理の本質:なぜバネ衝突は弾性衝突と等価か
深掘り
🧪
直接衝突 vs バネ衝突の比較
| 比較項目 | 直接衝突(反発係数e) | バネ衝突 |
|---|---|---|
| エネルギー損失 | e < 1 なら損失あり(熱・音) | なし(バネに蓄積→全解放) |
| 反発係数 | 設定による(0 ≤ e ≤ 1) | 常に e = 1 |
| 接触時間 | 極短(力積で近似) | 有限(SHMの半周期 π√(μ/k)) |
| 速度変化の対称性 | e=1のとき対称 | 常に対称(重心系で速度反転) |
⭐ バネ接触時間 = SHM 半周期
重心系で見るとバネ−換算質量系のSHMになる。接触時間は半周期 = π√(μ/k)。これが長いほど接触中に「ゆっくり」力を伝える。
🌐
重心系で見ると美しい
▌ 重心系(cm frame)でのAの速度
u_A = v_A − v_G = v₀ − m·v₀/(m+M)
= M·v₀ / (m+M) (接触前)
u_A' = v_A' − v_G = (m−M)v₀/(m+M) − m·v₀/(m+M)
= −M·v₀ / (m+M) (分離後)
= M·v₀ / (m+M) (接触前)
u_A' = v_A' − v_G = (m−M)v₀/(m+M) − m·v₀/(m+M)
= −M·v₀ / (m+M) (分離後)
重心系でAの速度が「符号反転」しただけ!バネが伸縮して全エネルギーを返す = 重心系で速度が鏡映反転。
▌ 重心系(cm frame)でのBの速度
u_B = v_B − v_G = 0 − m·v₀/(m+M)
= −m·v₀ / (m+M) (接触前)
u_B' = v_B' − v_G = 2m·v₀/(m+M) − m·v₀/(m+M)
= +m·v₀ / (m+M) (分離後)
= −m·v₀ / (m+M) (接触前)
u_B' = v_B' − v_G = 2m·v₀/(m+M) − m·v₀/(m+M)
= +m·v₀ / (m+M) (分離後)
BもCM系で速度反転。重心系で見れば「2体がそれぞれ単純に跳ね返る」だけ!
✨
重心系の美しさ
重心系では「A・Bがそれぞれ逆向きに飛び去る → 逆向きに戻ってくる → 元の逆向きに飛び去る」という完全な鏡像対称運動。これが弾性衝突の本質。
電通大2023後期 二体問題 ── この問題から学べること
📐
保存則は「証明するもの」でもある
「使う」だけでなく「なぜ成り立つか」を運動方程式から導く力が問われた。微積物理の本質。
🧮
計算の激ヤバさの正体は「恒等式」
(m−M)²+4mM=(m+M)² に気づけるか。気づければスッキリ、気づかなければ無限迷宮。
⚖️
バネ衝突 = 弾性衝突(e=1)は証明できる
「バネは保存力 → 弾性エネルギーが全て戻る → e=1」という論理の流れを答案で示す。
🌐
重心系で見れば全ての衝突は「速度反転」
弾性衝突を重心系で見ると単純。実験室系の複雑さは座標変換の産物に過ぎない。
🎯
記述の「丁寧さ」が得点を分ける
電通大は記述式。運動方程式 → 積分 → 保存則 という論理ステップを省略せずに書ける練習を。
🔮
換算質量が Δx_max に自然登場する
最大圧縮量の式に μ=mM/(m+M) が現れる。二体問題の深い構造と直結している。