: : : : : : В продолжение шариковой темы извлеку из старых архивов недорешенную задачку.
: : : : : :
: : : : : : Два абсолютно упругих шарика массой M1 и M2 располагаются один над другим (пусть М1 внизу) и касаются друг-друга. Шарики роняют с высоты Н на массивную абсолютно упругую плиту. На какую высоту подпрыгнет каждый шарик? Ускорение свободного падения g, влиянием воздуха пренебрегаем.
: : : : : :
: : : : : : Кое-кто из присутствующих уже знаком с этой задачей. Но, так как красивого решения в виде Н2 = F(g, H, M1, M2) я пока не видел, осмелилися выложить задачку снова.
: : : : :
: : : : : Ну, в случае M1 >= M2 можно просто разнести шарики на некоторое расстояние, а потом устремить его к нулю. И решение получается простое - ровно в два удара. А вот если нижний шарик легче верхнего, то ударов получится сильно больше:
: : : :
: : : : Поторопился. Два удара, если верхний мячик легче нижнего более чем в 3 раза. Если меньше - то три удара. Если ровно в три раза, то нижний останется лежать на земле, а верхний получит двойную скорость.
: : : :
: : : : Вот, кстати, интересная задача вырисовывается. Какое должно быть соотношение масс, чтобы нижний шарик остался неподвижным? У меня пока получается, что решение не единственное - кроме `M_1 = 3M_2` есть и какой-то спектр решений в области `M_2 > M_1`:
: : :
: : : Из этой задачи еще много чего интересного можно накопать :)
: : : Вот только чисто аналитического решения я не нашел...
: :
: : Гладкой аналитики тут точно не будет. Решение явно кусочное - по числу переотражений, причем число это стремится к бесконечности при росте `M_2/M_1`.
: :
: : Но можно попробовать найти границы гладких участков (как раз те точки, в которых нижний шарик остается неподвижным).
:
: Хотя бы точки эти аналитически выразить...
Так, ну я понял, как это решать. Опишу только способ, потому что формулы пока получаются недостаточно красивые.
Рассмотрим два наших шарика, падающих на плоскость с постоянной единичной скоростью и разделенных некоторым расстоянием. Расстояние в ответ никак не входит, поэтому мы его потом спокойно можем занулить (надеюсь, математики этого не ситают). Гравитацию тоже уберем - поскольку 'в реальности' все происходит в точке, на сам процесс отскока она влиять не может.
Что у нас при этом происходит? Шарик 1 (нижний) долетает до плоскости, отражается от нее вверх с той же скоростью, соударяется с шариком 2, снова отражается от плоскости, снова соударяется с шариком 2 и т. д. Цикл прекращается если `v_2 >= v_1`. В этом случае нижний шарик не может догнать верхний, и они улетают от плоскости без дальнейших соударений.
Тут важно, что в каждый момент времени система характеризуется только двумя параметрами - скоростями `v_1` и `v_2`. Можем ввести вектор состояния системы на n-ном этапе цикла - `vec v_n = (v_1, v_2)_n`.
Объединим фазы соударение-отражение в одну - это несложно, поскольку отражение всего лишь меняет знак `v_1`. Оператор 'соударение-отражение' работает так: `vec v_(n+1) = A(m_1, m_2)vec v_n` (матрицу A нетрудно выразить в явном виде). Важно что преобразование тут линейное.
Теперь вспомним про закон сохранения энергии. На каждом этапе цикла должна сохраняться сумма `m_1 v_1^2 + m_2 v_2^2`. Так как в начале у нас скорости единичные, то перепишем это как: `m_1/(m_1+m_2) v_1^2 + m_2/(m_1+m_2) v_2^2 = 1`. Совершенно естественно заменить `m_1/(m_1+m_2) v_1^2` на `sin^2 phi`, а `m_2/(m_1+m_2) v_2^2` - на `cos^2 phi`.
Итак, что мы получили? Система у нас полностью характеризуется некоторой точкой в фазовом пространстве (это уже не `(v_1, v_2)`, а `(v_1sqrt(m_1/(m_1+m_2)), v_2sqrt(m_2/(m_1+m_2)))`), причем точка находится на единичной окружности. То есть, система характеризуется углом `phi`. Тогда преобразование 'соударение-отражение' является ни чем иным как поворотом этого угла на фиксированный угол `alpha(m_1, m_2)`. Процесс стартует из начального угла `phi_0(m_1, m_2)` и каждый шаг поворачивает систему на угол `alpha(m_1, m_2)` до тех пор, пока `v_2 < v_1`. Условие `v_2 = v_1` - это, конечно, тоже некий угол в фазовом пространстве, скажем, `beta(m_1, m_2)`.
Ну и дальше все понятно - число циклов равно целой части от `(beta - phi_0)/alpha` и так далее. |