反発係数

2023/11/16(木)
反発係数
 
(coefficient of restitution)
 
球同士の跳ね返り(rebound)
 
■ 導出
▼ 定義
大文字(太字)はベクトル
右下添字は球番号
 
e :反発係数(衝突面に垂直)
u :減衰割合(衝突面に水平)
Pi:球の位置
mi:球の質量
Vi:球の速度
N :衝突面の法線
Ti:衝突面の接線
vi:衝突面に垂直方向の速度
ui:衝突面に水平方向の速度
' :衝突後
 
uは回転や摩擦力などを無視した挙動の近似
 
▼ 垂直成分と水平成分


 
 
 
 


 
図1. 垂直成分と水平成分の取り出し方
 
▼ 衝突面に垂直な成分
m1v1 + m2v2 = m1v1'+ m2v2'  … 運動量保存則
e = -(v1'- v2')/(v1 - v2)  … 反発係数
より
e(v2 - v1) = v1'- v2'
 
  em2(v2 - v1) = m2v1'- m2v2'
+) m1v1 + m2v2 = m1v1'+ m2v2'
───────────────
em2(v2 - v1) + (m1v1 + m2v2) = (m1 + m2)v1'
v1'= {m1v1 + m2v2 + em2(v2 - v1)}/(m1 + m2)
 
  em1(v2 - v1) = m1v1'- m1v2'
-) m1v1 + m2v2 = m1v1'+ m2v2'
───────────────
em1(v2 - v1) - (m1v1 + m2v2) = -(m1 + m2)v2'
v2'= {m1v1 + m2v2 - em1(v2 - v1)}/(m1 + m2)
 
▼ 衝突面に水平な成分
m1u1 + m2u2 = m1u1'+ m2u2'  … 運動量保存則
u = (u1'- u2')/(u1 - u2)  … 速度の減衰
u(u2 - u1) = u2'- u1'
 
  um2(u2 - u1) = m2u2'- m2u1'
-) m1u1 + m2u2 = m1u1'+ m2u2'
───────────────
um2(u2 - u1) - (m1u1 + m2u2) = -(m1 + m2)u1'
u1'= {m1u1 + m2u2 - um2(u2 - u1)}/(m1 + m2)
 
  um1(u2 - u1) = m1u2'- m1u1'
+) m1u1 + m2u2 = m1u1'+ m2u2'
───────────────
um1(u2 - u1) + (m1u1 + m2u2) = (m1 + m2)u2'
u2'= {m1u1 + m2u2 + um1(u2 - u1)}/(m1 + m2)
 
▼ ベクトル表記
N = (P1 - P2)/|P1 - P2|
 
衝突面に垂直な速度成分 v1 = NV1 
衝突面に垂直な速度成分 v2 = NV2 
衝突後の垂直な速度成分
v1'= {m1v1 + m2v2 + em2(v2 - v1)}/(m1 + m2)
v2'= {m1v1 + m2v2 - em1(v2 - v1)}/(m1 + m2)
 
T1 = (V1 - v1N)/|V1 - v1N|
or   (V2 - v2N)/|V2 - v2N| or 0 
T2 =  N × T1 
 
衝突面に水平な速度成分 u1k = TkV1 
衝突面に水平な速度成分 u2k = TkV2 
衝突後の水平な速度成分
u1k'= {m1u1k + m2u2k - um2(u2k - u1k)}/(m1 + m2)
u2k'= {m1u1k + m2u2k + um1(u2k - u1k)}/(m1 + m2)
 
衝突後の速度ベクトルは
V1'= u11'T1 + u12'T2 + v1'N 
V2'= u21'T1 + u22'T2 + v2'N 
 
