Падающий цилиндр (48.44) — различия между версиями
Материал из Department of Theoretical and Applied Mechanics
(→Реализация на языке JavaScript) |
|||
Строка 5: | Строка 5: | ||
== Реализация на языке JavaScript == | == Реализация на языке JavaScript == | ||
+ | {{#widget:Iframe |url=http://tm.spbstu.ru/htmlets/Murinskaia/48_44.html|width=940 |height=400 |border=0 }} | ||
== Используемые библиотеки == | == Используемые библиотеки == |
Текущая версия на 01:10, 19 декабря 2017
Задача 48.44 из сборника задач Мещерского: составить уравнения движения падающего на разматывающейся нити цилиндра и смоделировать систему на языке программирования JavaScript.
Содержание
Условие задачи[править]
Один конец нерастяжимой тонкой нити обмотан вокруг однородного круглого цилиндра радиуса R, второй конец прикреплен к неподвижной точке O. Цилиндр, разматывая нить, опускается вниз, одновременно раскачиваясь вокруг горизонтальной оси, проходящей через точку подвеса нити. Пренебрегая массой нити, составить дифференциальные уравнения движения цилиндра.
Реализация на языке JavaScript[править]
Используемые библиотеки[править]
- three.js
- TGALoader.js
- dat.gui.js
- OrbitControls.js
- jquery.min.js
Решение задачи[править]
Уравнение Лагранжа второго рода:
Система имеет две степени свободы: длина нити ρ и угол между нитью и вертикальной осью φ.
Кинетическая энергия:
Потенциальная энергия:
Находим
Итак,