[Давным-давно я изучал это как старшекурсник.]
Тебе нужно быть ясным в массах.Вероятно, вы принимаете равную массу для обоих шаров, в отличие от одного существа бесконечной массы.
Второе: вы заинтересованы в рассмотрении ограничений качения, а также линейного импульса.Обращения, с которыми вы столкнетесь и которые говорят в духе упрощенного упругого столкновения, игнорируют все это.В качестве примера рассмотрим выстрелы в пуле / снукере, когда вы намеренно отбрасываете мяч от средней точки для генерации переднего или обратного вращения.
Хотите ли вы это сделать?
Если это так, вам необходимо учитывать трение между вращающимся шариком и поверхностью.
Например, в «простом»«прямолинейное столкновение между вращающимся шариком и неподвижным, если мы предположим, что оно совершенно упругое (опять-таки, не совсем верно):
- : первоначальное столкновение останавливает движущийся шарик« A »
- неподвижный шар «B» начинает двигаться со скоростью удара «A»
- «A» по-прежнему вращается, захватывает поверхность и набирает небольшую скорость
- «B» запускаетсябез вращения и должен соответствовать его скорости, чтобы катиться.Это приводит к незначительному замедлению.
В упрощенном случае вычисление будет намного проще, если вы преобразуете его в координаты центра масс.В этом кадре столкновение всегда является прямым столкновением, меняющим направление движения шаров.Затем вы просто трансформируетесь обратно, чтобы получить результирующие значения.
Предполагая, что массы и скорости будут неопределенными до воздействия v1 и w1.
V0 = centre of mass speed = (v1+w1)/2
v1_prime = v of mass_1 in transformed coords = v1 - V0
w1_prime = w1 - V0
После столкновения у нас есть простое отражение:
v2_prime = -v1_prime (== w1_prime)
w2_prime = -vw_prime (== v1_prime)
v2 = v2_prime + V0
w2 = w2_prime + V0