Моделирование падения цепочки

Материал из Department of Theoretical and Applied Mechanics
Версия от 12:22, 25 января 2023; 10.208.18.137 (обсуждение) (Исходный код программы)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

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

Исполнитель: Стешова Юлия

Группа: 5030103/90101

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

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

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

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

[math] m\underline{\ddot{r}}_i(t)=\underline{F}_{R_1}+\underline{F}_{R_2} + \underline{F}_{g}\\ \underline{r}_i(0)=\underline{r}_i^0,~\underline{v}_i(0)=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{F}_{g} = -mg\underline{k} \\ [/math] - сила тяжести;

Сила упругости, возникающая в пружине соединяющей частицу 1 и 2, вычисляется по следующей формуле:

[math] \underline{F}_{R}= c(||\underline{r}_2-\underline{r}_1|| - l_0)\frac{(\underline{r}_2-\underline{r}_1)}{||\underline{r}_2-\underline{r}_1||} [/math], где [math]c[/math] - коэффициент жесткости пружины.

Обезразмеренное уравнение будет иметь вид:

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

Интегрирование по времени производится неявной схемой интегрирования.

Исходный код программы[править]

Исходный код программы на языке программирования Matlab, находится на GitHub: https://github.com/jstesh/new_rep