▼ 外積
T2 =  N × T1 
(x', y', z') = (nx, ny, nz)×(x. y, z)と置くと
= (nyz - nzy, nzx - nxz, nxy - nyx)
 
(x', y', 0) = (nx, ny, 0)×(x. y, 0)と置くと
= (0, 0, nxy - nyx)
なので
(x', y') = (nx, ny)×(x. y) = (0, 0)
 
■ おまけ
▼ 衝突面に垂直な成分(同じ質量)
v1'= {m1v1 + m2v2 + em2(v2 - v1)}/(m1 + m2)
= {mv1 + mv2 + em(v2 - v1)}/(m + m)
= {v1 + v2 + e(v2 - v1)}/2
 
v2'= {m1v1 + m2v2 - em1(v2 - v1)}/(m1 + m2)
= {mv1 + mv2 - em(v2 - v1)}/(m + m)
= {v1 + v2 - e(v2 - v1)}/2
 
▼ 衝突面に垂直な成分(e = 1)
v1'= {m1v1 + m2v2 + em2(v2 - v1)}/(m1 + m2)
= {m1v1 + m2v2 + m2(v2 - v1)}/(m1 + m2)
= {2m2v2 + (m1 - m2)v1}/(m1 + m2)
 
v2'= {m1v1 + m2v2 - em1(v2 - v1)}/(m1 + m2)
= {m1v1 + m2v2 - m1(v2 - v1)}/(m1 + m2)
= {2m1v1 - (m1 - m2)v2}/(m1 + m2)
 
▼ 衝突面に垂直な成分(e = 1,同じ質量)
v1'= {2m2v2 + (m1 - m2)v1}/(m1 + m2)
= {2mv2 + (m - m)v1}/(m + m)
= v2 
 
v2'= {2m1v1 - (m1 - m2)v2}/(m1 + m2)
= {2mv1 - (m - m)v2}/(m + m)
= v1 
 
▼ 衝突面に水平な成分(同じ質量)
u1'= {m1u1 + m2u2 - um2(u2 - u1)}/(m1 + m2)
= {mu1 + mu2 - um(u2 - u1)}/(m + m)
= {u1 + u2 - u(u2 - u1)}/2
 
u2'= {m1u1 + m2u2 + um1(u2 - u1)}/(m1 + m2)
= {mu1 + mu2 + um(u2 - u1)}/(m + m)
= {u1 + u2 + u(u2 - u1)}/2
 
 
▼ 衝突面に水平な成分(u = 1)
u1'= {m1u1 + m2u2 - um2(u2 - u1)}/(m1 + m2)
= {m1u1 + m2u2 - m2(u2 - u1)}/(m1 + m2)
= (m1 + m2)u1/(m1 + m2)
= u1 
 
u2'= {m1u1 + m2u2 + um1(u2 - u1)}/(m1 + m2)
= {m1u1 + m2u2 + m1(u2 - u1)}/(m1 + m2)
= (m1 + m2)u2/(m1 + m2)
= u2 
 
 
■ 結果
▼ 定義
大文字(太字)はベクトル
右下添字は球番号
 
e :反発係数(衝突面に垂直)
u :減衰割合(衝突面に水平)
Pi:球の位置
mi:球の質量
Vi:球の速度
N :衝突面の法線
Ti:衝突面の接線
vi:衝突面に垂直方向の速度
ui:衝突面に水平方向の速度
' :衝突後
 
uは回転や摩擦力などを無視した挙動の近似
 
▼ ベクトル表記(V → V')
N = (P1 - P2)/|P1 - P2|
v1 = NV1 
v2 = NV2 
v1'= {m1v1 + m2v2 + em2(v2 - v1)}/(m1 + m2)
v2'= {m1v1 + m2v2 - em1(v2 - v1)}/(m1 + m2)
 
T1 = (V1 - v1N)/|V1 - v1N|
or   (V2 - v2N)/|V2 - v2N| or 0 
T2 =  N × T1 
u1k = TkV1 
u2k = TkV2 
u1k'= {m1u1k + m2u2k - um2(u2k - u1k)}/(m1 + m2)
u2k'= {m1u1k + m2u2k + um1(u2k - u1k)}/(m1 + m2)
 
衝突後の速度ベクトルは
V1'= u11'T1 + u12'T2 + v1'N 
V2'= u21'T1 + u22'T2 + v2'N 
 
▼ 外積
T2 =  N × T1 
(x', y', z') = (nx, ny, nz)×(x. y, z)と置くと
= (nyz - nzy, nzx - nxz, nxy - nyx)
(x', y') = (nx, ny)×(x. y) = (0, 0)
 
▼ 水平方向を1次元で近似する場合
u1 = |V1 - v1N|
u2 = |V2 - v2N|
T1 = (V1 - v1N)/u1 (if u1 ≠ 0), 0 (if u1 = 0)
T2 = (V2 - v2N)/u2 (if u2 ≠ 0), 0 (if u2 = 0)
u1k'= {m1u1k + m2u2k - um2(u2k - u1k)}/(m1 + m2)
u2k'= {m1u1k + m2u2k + um1(u2k - u1k)}/(m1 + m2)
V1'= u1'T1 + v1'N 
V2'= u2'T2 + v2'N 
 
▼ u = 1の場合
T1 = (V1 - v1N)
T2 = (V2 - v2N)
V1'= T1 + v1'N 
V2'= T2 + v2'N 
 
▼ 注意
実際は衝突時の水平方向の速度変化は
球の回転と摩擦力により変化するので
上記u < 1の時の式は現実では無意味な式と
なります
よって、通常はu = 1の式を使うのが
良いかと思います
 

このブログの人気の投稿

NEWS

N88-BASICでゲーム (1回目)