Моделирование поведения цепочки — различия между версиями

Материал из Department of Theoretical and Applied Mechanics
Перейти к: навигация, поиск
(Постановка задачи)
(Код программы)
 
(не показаны 24 промежуточные версии этого же участника)
Строка 9: Строка 9:
  
 
===Постановка задачи===
 
===Постановка задачи===
В рамках проекта необходимо смоделировать движение двумерной цепочки: провис цеопчки и ее падение при отпускании одного из концов под действием силы тяжести.
+
В рамках проекта необходимо смоделировать движение двумерной цепочки: провис цепочки и ее падение при отпускании одного из концов под действием силы тяжести.
 +
 
 +
===Математическая модель ===
 +
Изначально запишем закон движения:
 +
<math>
 +
  m\underline{\ddot{r}}_i(t)=\underline{F}_{i-1}+\underline{F}_{i+1} + \underline{F}_{g}\\
 +
  \underline{r}_i(0)=\underline{r}_i^0,~\underline{v}_i(0)=0~~~i=1,\ldots,n
 +
</math>
 +
 
 +
где
 +
<math>
 +
  \underline{F}_{i-1}, \underline{F}_{i+1}\\
 +
</math> - силы упругости действующие на <math>i</math>-ую частицу со стороны <math>i-1</math> и <math>i+1</math> соответственно, а <math> \underline{F}_{g}=-mg\underline{k} \\  </math> - сила тяжести.
 +
 
 +
Далее распишем силу упругости как произведение модуля на соответсвующий орт:
 +
<math>
 +
  \underline{F}_{i+1}= c(|\underline{r}_{i+1}-\underline{r}_{i}| - l_0)\frac{(\underline{r}_{i+1}-\underline{r}_{i})}{|\underline{r}_{i+1}-\underline{r}_{i}|}
 +
</math>,  где <math>c</math> - коэффициент жесткости пружины.
 +
Аналогично записывается сила <math>\underline{F}_{i-1}</math>.
 +
 
 +
Далее подставляя все силы в уравнение движения, получим:
 +
 
 +
<math>
 +
  m\underline{\ddot{r}}_i(t)= c(||\underline{r}_{i+1}-\underline{r}_i|| -l_0)\frac{(\underline{r}_{i+1}-\underline{r}_i)}{||\underline{r}_{i+1}-\underline{r}_i||} + c(||\underline{r}_{i-1}-\underline{r}_i|| - l_0)\frac{(\underline{r}_{i-1}-\underline{r}_i)}{||\underline{r}_{i-1}-\underline{r}_i||} - mg\underline{k}\\
 +
</math>
 +
 
 +
Дальнейшее интегрирование уравнения производится с помощью явного симплектического метода Верле c нулевыми начальными условиями и условиями закрепления на концах.
 +
 
 +
<math> \begin{cases}
 +
V_{i+1} = V_i+A_i\Delta{t}\\
 +
X_{i+1} = X_i+V_{i+1}\Delta{t},
 +
\end{cases} </math>
 +
 
 +
===Выводы===
 +
 
 +
В рамках решения задачи смоделировано движение цепочки под действием силы тяжести и проилюсстрирован тот факт, что ускорение крайней массы цепочки больше, чем ускорение свободно падающего тела. Данный эффект объясняется начальным преднатяжением цепочки. График разности координат крайней частицы и свободно падающего тела изменяется линейно до тех пор, пока тело не догонит конец цепочки.
 +
 
 +
===Код программы===
 +
https://editor.p5js.org/Kssdvchenko/sketches/R-agsD747

Текущая версия на 10:52, 25 января 2023

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

Исполнитель: Садовченко Екатерина

Группа: 5030103/90101

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


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

В рамках проекта необходимо смоделировать движение двумерной цепочки: провис цепочки и ее падение при отпускании одного из концов под действием силы тяжести.

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

Изначально запишем закон движения: [math] m\underline{\ddot{r}}_i(t)=\underline{F}_{i-1}+\underline{F}_{i+1} + \underline{F}_{g}\\ \underline{r}_i(0)=\underline{r}_i^0,~\underline{v}_i(0)=0~~~i=1,\ldots,n [/math]

где [math] \underline{F}_{i-1}, \underline{F}_{i+1}\\ [/math] - силы упругости действующие на [math]i[/math]-ую частицу со стороны [math]i-1[/math] и [math]i+1[/math] соответственно, а [math] \underline{F}_{g}=-mg\underline{k} \\ [/math] - сила тяжести.

Далее распишем силу упругости как произведение модуля на соответсвующий орт: [math] \underline{F}_{i+1}= c(|\underline{r}_{i+1}-\underline{r}_{i}| - l_0)\frac{(\underline{r}_{i+1}-\underline{r}_{i})}{|\underline{r}_{i+1}-\underline{r}_{i}|} [/math], где [math]c[/math] - коэффициент жесткости пружины. Аналогично записывается сила [math]\underline{F}_{i-1}[/math].

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

[math] m\underline{\ddot{r}}_i(t)= c(||\underline{r}_{i+1}-\underline{r}_i|| -l_0)\frac{(\underline{r}_{i+1}-\underline{r}_i)}{||\underline{r}_{i+1}-\underline{r}_i||} + c(||\underline{r}_{i-1}-\underline{r}_i|| - l_0)\frac{(\underline{r}_{i-1}-\underline{r}_i)}{||\underline{r}_{i-1}-\underline{r}_i||} - mg\underline{k}\\ [/math]

Дальнейшее интегрирование уравнения производится с помощью явного симплектического метода Верле c нулевыми начальными условиями и условиями закрепления на концах.

[math] \begin{cases} V_{i+1} = V_i+A_i\Delta{t}\\ X_{i+1} = X_i+V_{i+1}\Delta{t}, \end{cases} [/math]

Выводы[править]

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

Код программы[править]

https://editor.p5js.org/Kssdvchenko/sketches/R-agsD747