Здравствуйте!
Пишу простенький физический движок на плоскости "для себя".
При описании столкновения тел возникла трудность с которой я никак не могу разобраться.
Насколько я понимаю, при соударении часть энергии поступательного движения тела преобразуется во вращательную и наоборот. А сумма этих энергий до удара и после будет, естественно, величиной постоянной. Конечно в случаи упругого удара, то есть без потери энергии на деформацию и нагревание.
Начал с относительно простого случая - столкновение квадрата со стеной.
Квадрат:
сторона:

масса:

скорость:

,

. То есть движение только вдоль оси

.
угловая скорость:

Движется в сторону стены под углом

.
Импульс тела до столкновения

Так как удар упругий, в момент соударения на тело подействует импульс

перпендикулярный плоскости стены. Проведем ось через центр тяжести квадрата (это будет его центр, так как масса распределена равномерно) и точку соударения. И спроецируем вектор импульса на эту ось и перпендикулярную ей. Получим

- проекцию импульса на проведенную ось и

- проекцию импульса на перпендикулярную ось. То есть

. Таким образом

заставит тело двигаться поступательно в направлении проведенной оси со скоростью

, а

- заставит тело вращаться. Рассчитаем угловую скорость тела после соударения. Момент инерции

и

, отсюда

, значит

. Причем

,

, а момент инерции квадрата относительно оси, проходящей через его центр перпендикулярно его плоскости

(из справочника). Таким образом

.
В соответствии с законом сохранении энергии получаем:

,

. Подставив сюда полученную угловую скорость

и упростив выражение получаем

, что противоречит теореме Пифагора.
Большая просьба к людям разбирающимся в физике подсказать, где именно в вычислениях я допустил ошибку. Или если я вообще не правильно рассуждаю, то подсказать в какую сторону копать. Заранее большое спасибо!!
