Математическое моделирование упругого столкновения

Материал из Department of Theoretical and Applied Mechanics
Перейти к: навигация, поиск

Курсовой проект по Механике дискретных сред

Исполнитель: Дурнев Андрей

Группа: 5030103/80101

Семестр: осень 2021

Постановка задачи[править]

Требуется смоделировать удар воздушного шарика о твердую стенку в двумерной постановке. Воздушный шарик представляет из себя оболочку, состоящую из материальный точек, каждая из которых соединена пружиной. Отскакивание воздушного шара от стенки моделируется при помощи потенциала Ленарда-Джонса.

Математическая модель[править]

Уравнение движение для каждой из материальных точек записывается следующим образом:

[math] m\underline{\ddot{x}}_i(t)=\underline{F}_{R_1}+\underline{F}_{R_2}+\underline{P}+\underline{F}_{Wall}\\ \underline{x}_i(0)=\underline{x}_i^0,~\underline{v}_i(0)=v_i^0~~~i=1,\ldots,n [/math]


где [math] \underline{F}_{R_1}, \underline{F}_{R_2}\\ [/math] - силы упругости действующие на [math]i[/math]-ую частицу со стороны [math]i-1[/math] и [math]i+1[/math] соответственно;

[math] \underline{P} [/math] - давление создаваемое газом;

[math] \underline{F}_{Wall}\\ [/math] - сила взаимодействия между воздушным шаром и стеной;

Давление рассчитывается по формуле:

[math]P = k(\frac{V_0}{V} - 1)[/math]


где [math]V_0[/math] - объём шара в начальный момент времени

[math]V[/math] - объём шара в текущий момент времени

[math]k[/math] - коэффициент давления


Взаимодействие частиц со стенкой реализовано с помощью потенциала Леннарда-Джонса:

[math] U(r) = 4\varepsilon \left[ \left(\frac{\sigma}{r}\right)^{12} - \left(\frac{\sigma}{r}\right)^{6} \right], [/math]


[math] \varepsilon [/math] - глубина потенциальной ямы

[math] \sigma [/math] - расстояние, на котором энергия взаимодействия становится равной нулю

[math] r [/math] - расстояние до стенки

Площадь шара вычисляется при помощи формулы площади Гаусса, позволяющей вычислить площадь произвольного многоугольника:

[math]\begin{align} \mathbf{S} &= \frac{1}{2} \left| \sum_{i=1}^{n-1} x_i y_{i+1} + x_n y_1 - \sum_{i=1}^{n-1} x_{i+1} y_i - x_1 y_n \right| = \\ &= \frac{1}{2} |x_1 y_2 + x_2 y_3 + \dots + x_{n-1} y_n + x_n y_1 - x_2 y_1 - x_3 y_2 - \dots - x_n y_{n-1} - x_1 y_n|, \end{align}[/math]

Результаты моделирования[править]

Исходный код можно посмотреть на GitHub: https://github.com/OGthug-coder/math_model_hw