Редактирование: Реализация симплектического метода для вращательного движения твердого тела

Перейти к: навигация, поиск

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 6: Строка 6:
  
 
'''Семестр:''' осень 2019
 
'''Семестр:''' осень 2019
 
 
==Постановка задачи==
 
Реализовать симплектический для вращательного движения твердого тела.
 
 
Построить графики изменения полной энергии системы. Убедиться в симплектичности метода.
 
 
==Теория==
 
Данный метод  был получен Девидом Финчамом как аналог метода Верле для вращательного движения. Для описания поворота в данной статье используются кватернионы.
 
Алгоритм состоит из двух частей.
 
 
Вспомогательная часть:
 
 
<math>
 
1.\: \underline{J}^{n} = \underline{J}^{n-1/2} +\frac{1}{2}\Delta t \:  \underline{T}^{n}
 
\\
 
2. \: \underline{J}^{n}_{p} = \underline{\underline{A}}^{n} \: \underline{J}^{n}
 
\\
 
3.\: \omega_{pi}^{n} = {J}^{n}_{pi}/I
 
\\
 
4.\: \underline{q}^{n+1/2}=\underline{q}^{n}+\frac{1}{2}\Delta t \: \underline{\underline{Q}}^{n}\underline{\omega}_{p}^{n}
 
\\
 
5.\: Использовать\: \underline{q}^{n+1/2}\: для\: вычисления\: \underline{\underline{A}}^{n+1/2} \: и\: \underline{\underline{Q}}^{n+1/2}.
 
</math>
 
 
Главная часть:
 
 
<math>
 
6.\: \underline{J}^{n+1/2} = \underline{J}^{n-1/2} +\Delta t \:  \underline{T}^{n}
 
\\
 
7.\: \underline{J}^{n+1/2}_{p} = \underline{\underline{A}}^{n+1/2} \: \underline{J}^{n}
 
\\
 
8.\: \omega_{pi}^{n_1/2} = {J}^{n+1/2}_{pi}/I
 
\\
 
9.\: \underline{q}^{n+1}=\underline{q}^{n}+\Delta t \: \underline{\underline{Q}}^{n+1/2}\underline{\omega}_{p}^{n+1/2}
 
\\
 
10. \: Сохранить \: \underline{J}^{n+1/2} \: и \: \underline{q}^{n+1} \: для\: следующих\: шагов.
 
</math>
 
 
,где <math>\underline{J}</math> -кинетический момент, <math>\underline{T}</math> - внешний момент, <math>\underline{q}</math> - кватернион, описывающий поворот, <math>\underline{\omega}</math> -угловая скорость, <math>I</math> - момент инерции, <math>\underline{\underline{A}}</math> - матрица поворота
 
 
<math>
 
\underline{\underline{Q}} = \frac{1}{2}\begin{pmatrix}
 
q_{0} & -q_{1} & -q_{2} & -q_{3}\\
 
q_{1} & q_{0} & -q_{3} & q_{2}\\
 
q_{2} & q_{3} & q_{0} & -q_{1}\\
 
q_{3} & -q_{2} & q_{1} & q_{0}
 
\end{pmatrix}
 
</math>
 
 
==Результаты==
 
Алгоритм был реализован на языке программирования Python.
 
 
В качестве модели для расчета был взят куб закрепленный пружинами на углах, повернутый в начальном положении вокруг оси <math>(0,sin\frac{\pi}{3},cos\frac{\pi}{3})</math>.
 
 
Полученные графики:
 
 
[[File:Symplecticint1.gif]]
 
 
Здесь красная линия - потенциальная энергия системы, зеленая - кинетическая, черная - полная.
 
 
Как можно заметить полная энергия системы не растет со временем, а лишь колеблется около одного значения. В данном случае, отклонения не превышают 5% от среднего значения.
 
 
==Ссылки==
 
1. D. Fincham, Mol. Simul. 8, 165 (1992).
 
Вам запрещено изменять защиту статьи. Edit Создать редактором

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии Public Domain (см. Department of Theoretical and Applied Mechanics:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Отменить | Справка по редактированию  (в новом окне)