Академический Документы
Профессиональный Документы
Культура Документы
Магия тензорной алгебры
Магия тензорной алгебры
Сборник статей
Ростов-на-Дону, 2016
Предисловие автора
С июня по август прошлого, 2015 года, на сайте Хабре мною были опубликованы 18
статей, озаглавленные “Магия тензорной алгебры”. Проект начинался как амбициозная
попытка в относительно простой и доступной форме изложить теорию тензорного исчис-
ления с её приложениями к практике.
В силу объективных причин, основной из которых является банальная нехватка време-
ни на поддержку проекта он был приостановлен на неопределенный срок. Радовало лишь
то, что какая-то часть работы была проделана и статьи остались в сообществе и могли
приносить пользу своим существованием.
Но беда пришла оттуда, откуда её не ждали. Из-за непонятного поведения ресурса, на
котором рендерились формулы из первых статей, огромное количество формул преврати-
лась в “тыкву” и перестала отображаться. Было обидно, но руки не доходили исправить
положение, да и понятно – занятие это не из приятных.
Однако, спустя полгода после приостановки цикла немного времени таки нашлось.
Спасло и то, что на месте покалеченых формул и в коде статей остались title-ы, призван-
ные отображать поясняющий текст при выключенном отображении картинок в браузере.
А в этих тайтлах был... LaTeX-код формул! Это позволило воспользоваться Math Text
Editor, поддерживаемый Романом Парпалаком (@parpalak) для проведения востанови-
тельных работ. В итоге все статьи снова доступны в нормальном виде.
Дабы застраховаться от случайностей, мною был создан этот сборник. Он содержит
все статьи цикла в оригинальном виде. Заранее прошу прощения за качество рендеринга
pdf - перевести тексты в нормальный LaTeX всё так же нет времени.
В качестве задела на будущую книжку, этот сборник все же LaTeX проект, просто
вместо кода пока что исползуются команды
\includepdf{file.pdf}
2
1. Что такое тензор и для чего он нужен
Введение
Это было очень давно, когда я учился классе в десятом. Среди довольно скудного в
научном плане фонда районной библиотеки мне попалась книга - Угаров В. А. «Специ-
альная теория относительности». Эта тема интересовала меня в то время, но информации
школьных учебников и справочников было явно недостаточно.
Однако, книгу эту я читать не смог, по той причине, что большинство уравнений пред-
ставлялись там в виде тензорных соотношений. Позже, в университете, программа подго-
товки по моей специальности не предусматривала изучение тензорного исчисления, хотя
малопонятный термин «тензор» всплывал довольно часто в некоторых специальных кур-
сах. Например, было жутко непонятно, почему матрица, содержащая моменты инерции
твердого тела гордо именуется тензором инерции.
Погружение в специальную литературу не приносило просветления. Технарю доста-
точно тяжело переварить строгий абстрактный язык чистой математики. Тем не менее,
от случая к случаю я возвращался к этому вопросу, и вот спустя почти шестнадцать лет
наступило просветление, о чем и будет рассказано под катом. Возможно, мои рассуждения
покажутся примитивными и упрощенными, но понимание любой сложной вещи принято
разворачивать от просцесса оперирования простыми понятиями, поэтому начнем.
3
v
B2
ϕ
A2
~a
~e2
ϕ ϕ
O ~e1 A1 B1 u
Однако, это не единственный способ определить вектор ~a в данной системе координат. Его
можно так же задать ортогональными проекциями на оси (u, v). Не трудно видеть, что
эти проекции равны
С другой стороны, выразим длины этих проекций через длины базисных векторов таким
образом
~a · ~e1 a1
OB1 = au = = (1.5)
|~e1 | |~e1 |
~a · ~e2 a2
OB2 = av = = (1.6)
|~e2 | |~e2 |
a1
= a1 |~e1 | + a2 |~e2 | cos ϕ (1.7)
|~e1 |
a2
= a1 |~e1 | cos ϕ + a2 |~e2 | (1.8)
|~e2 |
4
Умножим (1.7) на |~e1 |, а (1.8) на |~e2 | и преобразуем их
2
X
ai = gij aj , i = 1, 2 (1.12)
j=1
где базисные векторы ~e1 , ~e2 , ~e3 , как и выше, ненулевые некомпланарные векторы. Пере-
множим векторы ~a и ~b скалярно.
5
В последнем выражении аккуратно раскроем скобки
3 3
!
X X
~a · ~b = gij aj bi (1.15)
i=1 j=1
Первое, что можно заметить, при уменьшении числа измерений пространства мы перей-
дем от (1.14) к (1.11) а выражение (1.15) будет работать и давать склярное произведение
векторов, но уже на плоскости. То есть мы получили некую обобщающую форму запи-
си операции скалярного умножения, не зависящую ни от размерности пространства, ни
от рассматриваемого базиса, все свойства которого собраны в матрице g. Внимательно
взглянув на (1.15) мы поймем ещё одну вещь
3
X
ai = gij aj , i = 1, 2, 3 (1.16)
j=1
что есть ничто иное как ковариантные координаты вектора ~a. То есть, (1.15) можно пере-
писать
3
X
~a · ~b = ai b i (1.17)
i=1
6
быть вверху и наоборот. Выражение (1.17) будет выглядеть так
~a · ~b = ai bi (1.19)
0 0 1
Пусть вектор ~a задан в таком базисе. Квадрат длины вектора, как известно, это скалярное
произведение этого вектора самого на себя, то есть
7
не зависит ни от базиса, ни от числе измерений пространства, в котором мы работаем.
Базисом определяются лишь конкретные значения компонент матрицы g.
Так вот, уравнение (1.20) выражает скалярное произведение двух векторов
в тензорной, то есть независимой от выбранного базиса форме.
Матрица g задает так называемый метрический тензор. Её вид определяет каким
образом в выбранных координатах вычисляется расстояние между двумя точками.
Но почему мы называем эту матрицу тензором? Следует понимать, что математиче-
ская форма, в данном случае квадратная матрица, содержащая набор компонент, это ещё
не тензор. Понятие тензора несколько шире, и прежде чем мы скажем, что такое тензор,
мы рассмотрим ещё один вопрос.
Перепишем соотношение (1.20) в матричной форме, так нам будет легче оперировать
им
c = a(0)T g(0) b(0) (1.21)
где c - скалярное произведение векторов. Верхний индекс несет смысл системы коорди-
нат, в которой заданы векторы и определен метрический тензор. Скажем это система
координат СК0. Преобразование вектора к некоторой другой системе координат СК1 опи-
сывается матрицей преобразования A01 , то есть
в последнем выражении
AT01 g(0) A01 = g(1) (1.23)
Тем самым мы показали ещё одно свойство тензора - его компоненты меняются син-
хронно с компонентами векторов того простаранства, в котором определен тензор. То
есть теперь мы можем сказать, что тензор - это математический объект, представлен-
ный набором компонент и правилом их преобразования при смене базиса.
Теперь, используя правило Эйнштейна, перепишем (1.22) и (1.23) в тензорной форме
8
(1) (0)
gij = αil αjk gkl (1.25)
где αpq - элементы матрицы A01 . Проиллюстрируем (1.25) на трехмерном примере. Пусть
матрица преобразования координат имеет вид
1
α1 α21 α31
2
A01 = α1 α22 α32
y0 y1
~a
ϕ
a2(0)
ϕ x1
a2(1)
~e21
ϕ
~e20 ~e11
a1(1)
ϕ
O ~e10 a1(0) x0
Пусть вектор ~a задан в двух нормированных базисах: прямоугольном (~e10 , ~e20 ) и косоугольном(~e11 ,
9
Преобразование из косоугольной системы координат в прямоугольную выражается мат-
рицей " #
cos ϕ sin ϕ
A01 =
sin ϕ cos ϕ
обратное преобразование
cos ϕ sin ϕ
−
cos 2ϕ cos 2ϕ
A10 = A−1
01 =
sin ϕ cos ϕ
−
cos 2ϕ cos 2ϕ
и совсем нетрудно увидеть, что длина его |~a| = 5. Метрический тензор в ортонормирован-
ном базисе представляется единичной матрицей
" #
1 0
g(0) =
0 1
значит
(0) (0) (0) (0) (0)
|~a|2 = gij aj(0) ai(0) = g11 a1(0) + g12 a2(0) a1(0) + g21 a1(0) + g22 a2(0) a2(0)
= 3 · 3 + 4 · 4 = 9 + 16 = 25.
π
Зададим угол наклона осей ϕ = 6
и вычислим контрвариантные компоненты вектора
в косоугольных осях
√
a1(1) = α̃11 a1(0) + α̃21 a2(0) = 3 3 − 4
√
a2(1) = α̃12 a1(0) + α̃22 a2(0) = −3 + 4 3
10
Ну а теперь вычислим длину вектора в новом базисе
(1) (1) (1) (1) (1)
|~a|2 = gij aj(1) ai(1) = g11 a1(1) + g12 a2(1) a1(1) + g21 a1(1) + g22 a2(1) a2(1) =
√ !
√ 3 √
= 3 3−4−3 +6 3 3−4 +
2
√ √ √
9
+ − 2 3 − 3 + 4 3 −3 + 4 3 =
2
27 √ √ 9 √ √
= + 6 3 − 6 3 − 8 − − 6 3 + 6 3 + 24 = 9 + 16 = 25
2 2
то есть
|~a| = 5,
Заключение и выводы
11
2. Векторные и тензорные операции. Ранги тензоров
Введение
Несказанно рад, что читателям понравилась. Сразу сделаю оговорку - просто расска-
зать о таком ёмком понятии как тензор не получится - велик объем информации. Могу
обещать, что к концу цикла мозаика сложится.
А в прошлый раз мы остановились на том, что рассмотрев представление вектора в
косоугольном базисе, и определив, что он представляется двумя разными (ковариантными
и контравариантными) наборами координат, получили общие выражения для скалярного
произведения, учитывающие изменение метрики пространства. Таким образом, мы весьма
осторожно подошли к понятию тензора
Рассмотрим произвольный базис (~e1 , ~e2 , ~e3 ). Будем считать, что нам заданы длины его
векторов e1 , e2 , e3 и углы между парами векторов ϕ12 , ϕ13 , ϕ23 . Векторы базиса образуют
трехгранный угол OABD, и углы между векторами являются его линейными углами, в
углы между плоскостями, в которых лежат пары векторов будут его двугранными углами
(рисунок 3). Будем считать, что углы между векторами удовлетворяют условию ϕ12 +ϕ13 +
ϕ23 < 2 π.
Вычислим объем параллелепипеда, натянутого на базис так, как это принято в стерео-
метрии
V =Sh (2.2)
12
где S - площадь основания параллелепипеда; h - высота, проведенная к данному основа-
нию.
Площадь основания вычисляется тривиально - как модуль векторного произведения
B
~e3 h
~e2
ψ A
D2
ϕ23 D1
ϕ12
ϕ13 ~e1
cos ϕ13 = cos ϕ12 cos ϕ23 + sin ϕ12 sin ϕ23 cos ψ
- первая теорема косинусов для трехгранного угла. Из нее выражаем косинус двугранного
угла
cos ϕ13 − cos ϕ12 cos ϕ23
cos ψ = (2.5)
sin ϕ12 sin ϕ23
Квадрат синуса необходимого нам угла выражаем через полученный косинус
13
педа
V 2 = e21 e22 e23 1 + 2 cos ϕ12 cos ϕ13 cos ϕ23 − cos2 ϕ12 − cos2 ϕ13 − cos2 ϕ23
det |gij | = e21 e22 e23 1 + 2 cos ϕ12 cos ϕ13 cos ϕ23 − cos2 ϕ12 − cos2 ϕ13 − cos2 ϕ23
C ji = aj bi (2.8)
называют тензорным произведением двух векторов или диадой. Тензорным это произве-
дение названо потому что пермножаются тензоры и на выходе получается тензор, в данном
случае второго ранга, C ji . Ранг тензора - это количиство его индексов. Вектор, внезапно,
тоже является тензором, только первого ранга. Да это и понятно - ведь вектор, как гео-
метрическая сущность, не зависит от системы координат, в которой его рассматривают.
От выбора системы координат зависят лишь его компоненты.
Тензор второго ранга (2.8), разумеется, представлен матрицей своих компонент
1 1
a b a1 b 2 a1 b 3
2 1
C = a b a2 b 2 a2 b 3 (2.9)
3 1 3 2 3 3
a b a b a b
14
Используя (2.8) можно переписать скалярное произведение в виде
c = gij C ji (2.10)
это тоже тензорное произведение, называемое сверткой из-за того, что приводит к умень-
шению ранга результирующего тензора. Все индексы в (2.10) «немые», по ним производит-
ся двойное суммирование компонент метрического тензора и диады и на выходе получатся
число c.
Внимательный читатель скажет, что на выходе должен получится тензор. Так тензор
и получается - скаляр, это тоже тензор. Нулевого ранга, так как не имеет индексов и
не подлежит преобразованию при смене базиса. Скалярное произведение инвариантно
относительно смены базиса, ибо ни длина участвующих в нем векторов ни угол между
ними от смены базиса не меняются. Значит скаляр - это тензор нулевого ранга.
Но не любое число есть скаляр. Скаляр - это длина вектора, скалярное произведе-
ние векторов, масса материального тела, абсолютная температура и прочие величины, не
зависящие от системы координат. Компонента вектора уже не является скаляром - она
меняется при смене базиса.
О ранге тензоров и типе из компонент мы поговорим чуть позже, а пока перейдем к
следующему животрепещущему вопросу.
15
~c · ~e1 = a2 b1 [~e1 · (~e2 × ~e1 )] + a3 b1 [~e1 · (~e3 × ~e1 )] + a1 b2 [~e1 · (~e1 × ~e2 )] +
+ a3 b2 [~e1 · (~e3 × ~e2 )] + a1 b3 [~e1 · (~e1 × ~e3 )] + a2 b3 [~e1 · (~e2 × ~e3 )]
Так, а теперь вспоминаем, что ~c·~e1 = c1 - ковариантная компонента вектора ~c. Ну и наконец
переставим векторы в векторном произведении первого слагаемого, добавив минус как и
положено по правилу векторного произведения
Выражения (2.11) - (2.13) очень напоминают формулы для расчета проекций векторно-
го произведения из курса векторной алгебры, с точностью до множителя со смешанным
произведением. Но мы-то работаем не в декартовом базисе, естественно ожидать неко-
торое отличие. Кстати, а что это за множитель? Ведь смешанное произведение векторов
имеет геометрический смысл... Это же... объем параллелепипеда, натянутого на векторы
в нем участвующие. А объем параллелепипеда, натянутого на базис это ведь корень из
определителя метрического тензора! То есть
√
[~e1 · (~e2 × ~e3 )] = [~e2 · (~e3 × ~e1 )] = [~e3 · (~e1 × ~e2 )] = V = g (2.14)
16
Их будет 27, но большинство из них, а именно 21 равны нулю. Это те компоненты, ин-
дексы которых повторяются хотя бы один раз. Ненулевых компоненты только шесть, они
√
соответствуют неповторяющимся индексам. По модулю они равны g, но три из них поло-
жительны, другие три отрицательны. В формулах (2.11) - (2.13) мы переставили векторы
местами и добавили минусы, чтобы сделать коэффициенты при диадах положительными
а сами формулы похожими на привычные нам по курсу векторной алгебры. Теперь вернем
всё на свои места
Знак смешанных произведений зависит от порядка индексов: в наборах (1, 2, 3), (2, 3, 1),
(3, 1, 2) они положительны, в наборах (1, 3, 2), (2, 1, 3) и (3, 2, 1) - отрицательны. Известно,
что если векторы заданы в правой системе координат, то их смешанное произведение будет
положительно, если они образуют правую тройку векторов. В первых слагаемых (2.16) -
(2.18) фигурируют правые тройки векторов базиса. Во вторых слагаемый в смешанном
произведении участвуют те же векторы, но взятые как левая тройка.
Как определить, какую тройку дают базисные векторы? Очень просто, ведь они упо-
рядочены, им присвоены номера 1, 2, 3. Если мы соблюдаем порядок следования векторов,
мы получаем тройку, соответствующую используемой системе координат, то есть (1, 2, 3)
- правая тройка.
А если первым мы берем вектор 2? То за ним должен следовать вектор 3, по поряд-
ку. А какой следующий? А следующий вектор 1, начинаем всё сначала, но не нарушая
порядка следования векторов, то есть и (2, 3, 1) - правая тройка, ну и (3, 1, 2) - тоже пра-
вая тройка. Говоря языком комбинаторики - базисные векторы в упорядоченной тройке
образуют четную перестановку (то есть не нарушающую порядок следования элементов).
Если порядок следовая векторов в тройке обратный принятому, то их перестановка будет
нечетной. Таким образом перестановки (3, 2, 1), (2, 1, 3), (1, 3, 2) - нечетные, а тройки
векторов - левые.
Используя всё вышесказанное, введем функцию
+1, если (i, j, k) − четная перестановка
P (i, j, k) = (2.19)
−1, если (i, j, k) − нечетная перестановка
√
+ g, P (i, j, k) = +1
√
εijk = − g, P (i, j, k) = −1 (2.20)
0, i = j ∨ j = k ∨ k = i
17
для правой системы координат, и
√
− g, P (i, j, k) = +1
√
εijk = + g, P (i, j, k) = −1 (2.21)
0, i = j ∨ j = k ∨ k = i
Таким образом - векторное произведение, это свертка диады тензором Леви-Чивиты, да-
ющая на выходе ковектор - то есть вектор, заданный ковариантными компонентами.
А теперь вспомним, что скалярное произведение можно расписать как тензорное произ-
ведение ковектора на вектор
gij ai bj = ai bj
εijk bj ck = fi ⇒ v = fi ai = εijk bj ck ai
v = εijk ai bj ck (2.25)
18
2.5. Ранг тензора. Ковариантные и контрвариантные
компоненты
Итак, в процессе разбора векторных операций мы пришли к выводу, что тензоры - это
математические объекты, обобщают свойства и операции над многими, известными нам
математическими объектами. Тензорами являются и скаляры и векторы. Различаются они
рангом и количеством ковариантных и контрвариантных компонент. Ранг равен общему
числу индексов тензора, а обозначается он парой целых чисел в скобках (p, q), где p -
число контравариантных индексов, q - число коваринатных индексов. Говорят что Tqp -
p-раз контрвариантный и q-раз ковариантный тензор ранга p + q.
1. Тензор ранга (0, 0) - это скаляр, величина, значение которой может быть выражено
одним числом, со значением инвариантным относительно смены системы координат.
У скаляра нет индексов, и он вообще не преобразуется при смене базиса. Но, повто-
римся, не всякое число есть скаляр. Так например, компонент вектора или тензора
не есть скаляр, ибо он изменяется при смене базиса.
ãi = αji aj
det |gij | 6= 0
ai = gij aj , ai = g ij aj
19
c = ai b i
ãi = αij aj
4. Тензор ранга (0, 2) - билинейная форма, примером которой может служить дважды
ковариантный метрический тензор gij . Компоненты метрического тензора преобра-
зуются путем двукратного применения к нему линейного оператора преобразования
координат.
5. Тензор ранга (2, 0) - примером может служить диада (2.8). Вообще, все тензоры
рангов (k, 0) называются поливекторами или полиадами (триады, тетрады и т.д.),
и образованы они как линейные комбинации тензорных произведений соответству-
ющего количества векторов. Их компоненты преобразуются соответствующим рангу
количеством применения линейных операторов, преобразующих исходные векторы.
6. Тензор ранга (1, 1) - линейный оператор. Примером может служить матрица пово-
рота или любого другого преобразования координат вектров и ковекторов. Вообще,
применение линейного оператора сводится к операции матричного умножения
bi = αji aj (2.26)
0 0
ai = sij a j , bi = sij b j (2.27)
0 0
spq b q = αkp ( skj a j ) (2.28)
0 0
b q = (s̃qp αkp skj ) a j (2.29)
20
где s̃pq - компоненты матрицы S −1 . С другой стороны, для векторов в новом базисе
справедливо
0 0 0
b q = αjq a j (2.30)
0
αjq = s̃qp αkp skj (2.31)
Все перечисленные объекты обладают общностью свойств: имеют набор компонент и пра-
вило преобразования при смене базиса.
Выводы
21
3. Криволинейные координаты
Введение
Читая отзывы к своим статьям, понял, что я излишне перегрузил читателя теоретиче-
скими вводными. Прошу за это прощения, признаться честно, я сам далек от формальной
математики.
Однако, тензорное исчисление пестрит понятиями, многие из которых требуется вво-
дить формально. Поэтому третья статься цикла тоже будет посвящена сухой теории. Тем
не менее, я обещаю, что в следующей работе приступлю к тому, к чему сам давно хотел -
к описанию практической ценности тензорного подхода. На примете имеется интересная
задача, большая часть которой в моей голове уже разобрана. Тензорное исчисление для
меня не праздный интерес, а способ обработать некоторые из своих теоретических и прак-
тических соображений в области механики. Так что практика по полной программе ещё
предстоит.
А пока что рассмотрим некоторые теоретические основы. Добро пожаловать под кат.
22
x3
~e3 ~a
~e2
~e1
~r
~e30
~e10 ~e20 x2
x1
~r = ~r q 1 , q 2 , q 3
(3.2)
xi q 1 , q 2 , q 3
(3.3)
∂~r
Рассмотрим частную производную . Результат такого дифференцирования - это
∂q 1
вектор, направленный по касательной к координатной линии q 1 . Дифференцируя (3.2) по
всем криволинейным координатам получим тройку векторов
23
∂x1 ∂x1 ∂x1
" # ∂q 1 ∂q 2 ∂q 3
∂~r ∂~r ∂~r ∂x2 ∂x2 ∂x2
J= = (3.5)
∂q 1 ∂q 2 ∂q 3
1
∂q ∂q 2 3
∂q
3
∂x ∂x3 ∂x3
∂q 1 ∂q 2 ∂q 3
которая называется матрицей Якоби, и по сути определяется как производная от одного
вектора по другому вектору. В нашем случае
∂~r
J= (3.6)
∂~q
Легко догадаться, что если функция (3.2) линейна относительно компонент вектора ~q, то
её можно выразить матричным соотношением
~r = A01 ~q (3.7)
J = A01 (3.8)
Теперь, любой вектор, заданный в пространстве (тензор ранга (1, 0)) можно представить
через его контравариантные компоненты в криволинейной системе координат
∂~r
~a = ai ~ei = ai (3.9)
∂q i
Однако, компоненты вектора, из-за переменного базиса, будут зависеть от положения в
пространстве точки приложения вектора. Кроме того, для того чтобы представление (3.9)
существовало, надо чтобы векторы, составляющие базис были не компланарны. Из курса
векторной алгебры нам известно, что векторы некомпланарны, если их смешанное про-
изведение отлично от нуля. Отсюда возникает условие, которому должен удовлетворять
определитель матрицы Якоби
det(J) 6= 0 (3.10)
∂~r ∂~r
~a = ai = ~a · ~e1 = ai (~ei · ~e1 ) = ai · (3.11)
∂q i ∂q i
В той же, первой статье, мы определили, что ковариантные компоненты вектора связаны
24
с контравариантными через метрический тензор gij
aj = ai gij (3.12)
∂~r ∂~r
gij = · (3.13)
∂q i ∂q j
которое можно представить в матричной форме
g = JT J (3.14)
Эту связь можно представить и в тензорной форме, но для этого придется ввести явно
метрику для декартовых координат ĝkl
1 0 0
ĝkl = 0 1 0 (3.15)
0 0 1
Тогда, преобразование декартовой метрики в криволинейную будет выглядеть так
Выражение (3.16) вводит метрический тензор для криволинейных координат. Этот тензор
зависит от положения точки в пространстве, поэтому говорят что он задан локально или
определяет локальную метрику
Определившись с метрикой, мы можем записать правила преобразования контравари-
антных координат в ковариантные
aj = gij ai (3.17)
ak = ai g ik (3.18)
det |gij | =
6 0 (3.19)
Данное условие выполняется для криволинейных координат, если матрица Якоби не вы-
рождена, и это непосредственно следует из (3.16), так как
25
det |gij | = det |Jik Jjl gkl | = det |Jik | det |Jjl | = J 2 6= 0 (3.20)
то есть условие (3.10) выполняемое для всех точек пространства - достаточное условие
невырожденности локальной метрики.
Рассмотрение вырожденнных метрик, это отдельный и сложный вопрос, поэтому мы
ограничимся метриками, в которых матрица метрического тензора обратима, то есть вы-
полняется условие
где
1, i=j
δij = (3.22)
0, i 6= j
единичный тензор, называемый дельтой Кронекера. Видно, что его компоненты пред-
ставлены единичной матрицей с размерностью, соответствующей размерности простран-
ства.
~e j = g ji ~ei (3.23)
но, мы знаем, что ~ei · ~ek = gik - метрический тензор, поэтому, приходим к уравнению
~e j · ~e k = g ji ~ei · ~e k (3.27)
26
и в силу (3.26) это дает контравариантный метрический тензор
~e j · ~e k = g jk (3.30) (3.28)
.
Снова рассмотрим вектор ~a. Из соотношений (3.18) и (3.23) следует цепочка преобра-
зований
~a = ai ~e i = aj g ji ~e i = aj ~e j (3.30)
~a · ~e k = aj ~e j · ~e k = aj g jk = ak (3.31)
приходим к заключению, что любой вектор может быть разложен как по базису ~e i - тогда
его компоненты будут контравариантные, так и по базису ~e i - компоненты будут ковари-
антными
~a = ai ~e i = ai ~e i (3.32)
ai = ~a · ~e i , ai = ~a · ~e i (3.33)
27
pi = pi (q 1 , q 2 , q 3 ) (3.34)
q i = q i (p1 , p2 , p3 ) (3.35)
∂pi
Aij = (3.36)
∂q j
был отличен от нуля
det |Aij | =
6 0 (3.37)
Матрица Bji является матрицей Якоби для преобразования (3.35). Тогда можно вычислить
векторы нового базиса
0
~ei = ~ek Bik (3.40)
0
~ei = ~ek Aki (3.41)
0 0
~a = a i ~e i (3.42)
0
~a = a i Bik~e k = ak ~e k (3.43)
0
ak = a i Bik (3.44)
28
0
ak Ajk = a i Bik Ajk (3.45)
Учтем, что
0
ak Ajk = a i δij = aj (3.47)
0
a j = ak Ajk (3.48)
0 0
aj = ~a · ~ej = ~a · ~ej Bij = aj Bij (3.49)
29
∂~a ∂ i ∂ai ∂~ei
j
= j
(a ~
e i ) = j
~ei + ai j (3.50)
∂q ∂q ∂q ∂q
На каком основании мы выписали производную от базисного вектора? А на том основании,
что базис в криволинейных координатах зависит от них, а значит его производная от
координаты отлична от нуля. Ну и ладно, эта производная тоже будет вектором, а значит
её можно разложить по локальному базису, например вот так
∂~ei
j
= Γkij ~ek (3.51)
∂q
Найдем коэффициенты разложения в (3.51). Для этого, возьмем ковариантный метриче-
ский тензор и продифференцируем его по указанной координате
∂gij
k
= Γm em · ~ej ) + Γm
ik (~ em · ~ei )
jk (~ (3.53)
∂q
Здесь очевидно присутствие компонент метрического тензора, поэтому выполняем замену
∂gij
k
= Γm m
ik gmj + Γjk gmi (3.54)
∂q
Прежде чем начать работать с (3.54), скажем, что искомые коэффициенты разложения
симметричны относительно нижних индексов, так как проведя прямое дифференцирова-
ния базисного вектора приходим к выражению
∂~ei ∂ 2~r
= = Γkij ~ek (3.55)
∂q j ∂qi ∂qj
откуда, в силу непрерывности рассматриваемых функций, заключаем, что
∂gkj
i
= Γm m
ki gmj + Γji gmk (3.57)
∂q
А теперь, переставим в (3.54) индексы j и k
∂gik
= Γm m
ij gmk + Γkj gmi (3.58)
∂q j
Теперь сложим (3.57) и (3.58) учтя при этом симметричность (3.56)
∂gkj ∂gik
+ = Γm m m m
kj gmj + Γij gmk + Γji gmk + Γkj gmi (3.59)
∂q i ∂q j
30
∂gkj ∂gik
+ = Γm m m
kj gmj + 2 Γij gmk + Γkj gmi (3.60)
∂q i ∂q j
Вычитаем (3.54) из (3.60), снова учитывая (3.56)
1
Умножаем (3.62) на g mk , и получаем окончательно
2
1 ∂gkj ∂gik ∂gij
Γm
ij = g mk + − k (3.63)
2 ∂q i ∂q j ∂q
Выражение (3.63) определяет так называемый символ Кристоффеля 2-го рода. Тогда
∂am ∂am
∂~a
= · ~em + ai Γm
ij ~
em = + ai Γm
ij · ~em (3.64)
∂q j ∂q j ∂q j
∂am
m
∇j a = + ai Γm
ij (3.65)
∂q j
Заключение
31
Часть 4. Динамика точки в тензорном изложении
Введение
Итак, настал момент применить на практике всё то, о чем мы так долго рассуждали теоретически . Данная
заметка будет использовать в основном материал предыдущей статьи , в которой есть ссылки на
предыдущие публикации по тензорной тематике.
А заниматься мы будем механикой . Именно решение задач механики и побудило меня разбираться с
тензорным исчислением. И поговорим мы об уравнениях Лагранжа 2 рода, которые применяются для
анализа движения сложных механических систем. Эти уравнения имеют вид, хорошо известный
большинству специалистов в данной области
Тем не менее это можно сделать, если опираться на тензорное исчисление, в общем и не прибегая к
дифференцированию кинетической энергии (хотя такой подход тоже возможен ). И мы сделаем это в
данной статье, правда пока только для точки , и заодно решим какую-нибудь не слишком сложную задачку,
иллюстрирующую эффективность рассмотренного подхода.
Если функция (1) задана, то говорят, что задан закон движения точки. Зная закон движения точки можно
получить её скорость и ускорение
Радиус-вектор, скорость и ускорения - это векторы, а значит будем рассматривать их как тензоры ранга
(1,0). Кроме того, мы не будем использовать декартову систему координат. Будем использовать
криволинейные координаты
Число степеней свободы тела - разность между число зависимых координат n, однозначно
задающих положение тела в пространстве и числом уравнений наложенных на тело связей r
Число координат, которым задается положение точки в пространстве n = 3. Если движение точки не
ограничено связями , то число степеней свободы будет так же равно трем.
Если же точка движется по некой поверхности , то её движение ограничено - поверхность и есть связь,
налагающая условия на декартовы координаты точки . Это условие - уравнение поверхности по которой
движется точки и есть уравнение связи . Число степеней свободы такой точки s = 2. Число обобщенных
координат тоже будет равно двум - это будут криволинейные координаты, отсчитываемые вдоль
поверхности .
Если точка движется по некоторой кривой , то на неё наложено уже две связи - кривая в пространстве
задается как линия пересечения двух поверхностей . Число степеней свободы такой точки s = 1, а
обобщенная координата - одна - длина дуги , которую прошла точка по кривой .
Таким образом, координаты (3) автоматически учитывают геометрию наложенных на точку связей , что в
аналитической механике позволяет исключить из уравнений движения реакции связей .
Будем называть (3) законом движения точки . Зная закон движения, получим векторы скорости и ускорения
точки . Продифференцируем по времени радиус-вектор точки
Напомню, что в (4) работает правило Эйнштейна и в правой части выражения производится суммирование
Это понятие является базовым в аналитической механике. Рассмотрим движение несвободной точки
(рисунок 2). Пусть точка движется по поверхности. Её координаты, могут принимать только такие
значения, при которых все точки траектории расположены на данной поверхности . Такие координаты
называют кинематически возможными , они связаны между собой уравнением поверхности . В этом случае
удобно выбрать криволинейные координаты , которые будут учитывать то, что точка не покидает
поверхности (условия освобождения от связи мы в данном случае не рассматриваем). Как мы говорили
выше, такие координаты называют обобщенными .
Рис. 2. Возможное перемещение несвободной точки .
Проварьируем обобщенные координаты, то есть добавим к закону изменения координат бесконечно малую
функцию , называемую вариацией обобщенной координаты
Допустим идеальность наложенных на точку связей , что означает, что их реакции не совершают работы на
возможном перемещении точки
Это, в принципе, можно допустить всегда. При наличие неидеальных связей , их реакции при
определенных условиях можно перевести в разряд активных сил, что усложняет задачу, но не является
принципиальным затруднением. Аналитическая механика оперирует данным допущением, мы пойдем тем
же путем, положив справедливость (14) и приходя к уравнению
Теперь, как предлагается в соотношении (11), разложим возможное перемещение через вариации
обобщенных координат (подразумевая суммирование по повторяющимся индексам)
В выражении (15) слева стоят ковариантные проекции ускорения точки , а справа - ковариантные проекции
равнодействующей активных сил
В аналитической механике называют обобщенной активно силой . Исходя из (15) мы заключаем, что
обобщенная сила есть ковариантная компонента равнодействующей активных сил.
В силу независимости вариаций обобщенных координат, коэффициенты при них можно приравнять,
получив s (по числу обобщенных координат) уравнений
Вам ничего не напоминает полученное уравнение (18)? Это очень похоже на уравнения движения,
которые получаются после взятия всех производных в уравнениях Лагранжа 2 рода. Более того, это и есть
уравнения Лагранжа 2 рода - к уравнениям (18) можно придти дифференцируя кинетическую энергию,
выразив её через контравариантные компоненты вектора скорости .
Похожим образом в аналитической механике выводят уравнения Лагранжа 2 рода, опираясь на выражение
подобное (15), которое по сути есть общее уравнение динамики , записанное в обобщенных силах. Кроме
того, уравнение (15) инвариантно относительно преобразования координат, ибо его левая и правая часть -
скалярные произведения векторов . А скалярное произведение, как мы помним, есть инвариант
относительно изменения базиса.
метрика для которых известна (можно посмотреть тут, а можно и получить, но это довольно тривиально)
Для полярных координат нетрудно найти и символы Кристоффеля 2 рода. Пять из них равны нулю, и
только три имеют ненулевые значение
Так как сила направлена радиально, то в любой точке рассматриваемой плоскости она направлена вдоль
вектора и перпендикулярно вектору , и исходя из того, что обобщенная сила определяется скалярным
произведением вектора равнодействующей на соответствующий базисный вектор, можно написать
Данное уравнение известно как дифференциальное уравнение Бине движения точки в центральном поле.
Если движение происходит под действием Ньютоновского тяготения, то
Заключение
В данной статье показан подход к использованию тензорных соотношений применительно к динамике
материальной точки , движение которой может быть описано произвольными обобщенными координатами .
Полученные уравнения непосредственно вытекают из общих принципов аналитической механики и
равноценны уравнениям Лагранжа 2 рода.
Данный подход может быть применен к описанию движения механической системы. Но об этом я
расскажу чуть позже, а пока что спасибо всем кто прочел этот труд за внимание.
Продолжение следует…
Часть 5. Действия над тензорами и некоторые
другие теоретические вопросы
Введение
Прежде чем продолжать рассказ о прикладных аспектах применения тензорного исчисления, совершенно
необходимо затронуть ещё тему, обозначенную заголовком. Эти вопросы всплывали в неявной форме во
всех предыдущих частях частях цикла. Однако, мной были допущены некоторые неточности , в частности
тензорные формы записи скалярного и векторного произведения в статьях 1 и 2 были названы мною
«сверткой», хотя на деле они являются комбинацией свертки и умножения тензоров . О сложении,
умножение тензоров на число, о тензорном произведении упоминалось только вскользь. О симметричных,
антисимметричных тензорах вообще речи не шло.
В этой заметке мы поговорим о тензорных операциях более подробно. Для дальнейших упражнений нам
потребуется хорошо в них ориентироваться.
Складывать же, можно только тензоры, имеющие одинаковый ранг . В бескомпонентной записи линейная
комбинация тензоров выглядит так
где - скаляры. Если перейти к компонентной записи, то, например, для тензоров второго ранга данная
операция выглядит следующим образом
С тензорным произведением мы уже сталкивались во второй статье, рассматривая диаду. Вернемся к этому
ещё раз, перемножив два вектора
Из последних примеров , в частности видно, что в общем случае тензорное произведение не коммутативно
что очень легко проверить, выписав умножение в компонентной форме и выписав матричное
представление диады
Для тензоров второго ранга возможно лишь одна перестановка, называемая транспонированием
1.4. Свертка
Сверткой называется суммирование компонент тензора по какой -либо паре индексов . Это действие
выполняется над одним тензором и на выходе дает тензор с меньшим на два. Скажем, для тензора второго
ранга, свертка дает скаляр, называемый , первым главным инвариантом или следом тензора
Свертка всегда производится по паре разновариантных индексов (один индекс должен быть верхним, а
другой нижним).
Очень часто свертку комбинируют с произведением тензоров . Иногда такую комбинацию называют
внутренним произведением тензоров . При этом тензоры сначала перемножают, а потом сворачивают
получившийся тензор суммарного ранга. Примером может служить, использованная нами ранее запись
скалярного произведения
Точка, напоминающая скалярное произведение, в безиндексной записи как раз и означает совмещение
умножения со сверткой . Свертка производится по соседей с точкой паре индексов . Покажем весь процесс
развернуто. Из ковектора и вектора умножением образуем тензор ранга (1,1)
или
Однако не стоит считать эту точку скалярным произведением, поскольку, например вот такая операция
Если тензор не меняется при перестановке любых двух индексов , то он является абсолютно
симметричным
Если тензор меняет знак при перестановке любых двух индексов , то он является абсолютно
антисимметричным
и антисимметричность
Если говорить о тензорах второго ранга, то если таковой тензор симметричен , то он же и абсолютно
симметричен . Это же касается и антисимметричного тензора второго ранга. Эти свойства следуют
непосредственно из данных нами определений - у тензора второго ранга всего одна пара индексов .
данное условие выполнимо только в том случае, если диагональные компоненты тензора - нули , так как
при перестановке индексов (и транспонировании матрицы компонент) диагональные компоненты
переходят сами в себя. А единственное число, противоположное самому себе это ноль. Компоненты
симметричные относительно главной диагонали имеют противоположные знаки .
Таким образом, из девяти компонент антисимметричного тензора второго ранга только три являются
независимыми (речь идет, разумеется, о трехмерном пространстве). Три независимые компоненты
образуют вектор (или ковектор). Логично предположить, что может существовать некий вектор, который
однозначно зависит от данного антисимметричного тензора. Попробуем найти такой вектор.
Вспомним о тензоре Леви -Чивиты, о котором я уже подробно писал тут, и построим такой тензор
Минус в (2) вылез из-за того, что тензор Леви -Чивиты - абсолютно антисимметричный тензор третьего
ранга. Перестановка индексов в нем, ведет к перестановке векторов базиса, на смешанном произведении
которых построен данный тензор. Таким образом тензор (1) действительно антисимметричный . Тогда мы
можем легко найти вектор
Примечание : о том, откуда взялись в (3) две дельты Кронекера можно прочитать в восьмой статье цикла.
или , если представить матрицу компонент антисимметричного тензора , то перед нами предстанет такая
запись
Заметим ещё один факт, не упомянуть который нельзя, но оставив строгое доказательство за рамками
данной статьи (к этому мы вернемся несколько позже). Если тензор /> является истинным тензором, то
соответствующий ему вектор (3) является псевдовектором или аксиальным вектором. Псевдовектор
преобразуется как и вектор при повороте координатных осей , но при смене базиса с правого на левый (или
с левого на правый ) - меняет своё направление на противоположное (все его компоненты меняют знак).
Если же в (1) вектор - истинный вектор, то образованный из него антисимметричный тензор является
псевдотензором - компоненты такого тензора преобразуются так же как и компоненты истинного тензора
при повороте осей системы координат, но меняют знак на противоположный при смене ориентации
базиса.
Теперь покажем, что симметричный тензор не имеет соответствующего ему псевдовектора, вернее этот
псевдовектор - нулевой . Допустим, нам дан симметричный тензор , то есть справедливо равенство
То есть, если мы умножим симметричный тензор на тензор Леви -Чивиты с последующей сверткой по двум
парам индексов , мы получим нулевой вектор. Если мы проделаем аналогичное с произвольным тензором
второго ранга
Заключение
Получилось еще одно погружение в теорию тензорного исчисления. Но погружение несомненно нужное,
ибо результаты, собранные в данной статье мы используем в дальнейших статьях цикла. Спасибо
читателям за проявленное внимание!
Продолжение следует…
Часть 6. Кинематика свободного твердого тела.
Природа угловой скорости
Введение
Что такое угловая скорость? Скалярная или векторная величина? На самом деле это не праздный вопрос.
Угловая скорость твердого тела - это первая производная от угла поворота тела по времени
А вот потом, при рассмотрении каноничной формулы Эйлера для скорости точки тела при вращении
Угловая скорость тела - это псевдовектор, направленный вдоль оси вращения тела в ту сторону,
откуда вращение выглядит происходящим против часовой стрелки
Ещё одно частное определение, которое, во-первых, утверждает неподвижность оси вращения, во-вторых
навязывает рассмотрение лишь правой системы координат. И наконец термин «псевдовектор» обычно
объясняется студентам так: «Посмотрите, ведь мы показали , что омега - скалярная величина. А вектор мы
вводим для того, чтобы выписать формулу Эйлера».
При рассмотрении сферического движения оказывается потом, что ось вращения меняет направление,
угловое ускорение направлено по касательной к годографу угловой скорости и так далее. Неясности и
вводные допущения множатся.
Но мы с вами заглянем, что называется, «под капот» проблемы и , вооружившись аппаратом тензорного
исчисления, выясним, что угловая скорость - это псевдовектор, порождаемый антисимметричным
тензором второго ранга.
Если движение, совершаемо телом не ограничено связями , то такое его движение называют
свободным
Это - самый общий случай движения тела. Следующий рисунок иллюстрирует тот факт, что свободное
движение тела можно представить как сумму двух движений : поступательного вместе с полюсом и
сферического вокруг полюса.
Рис. 1. Обычная иллюстрация из курса теоретической механики : определение положения свободного
твердого тела в пространстве.
Напомню, что речь идет об абсолютно твердом теле, то есть теле, расстояния между точками которого не
изменяется с течением времени . Ещё можно сказать, что твердое тело представляет собой неизменяемую
механическую систему.
Как видно из рисунка 1, обычной практикой является рассмотрение двух систем координат - одна
считается неподвижной и называется базовой, другая жестко связанна с телом и
поворачивается относительно базовой вместе с ним. Такую систему координат называют связанной.
Сначала я тоже хотел ограничиться декартовыми координатами . Но тогда бы мои читатели задали бы мне
логичный вопрос - «а зачем тогда тут тензоры?». Поэтому, потратив четыре для в мучительных раздумьях
и «нагуляв » окончательное решение пару часов назад, я решил замахнуться на «Вильяма, нашего,
Шекспира» и изложить дальнейшие рассуждения в криволинейных координатах.
Рис. 2. Ориентация твердого тела в локальном базисе.
Причем под этим вектором не следует понимать радиус-вектор, так как в криволинейных координатах
такое понятие бессмысленно.
В точке O1 задан локальный репер базовой системы координат, образованный тройкой векторов
. С движущимся телом связан подвижный репер . Поворот связанного репера
относительно базового можно задать линейным оператором. Получим этот оператор и исследуем его
свойства
Рассмотрим некоторую точку M, принадлежащую телу. К ней из полюса можно провести вектор
неподвижный относительно связанного репера. Его можно разложить по векторам этого репера
Каждый вектор связанного репера можно разложить через векторы базового репера
Из (5) понятно, что компоненты вектора в базовой системе координат, пересчитываются через его
компоненты в связанной системе путем применения линейного оператора
действует на векторы таким образом, что поворачивает их относительно некоторой оси , не меняя длины и
угла между векторами . Такое преобразование пространства называется ортогональным. Для того, чтобы
таковое преобразование было возможным, оператор (7) должен обладать вполне определенными
свойствами . Если длина векторов базиса и углы между ними не меняются, то это означает равенство всех
попарных скалярных произведений векторов репера как в базовой , так и в связанной системах координат
или
Оператор является по сути обыкновенной матрицей поворота координатной системы. И (10) утверждает,
что если транспонированную матрицу поворота умножить на метрический тензор, а результат умножить
на матрицу поворота мы получим снова метрический тензор. Можно сделать вывод, что
В выражении (10) нетрудно увидеть преобразование метрического тензора про смене системы координат, о
котором мы подробно говорили в самой первой статье цикла
Стоп ! Но мы же знаем, что матрицы поворота обычно ортогональны, то есть произведение матрицы
поворота на её транспонированную дает единичную матрицу, иными словами , чтобы обратить матрицу
поворота её достаточно транспонировать.
Для дальнейших вычислений нам потребуется знать, как будет выглядеть матрица обратного
преобразования, то есть . Что же, посмотрим. Для этого умножим (10) слева на и справа на
Закон свободного движения твердого тела можно выписать в криволинейных координатах в виде системы
уравнений
При этом (12) - закон движения полюса, а (13) - закон сферического движения тела вокруг полюса. При
этом (13) - тензор ранга (1,1), называемый тензором поворота.
Из курса теоретической механики известна формула, определяющая скорость точки тела в данном
движении
Индекс в круглых скобках означает систему координат, в которой берутся компоненты (0 - базовая, 1 -
связанная). Дифференцируем (15) по времени с учетом (13)
Теперь представим себе, как выглядел бы ковектор скорости точки относительно плюса, записанный через
вектор угловой скорости
антисимметричный тензор второго ранга, о котором мы говорили в прошлой статье<. Таким образом, нам
бы доказать, что
является антисимметричным тензором второго ранга. Для этого придется доказать, что (19) меняет знак
при перестановка индексов (транспонировании ). При этом будем учитывать, что метрический тензор -
абсолютно симметричный тензор второго ранга и при транспонировании он не меняется. Поэтому
исследуем взаимосвязи между матрицами поворота, для чего нам потребуются выражения (10) и (11). Но
прежде чем приступить, докажем ещё одно вспомогательное утверждение
Обратимся к понятию ковариантной производной вектора, о которой упоминалось в третьей статье. Тогда
мы вывели выражения для контравариантных компонент ковариантной производной от вектора
Как как и любой вектор, компоненты данного вектора можно трансформировать в ковариантные
умножением и сверткой с метрическим тензором
Сравнивая (21) и (20) мы приходим к выводу, что равенство возможно лишь в случае если верно
утверждение леммы
Далее, нам нужна связь между оператором поворота и его производной - дифференцируем (10) по времени
Но, производные от метрического тензора в (24) будут равны нулю, в силу равенства нулю ковариантной
производной метрического тензора. Значит правая часть (24) равна нулю
Таким образом мы приходим к выводу, что (19) и (23) есть ни что иное как антисимметричный тензор
угловой скорости
Возможно, внимательный читатель увидит, что в полученной матрице знаки противоположны тем, что мы
получали в статье, посвященной антисимметричным тензорам. Да, все верно, ведь в той статье мы
сворачивали вектор с тензором Леви -Чивиты по его третьему индексу k, тут мы выполняем свертку по
среднему индексу j что дает прямо противоположные знаки .
Матрица (30) частенько встречается в литературе, в частности в трудах Д. Ю. Погорелова, но там она
вводится как мнемоническое правило. Формула (29) дает четкую связь между вектором угловой скорости и
кососимметричной матрицей . Она же дает возможность перейти от (28) к формуле
Заключение
В этой статье было много математики . И я вынужден пока ограничится этим материалом - статья вышла
длинной и насыщенной формулами . Данная тема будет продолжена и углублена в следующих статьях
цикла.
Угловая скорость твердого тела есть антисимметричный тензор, или , соответствующий ему
псевдовектор, порождаемый тензором поворота тела относительно базовой системы координат
Для того чтобы написать эту работу потребовалось перелопатить гору литературы. Основные выкладки
выполнены автором самостоятельно. Камнем преткновения были матрицы поворота для случая
косоугольных координат. Я не сразу разглядел в соотношении (10) преобразование, оставляющее метрику
инвариантной , хотя с учетом ранее написанных статей - следовало бы. Понять эту связь мне помог
ужасный по оформлению, но очень толковый сайт «На что похожа математика». Кстати видно, что все
соотношения переходят в известные для ортогональных матриц , если метрический тензор сделать
единичным.
Разговор о механике твердого тела будет продолжен , а пока - всё. Спасибо за внимание!
Продолжение следует…
Часть 7. Конечный поворот твердого тела. Свойства тензора
поворота и способ его вычисления
Введение
В этой статье мы продолжим тему, начатую предыдущей публикацией . В прошлый раз мы, с помощью тензоров , выявили природу угловой
скорости и получили уравнения общего вида, позволяющие её рассчитать. Мы пришли к тому, что она естественным путем выводится из
оператора поворота связанной с телом системы координат.
А что внутри этого оператора? Для случая декартовых координат легко получить матрицы поворота и легко обнаружить их свойства, связав с
ними какой -нибудь способ описание ориентации тела, например углы Эйлера или Крылова. Или вектор и угол конечного поворота. Или
кватернион . Но это для декартовых координат.
Начав говорить о тензорах мы отреклись от декартовых координат. Тем хороша тензорная запись, что она позволяет составить уравнения для
любой удобной системы координат, не зацикливаясь на её свойствах. И проблема в том, что для, например косоугольных координат,
матрицы поворота, даже для плоского случая, крайне сложны. Мне хватило проверки их вида для простого поворота в плоскости .
Так что задача этой статьи - не заглядывая внутрь тензора поворота исследовать его свойства и получить тензорное соотношение для его
расчета. А раз задача поставлена, то начнем её решать.
4. Если , то матрица алгебраических дополнений и союзная матрица, построенные из подобны этой и её транспонированной
матрице, а преобразованием подобия является метрический тензор
5. Если , то собственные числа матрицы поворота по модулю равны единице и имеют вид
где
6. Если - собственный вектор матрицы поворота, соответствующий комплексному собственному числу, то справедливо соотношение
Следствие: действительная и мнимая части собственного вектора , соответствующего комплексному собственному числу, являются
ортогональными векторами
где .
Доказательства свойств в основном тексте приводить не буду - статья и так обещает быть объемной . Эти доказательства не слишком сложны,
но для интересующихся ими сделан нижеследующий спойлер.
Свойства 1 и 3 мы доказали в предыдущей статье. Свойство 2 доказывается из свойства 1 тривиально, опираясь на свойства определителя
матричного произведения
Свойство 4 вытекает из аналитического способа вычисления обратной матрицы. , то
где - союзная матрица (транспонированная матрица алгебраических дополнений). Транспонируя (1), пользуясь симметричностью
метрического тензора, получаем
где - матрица, составленная из алгебраических дополнений матрицы поворота. Соотношения (1) и (2) - это соотношения подобия. Следы
подобных матриц одинаковы
Докажем свойство 5. Пусть - собственное число матрицы поворота, которому соответствует собственный вектор . Тогда
с учетом свойства 3
Выполняем комплексное сопряжение, учитывая, что матрица поворота и метрический тензор имеют действительные компоненты и их
сопряжение сводится к транспонированию
то есть
вычисляя определитель, приходим к общему виду этого уравнения (для матрицы размерности (3 х 3))
Вводим обозначение
которая правомерна, ибо, полагая корни , в общем случае комплексно-сопряженными , по теореме Виета имеем
Так как
то, очевидно
полученное при доказательстве равенства единице модуля собственного значения. Теперь, вместо комплексного сопряжения, транспонируем
его, учитывая свойства операции транспонирования матричного умножения
Теперь умножим полученное уравнение на число комплексно-сопряженное собственному значению, учитывая что его модуль равен единице
в котором скобка, в силу комплексности собственного числа нулю не равна, так как
Тогда справедливо
Во-первых, я полностью сформулировал их, для того, чтобы читатель мог увидеть, чем матрица поворота криволинейной системы координат
отличается от матрицы поворота декартовой системы. Практически ни чем, свойства этих матриц схожи . Если в вышеприведенных
выражениях положить матрицу метрического тензора единичной , то получаются свойство ортогональной матрицы поворота, почитать о
которых можно, например у Д. Ю. Погорелова. Собственно данная книга сообщила мне, куда надо копать, чтобы рассмотреть задачу в общем
виде.
Во-вторых, и это главное, мы докажем, что собственные векторы и собственные значения этих матриц имеют механический смысл. Для
начала докажем лемму
Пусть - собственный вектор, соответствующий действительному собственному числу тензора поворота, а - соответствует
, причем . Пусть, так же, векторы и действительная и мнимая часть . Тогда векторы , и
образуют тройку ортогональных векторов
Выражение в скобках - комплексное число, отличное от нуля. Значит верно утверждение (1) и рассматриваемые векторы образуют
ортогональную тройку.
Доказанная нами лемма нужна для того чтобы показать - тензор поворота, рассматриваемый нами в произвольных координатах,
удовлетворяет известной теореме Эйлера о конечном повороте.
Этот вектор остается неподвижным при повороте! А при повороте тела неподвижной остается… ось вращения. Значит вектор задает
ориентацию в пространстве оси вращения связанной с телом системы координат. Известная из курса механики теорема Эйлера гласит
Для любого тела, имеющего одну неподвижную току, и занимающего произвольное положение в пространстве, существует ось,
проходящая через неподвижную точку, поворотом вокруг которой на конечный угол тело можно перевести в любое другое
желаемое положение.
Тождество (7) дает нам подсказку о том где стоит искать эту ось вращения - она проходит через собственный вектор тензора поворота,
соответствующий его действительному собственному числу. Проверим это, доказав теорему
Связанная с телом система координат может быть совмещена с базовой системой координат поворотом вокруг вектора на угол
против часовой стрелки , если векторы образуют правую тройку, и на угол если эти векторы образуют
левую тройку
Рис 1. К доказательству теоремы о конечном повороте
Повернем связанную с телом систему координат на угол вокруг вектора . Так как рассматриваемые нами векторы ортогональны, то
векторы и станут поворачиваться в плоскости перпендикулярной оси поворота. Поэтому очень легко найти связь между старым
положением этих векторов в пространстве и новым (смотрим рисунок 1)
Выражения (8) и (9) получены путем анализа конечного поворота. С другой стороны, из определения собственного вектора и свойств
оператора поворота следует цепь преобразований
Сравнивая (8) и (11), (9) и (12) приходим к выводу, что применение оператора поворота к векторам приводит к их повороту вокруг оси на
угол
Надо сказать, наши результаты выглядят довольно эффектно - ведь не зная о внутренностях тензора поворота мы исследовали все (по крайней
мере практически значимые его свойства). А нам не особенно интересны внутренности конкретных тензоров поворота, наша главная задача
научится вычислять этот тензор, чтобы он обеспечивал поворот вокруг нужной нам оси на требуемый угол
Вектор направлен вдоль оси вращения и его можно выразить следующим образом
Свертку тензоров (16) и (17) по общему индексу, выполним, расписав их через матрицы компонентов
где
Выражения (22) и (23) называются формулой поворота Родрига. Мы получили их для координатной системы с произвольной невырожденной
метрикой .
Заключение
Всё вышеизложенное рассматривалось для одной единственной цели - получить выражение оператора поворота для произвольной системы
координат. Это позволит нам выразить через (23) тензор и псевдовектор угловой скорости , а затем и углового ускорения. После этого мы
выберем параметры, характеризующие ориентацию твердого тела в пространстве (это будут параметры Родрига-Гамильтона, да-да, мы
поговорим о кватернионах) и запишем уравнения движения твердого тело в обобщенных координатах. По пути мы посмотрим на то, как
тензоры облегчают получение уравнений , вывод которых традиционными способами занял бы уйму времени и сил, со множеством ошибок и
умозрительных допущений .
Спасибо за внимание!
Продолжение следует…
Часть 8. О свертках тензора Леви-Чивиты
Введение
В прошлой статье мы напоролись на конструкцию вида - произведение контравариантного
тензора Леви -Чивиты на ковариантный . И , надо сказать, упростил я его не слишком элегантно, а довольно
таки топорно. К тому же, конечное выражение формулы Родрига, что в компонентной , что в
бескомпонентной форме оказалось крайне неудобным в плане дальнейшего преобразования. Но я ведь
обещал читателю показать, как из выражения матрицы поворота через параметры конечного поворота
получить угловую скорость твердого тела, поэтому, вопросы излагаемые ниже будут иметь решающее
значение в применении тензорного подхода к кинематике и динамике твердого тела. Заодно в очередной
раз порекомендую довольно старый сайт «На что похожа математика», хоть и созданный на движке
народа.ру, но содержащий сведения, уже несколько раз подталкивающие меня в правильном направлении
при решении проблем в изучении тензорной алгебры.
1. Символы Веблена
Читатель наверняка уже замечал, что у всех компонент тензора Леви -Чивиты есть общий множитель: в
или
где
Таким образом, процедура перемножения тензоров Леви -Чивиты сводится к оперированию символами
Веблена
где называют обобщенной дельтой Кронекера. Обобщенная дельта Кронекера - три раза
контравариантный и три раза ковариантный тензор шестого ранга. Для трехмерного пространства эта
конструкция имеет 36 = 729 компонент. Многовато, что ни говори . К тому же представить себе массив
компонент тензора шестого (!) ранга, пользуясь нашим трехмерным мышлением, ну совсем проблематично.
Но это обычно и не требуется - (4) участвует в преобразованиях где сворачивается с другими тензорами .
Поэтому полезно изучить свертки тензора (4), что даст нам путь к сворачиванию и преобразованию
выражений , в которых участвует тензор Леви -Чивиты.
Напомню, дельта Кронекера равна единице при совпадении индексов и нулю, если индексы различны.
Теперь составим определитель для какого-нибудь символа Веблена
Выражение (7) есть общее выражение для произвольного символа Веблена, которое позволит нам вывести
Чтобы вычислить (8) нам придется вспомнить, что определитель матричного произведения это
произведение определителей от каждой матрицы (вне зависимости от порядка сомножителей ), а поэтому
вычислим произведение матриц , составленных из элементов определителей , входящих в (8)
Здесь пришлось воспользоваться, во-первых, симметричностью дельты Кронекера , а, во-вторых,
тем, что при выполнении матричного произведения в образующихся суммах для каждого элемента
результата будут ненулевыми только слагаемые, в которых верхний и нижний немые индексы
повторяются, опять таки из-за свойств дельты Кронекера. Преобразуем (9) с учетом ещё одного свойства
дельты Кронекера
Все 729 компонент описываются одной компактной формулой (10). Это очень неплохо и крайне полезно
для практических целей . Например, теперь очень легко выписать произведение контравариантного и
ковариантного тензоров Леви -Чивиты
В (13) в первых двух слагаемых мы умножили второй столбец на множитель, стоящий перед
определителем, в соответствии с правилами их вычисления. Преобразуем далее
Здесь мы вынесли (-1) за скобку в первом слагаемом, переставив столбцы, а так же воспользовались тем,
что - свертка дельты Кронекера, то есть её след.
То есть, окончательное получаем
Теперь свернем произведение тензоров Леви -Чивиты по двум парам индексов . Для этого свернем (14)
Выражения (14) - (16) наглядно показывают, что «крокодил» из произведения тензоров Леви -Чивиты
довольно таки ручной , причем запоминать эти формулы не надо, достаточно запомнить (11), что не так и
сложно. Используя (11) можно очень эффективно упрощать тензорные выражения.
который позволит нам работать с тензором поворота более эффективно, чем пока получается у меня
Заключение
Снова небольшой экскурс в теорию. Такой , несколько рваный , ритм цикла о тензорах, объясняется тем, что
статьи есть результаты собственных «копаний » автора в теме. Не рассказать об обобщенной дельте
Кронекера было нельзя - она ещё пригодится нам и не раз, в тех случаях, где надо будет преобразовывать
выражения, содержащие двойное векторное произведение и в тензорной форме имеющие произведения
тензоров Леви -Чивиты в комбинации со сверткой .
P.S.: Отдельное спасибо хочется сказать В. Г. Речкалову, по мотивам книги которого «Векторная и
тензорная алгебра для будущих физиков и техников » создан сайт на народе.ру, ссылка на который уже
дважды мной приводилась.
Продолжение следует…
Часть 9. Вывод тензора угловой скорости через параметры конечного
поворота. Применяем голову и Maxima
Введение
Утекло уже порядком времени , как я обещал получить тензор угловой скорости твердого тела, выразив его через параметры конечного поворота.
Если взглянуть на КДПВ, то станет понятно, почему я так долго думал - стопка бумаги на столе, это ход моих мыслей .
Жестокие тензоры не хотели упрощаться. Вернее, они то хотели , но при преобразованиях, раскрытии скобок, в силу невнимательности возникали
мелкие ошибки , которые не позволяли взглянуть на картину в целом. В итоге результат таки был получен . Не последнюю роль в этом сыграла
СКА Maxima, которой я обратился, во многом благодаря статье пользователя @EugeneKalentev. Акцент упомянутой статьи смещался в сторону
вычислительной работы с тензорами , компоненты которых представлены конкретными структурами данных. Меня же интересовал вопрос работы
с абстрактными тензорами . Оказалось, что Maxima может с ними работать, хоть и нет так, как может быть хотелось, но всё же она серьезно
упростила мне жизнь.
Итак, мы возвращаемся к механике твердого тела, а заодно посмотрим, как работать с тензорами в Maxima.
Его можно упростить ещё, для этого поработаем с выражением в скобках во втором слагаемом
А все потому, что свертка тензора с дельтой Кронекера приводит к замене немого индекса тензора на свободный индекс дельты Кронекера,
например . Действуя таким образом, и учтя, что вектор имеет длину равную единице, а значит свертка , мы и получаем (2).
Тогда выражение тензора поворота выглядит ещё проще
как раз то выражение, которое я долго и нудно пытался вывести в седьмой статье. Что ещё раз подтверждает правило, что ничего нельзя изучать
наполовину…
Для чего я это всё проделал. Во-первых, окончательно реабилитироваться в глазах читателей . Во-вторых - чтобы нам было с чем сравнивать
результаты, которые мы чуть ниже получим с помощью Maxima. Ну и в третьих, чтобы сказать, что на выражении (3) наша сладкая жизнь и
заканчивается, а начинается ад монструозных преобразований .
Запускаем Maxima, хоть в консоли , хоть используя один из её графических фронтэндов , и пишем
Символ $ является альтернативой точки с запятой и запрещает вывод на экран результатов преобразований . Для отображения информации будем
использовать ishow(). Подставляемое в неё выражение выводится на экрана в привычной индексной нотации записи тензоров . На экране это
выглядит так
Причем вводим мы не упрощенную его форму, с двойным векторным произведением, не вводя антисимметричного тензора , с тем чтобы на
первом этапе получить (3) и проверить, как машина упрощает тензорные выражения. В человеческом виде это выражение выглядит так
правда сумма индексов в первом слагаемом наводит на подозрения в какой -то особой магии , которая нам неведома. Но данный вывод
сгенерирован непосредственно Maxima, с помощью заклинания
load(tentex); tentex(B);
что позволяет получить вывод в виде кода LaTeX. Из недостатков - шаманство с индексами и заглавная буква, обозначающая угол поворота, но и
то и другое в принципе исправимо, а порадовала меня Maxima тем, что генерирует TeX-вывод не такой избыточный , как например Maple.
Идем дальше. Дальше вспоминаем выражение, определяющее нам угловую скорость через тензор поворота
Теперь представим себе что нам придется продифференцировать (3) по времени , затем умножить производную на матрицу обратную (3) и
метрический тензор. Это можно сделать вручную, но если бы я довел этот процесс до конца, стопка листов на столе была бы раза в три толще.
B:ishow(expand(lc2kdt(B)))$
Функция lc2kdt() предназначена специально для упрощения выражений содержащих тензор Леви -Чивиты. Она старается свернуть этот тензор
там где это возможно, давая на выходе комбинацию сумм и произведений дельт Кронекера. Так выглядит результат
К результату lc2kdt() применяется так же функция expand(), раскрывающая скобки . Без этого Maxima выполняет свертку очень неохотно.
Теперь попытаемся вычислить полученное выражение, выполнив свертку. Функция contract() один из наиболее надежных способов
выполнения свертки
B01:ishow(contract(B))$
На выходе получаем (там где это возможно, буду приводить LaTeX-вывод, генерируемый Maxima с помощью функции tentex())
что аналогично выражению (3). Это убедило меня в корректности работы программы и правильности собственных действий . Значит можно
двигаться дальше.
Единственное, чего не учитывает Maxima, что вектор, вокруг которого производится поворот имеет длину равную единице. Поэтому он не
сворачивает выражение в скаляр. Как ему об этом сказать я не придумал и в документации этого не вычитал, хотя искал тщательно. В
дальнейшем это даст серьезные трудности , о которых мы поговорим, а пока я выкрутился с помощью костыля, заменив неудобные тензоры
единицей
Раз мы собираемся брать производную, то Maxima должна знать, какие тензоры и числовые параметры зависят от времени . Указываем, что от
времени зависит направление оси поворота и угол поворота
depends([u,phi], t);
Чтобы наши тензоры соответствовали формуле (4), выполним переименование индексов
Тем самым мы поменяли имена свободных индексов , для корректного умножения в (4), и переопределили имена немых индексов . По правилам
положено, чтобы имена немых индексов в перемножаемых тензорах не совпадали .
dBdt:ishow(diff(B01,t))$
получая на выходе
Убеждаемся, что дифференцирование выполнилось корректно. Ну и наконец вводим формулу (4), применяя последовательно раскрытие скобок и
упрощение с учетом тензора Леви -Чивиты
exp1:ishow(lc2kdt(expand(g([m,p],[])*B10*dBdt)))$
То, что получается в итоге, страшно показывать, но извольте
Понять что-либо в этой каше трудно. Но видно, что вылезли комбинации дельт Кронекера (функция kdelta() задает дельту Кронекера любого
требуемого ранга) со странным обозначением немых индексов , содержащих номер после %. Дело в том, что Maxima, при преобразованиях
нумерует немые индексы. Попробуем упростить всё это
Во-первых, ещё раз прогоним выражение через упрощение с учетом тензора Леви -Чивиты (lc2kdt()). Затем выполним свертку (contract()).
После чего попытаемся упростить нашего «крокодила», применив к нему функцию canform(), выполняющую нумерацию немых индексов и
упрощение тензора. Эта функция рекомендуется разработчиками для выполнения упрощений
exp2:ishow(canform(contract(lc2kdt(exp1))))$
В итоге наблюдаем серьезное похудение «крокодила»
Но! В первом же слагаемом мы видим векторное произведение орта оси поворота самого на себя, а оно должно быть равно нулю. Maxima этого
пока не поняла, надо ей указать на возможность подобного упрощения. Делаем это конструкцией
exp3:ishow(canform(contract(expand(applyb1(exp2,lc_l,lc_u)))))$
Функция applyb1() задает правила упрощения подвыражений , входящих в упрощаемое выражение. В качестве аргументов передаются
выражение и список правил. Правил у нас два: lc_l и lc_u - правила преобразования подвыражений с символом Леви -Чивиты с нижними (lc_l)
и верхними (lc_u) индексами . При этом мы снова раскрываем скобки , которые могут появится после преобразования подвыражений , выполняем
свертку и упрощение. В итоге наблюдаем ещё одно сокращение крокодиловой массы
Наверное это ещё не предел. Но меня удивило, вероятно по незнанию и недостатку опыта следующее
1. Обратим внимание на переменную kdelta. Эксперименты с Maxima позволили выяснить что это - след дельты Кронекера 2 ранга, равный
размерности пространства (след единичной матрицы). В нашем случае это число "3". Именно тройка должна стоять на месте kdelta. Но
почему-то не стоит, возможно как-то неправильно настроены переменные конфигурации тензорного пакета. Если принять kdelta равной
трем, то образуется куча разнознаковых подобных слагаемых, которые в сумме дают ноль.
2. Все свертки вида
это модуль орта поворота, а он не меняется и равен единице. Как сказать об этом Maxima для меня пока не выяснено.
а значит
В связи с этим я снова взялся за ручку и бумагу, чтобы «доупрощать» тензор угловой скорости . Но Maxima существенно облегчила мне задачу, за
что ей спасибо.
Это выражение до боли напоминает, аналогичное, полученное для ортогонального базиса и выраженное в матричном виде
Тензор (5) антисимметричный , переставим индексы, меняя знаки соответствующих выражений . Первое слагаемое - разность ковариантных
тензорных произведений , второе есть транспонированное первое, а такая сумма, дает на выходе антисимметричный тензор. В остальных
слагаемых содержится тензор Леви -Чивиты, меняющий знак при перестановке индексов
чтобы их свертка давала кососимметричные матрицы, привычные для представления векторного произведения в матричном виде.
Дальнейшее упрощение (6) возможно, если принять базис декартовым. Тогда ковариантные и контравариантные компоненты совпадут,
ненулевые элементы тензора Леви -Чевиты по модулю станут равны единице, и (6) можно еще немного упростить. Мы же получили это
выражение для произвольного базиса.
Заключение
Вот так, благодаря тензорным средствам Maxima я наконец разобрался с задачей выражения тензора угловой скорости через параметры конечного
поворота. А заодно показал читателю живой пример работы с тензорами в СКА .
В следующий раз мы получим из (6) псевдовекторы угловой скорости и углового ускорения и вплотную приблизимся к тензорному описанию
кинематики твердого тела.
Благодарю за внимание!
Продолжение следует…
Часть 10. Получаем вектор угловой скорости. Работаем над
недочетами
Введение
Введение на этот раз будет «активным». Мы сразу начнем работать, и , пользуясь результатами предыдущих статей 6 и 9,
получим псевдовектор угловой скорости твердого тела, выраженный через параметры конечного поворота.
Итак, путем долгих мучений вручную и , недолгих, но кропотливых преобразований в Maxima, мы пришли к тому, что
антисимметричный тензор угловой скорости 2 ранга выглядит так
Мы говорили о том, что получить псевдовектор угловой скорости можно, свернув (1) с тензором Леви -Чивиты
Однако дальнейшее исследование показало, что формула (2) содержит ошибку, которая приводит к получению не совсем
верного результата. Отгадка нашлась путем изучения литературы и дальнейшего самостоятельного осмысления результатов из
статьи о свертке тензора Леви -Чивиты.
Не будем утруждать себя бумажной работой , используем Maxima, «натравив » её на пакетный файл
omega.mac
kill(all); load(itensor); imetric(g); idim(3);
depends([u,phi],t);
Omega:ishow( (1-cos(phi))*(diff(u([m],[]),t)*u([k],[]) - u([m],[])diff(u([k],[]),t)) + sin(phi)(1-cos(phi))u([],[i])('levi_civita([i,l,k],
[])*diff(u([],[l]),t)*u([m],[]) - 'levi_civita([i,j,m],[])*diff(u([],[j]),t)*u([k],[])) + sin(phi)cos(phi)diff(u([],[p]),t)'levi_civita([m,p,k],[]) +
diff(phi, t)'levi_civita([m,q,k],[])*u([],[q]))$
Omega2:ishow(expand(lc2kdt('levi_civita([],[m,k,r])*Omega)))$
Omega3:ishow(canform(contract(expand(Omega2))))$
получив результат
После доработки этого выражения вручную, получаем результат, очень похожий на правду
Только вот (3) ровно в два раза больше правды - если положить ось вращения неподвижной , то есть , мы получим
то есть угловая скорость направлена вдоль оси вращения, но в два раза больше производной от угла поворота. Как такое может
быть? Такого быть не может, и неточность допущена в определении (2). Причины этой неточности , уточнение представлений
об антисимметричных тензорах и псевдовекторах - цель данной статьи
Результат (4) основан на антисимметричности тензора угловой скорости ( ), свойствах дельты Кронекера и её
связи с тензором Леви -Чивиты, о чем подробно говорилось здесь.
в полном соответствии с (4). А теперь, проделаем с (6), то, что мы делали с (1) во введении - свернем с контравариантным
тензором Леви -Чивиты
Вот и двойка нашлась - в действительности , сворачивая тензор угловой скорости с контравариантным тензором Леви -Чевиты
мы получаем не одну, а две угловых скорости . Результат, полученный во введении является ошибочным, из-за того, что в пятой
статье для получения сопутствующего вектора было приведено соотношение (2) и проигнорированы правила умножения и
свертки тензора Леви -Чивиты. Как и в случае с метрическим тензором, для обратного преобразования достаточно умножить
правую и левую часть выражения на обратный тензор. Но только метрический тензор при свертке с обратным ему по одной
паре индексов дает дельту Кронекера, а вот тензор Леви -Чивиты при свертке по двум парам индексов дает ДВЕ дельты
Кронекера. В этом и была причина ошибки и появления результата, в два раза превышающего истинный .
Для получения сопутствующего псевдовектора следует использовать соотношение (5). Тогда мы приходим к верному
результату для угловой скорости
М-да, чтобы получить (8) пришлось потратить некоторое время. Поэтому в восьмой статье было уделено такое внимание
свойствам тензора Леви -Чивиты. В пятую и шестую статью внесены соответствующие правки .
Допускать ошибки весьма досадно, учитывая ту аудиторию, что следит за моими публикациями . Однако, статьи данного цикла,
кроме изложения тензорного исчисления и способов его применения к решению практических задач, иллюстрируют и процесс
познания на моем конкретном примере. А процесс познания, как известно, состоит из многих итераций .
В конечном счете мы пришли к цели - получили выражение угловой скорости через параметры конечного поворота, причем
для произвольных координат с невырожденной метрикой .
Вектор угловой скорости направлен вдоль оси вращения, в ту сторону, откуда вращение выглядит происходящим
против часовой стрелки
Почему против часовой стрелки ? Потому, что при изложении курса теоретической механики , физики и математики по-
умолчанию используется правая система координат. В ней положительное направление поворота - против хода часовой
стрелки .
Обратимся к (9). Положительное значение производной от угла поворота говорит нам, что угол возрастает со временем. А
значит поворот происходит в положительном направлении , то есть, если , тело вращается против часовой стрелки (орт
оси вращения смотрит на нас). Скорость точки тела при вращении определяется формулой Эйлера
и здесь опять - вектор скорости будет направлен в ту сторону, откуда кратчайший поворот от угловой скорости к радиус-
вектору выглядит происходящим в положительном направлении , то есть против часовой стрелки (рисунок 1).
Телу всё равно, в какой системе координат мы его рассматриваем. Оно вращается туда же, куда и вращалось. Но
положительное направление отсчета углов поворота в новой системе - по часовой стрелке. А значит, с существующим
направлением вращения тела угол его поворота уменьшается и , значит вектор угловой скорости, согласно (9) меняет
направление на противоположное.
Что же будет со скоростью точки тела? А ничего - теперь, в соответствии с (10), вектор будет направлен туда, откуда
кратчайший поворот от угловой скорости к радиус-вектору будет выглядеть происходящим по часовой стрелке, ведь такое
положительное направление выбрано в новой системе координат. А значит направление вектора скорости точки тела останется
прежним.
Выходит, что при переходе от правой системы координат к левой и наоборот, то есть при смене ориентации базиса, вектор
угловой скорости меняет направление. А значит, как целостный геометрический объект он не инвариантен к смене базиса.
Такие векторы называют псевдовекторами. А ещё их называют аксиальными векторами, что подчеркивает факт - направление
вектора определяется выбранным в данной системе координат положительным направлением поворота.
Вектор скорости , напротив , не меняет направления при смене ориентации базиса и называется истинным или полярным
вектором.
Результат векторного произведения истинных векторов - это аксиальный вектор. Но почему (10) дает истинный вектор? А
потому, что один из аргументов вектор аксиальный , и смена его направления при переходе к левой системе координат
нивелирует изменение направление векторного произведения. Таким образом, векторное произведение псевдовектора на
истинный вектор дает на выходе истинный вектор.
В этом смысле вектор угловой скорости величина несколько неудобная. Поэтому, при выводе тензорных соотношений
механики твердого тела лучше опираться на тензор угловой скорости , который инвариантен относительно произвольных
преобразований системы координат.
Будем работать в декартовой правой системе координат. Углы Эйлера позволяют задать произвольную ориентацию твердого
тела в пространстве, так, как показано на рисунке 3.
Рис. 3. Углы Эйлера - последовательный поворот связанной системы координат вокруг осей z,x,z
Произвольная ориентация тела может быть получена путем трех последовательных поворотов - вокруг оси z на угол (угол
нутации ), затем, вокруг нового положения оси x на угол (угол прецессии ), и , вокруг нового положения оси z на угол - угол
собственного вращения.
Значит, матрица поворота, в декартовых координатах будет выглядеть как композиция линейных преобразований поворота
вокруг осей z, x, z
Так как мы работаем в декартовом базисе - метрический тензор представлен единичной матрицей . Выполняя
дифференцирование и матричное умножение с применением СКА , например в Maple с использованием таких команд
restart;
with(LinearAlgebra):
A01 := Matrix( [ [cos(psi(t)), -sin(psi(t)), 0], [sin(psi(t)), cos(psi(t)), 0], [0, 0, 1] ]);
A12 := Matrix( [ [1, 0, 0], [0, cos(theta(t)), -sin(theta(t))], [0 ,sin(theta(t)), cos(theta(t))] ]);
A23 := Matrix( [ [cos(phi(t)), -sin(phi(t)), 0], [sin(phi(t)), cos(phi(t)), 0], [0, 0, 1] ]);
B := A01 . A12 . A23;
dBdt := map(diff, B, t);
Omega := map(simplify,B^(-1) . dBdt, trig);
получаем матрицу тензора поворота
Из (12) легко получить компоненты угловой скорости в системе координат, связанной с телом
Искушенный в механике читатель непременно узнает в (13) - (15) кинематические уравнения Эйлера, связывающие вектор
угловой скорости с параметрами поворота тела, в качестве которых выбраны углы Эйлера.
Похожим образом можно связать угловую скорость с любыми параметрами поворота. Мы проделали все преобразования для
получение формулы (8) в общем виде, связав угловую скорость с параметрами конечного поворота. Но, ни представление (8),
ни представление (13) - (15) неудобны для динамического анализа движения твердого тела, так как перечисленные формулы
подвержены вырождению при определенных значениях параметров . В дальнейшем мы используем (8) чтобы перейти к
угловой скорости , выраженной через компоненты кватерниона, не подверженные вырождению. А данный пример носит
проверочный и иллюстративный характер.
Заключение
Данная заметка большей частью - работа над ошибками и неточностями , допущенными в предыдущих публикациях. Но
результат достигнут - мы получили определение вектора угловой скорости тела через параметры конечного поворота и
наглядно показали , что угловая скорость - псевдовектор.
Спасибо за внимание!
Продолжение следует…
Часть 11. Ускорение точки тела при свободном
движении. Угловое ускорение твердого тела
Введение
Сегодня мы завершим построение тензорных соотношений , описывающих кинематику свободного твердого тела.
Так получилось, что на протяжении достаточно большого количества статей мы заново построили часть
основополагающего курса теоретической механики . Данные построения, несмотря на некоторую абстрактность,
полезны и с методической точки зрения, и с точки зрения того, что применительно к механике, тензорный
подход, как скальпель, вскрывает истинную природу привычных нам понятий , таких как законы движения
материальных тел, скорость их точек, угловая скорость, угловое ускорение. Вот об угловом ускорении сегодня и
пойдет речь.
где - компоненты вектора скорости полюса в связанной системе координат; - тензор угловой скорости.
Верхний индекс в скобках означает, что компоненты этого тензора представлены в связанной системе координат.
Чтобы получить ускорение, во-первых, перейдем в базовую систему координат - дифференцирование в ней будет
выполнять намного проще. Но так как преобразование поворота задано у нас для контравариантных компонент
векторов , прежде всего поднимем индексы в (1)
а уже потом, применим к (2) прямое преобразование поворота
конвариантные компоненты ускорения точки M твердого тела при свободном движении . Теперь
постараемся вникнуть в смысл составляющих ускорения (5). Во-первых рассмотрим последнее слагаемое,
тензор угловой скорости в котором можно расписать через псевдовектор угловой скорости
и , совершенно очевидно, что производная от тензор угловой скорости представляется через некоторый
псевдовектор , равный производной по времени от псевдовектора угловой скорости
Из курса теоретической механики известно, что производная от угловой скорости называется угловым
ускорением тела. Значит (7) - угловое ускорение. Обычно угловое ускорение принято обозначать другой буквой ,
которая в LaTeX-нотации записывается как \varepsilon. Но это обозначение у нас «утащил» тензор Леви -
Чивиты, поэтому будем использовать символ \epsilon который выглядит не слишком впечатляюще, но не менять
же нам систему обозначений из-за подобной мелочи ?
Исходя из вышесказанного делаем вывод, что производная по времени от тензора угловой скорости есть
антисимметричный тензор углового ускорения
для обозначения которого возьмем букву \xi, стилистически напоминающую \varepsilon. Исходя из (8),
последнее слагаемое (5) эквивалентно
Теперь обратимся ко второму слагаемому (5). В нем распишем тензор угловой скорости через псевдовектор
Ускорение точки тела при свободном движении равно геометрической сумме ускорения полюса,
вращательного ускорения точки вокруг полюса и осестремительного ускорения точки вокруг полюса
Ну и , наконец , первое слагаемое в (5) можно расписать через криволинейные координаты полюса, как это
делалось в статье, посвященной кинематике и динамике материальной точки
и мы получаем, в самой общей форме, ускорение точки тела при свободном движении
Ускорение (10) представлено в собственной (связанной с телом) системе координат. Данное выражение носит
самый общий характер, а подход, с помощью которого мы к нему пришли позволяет нам выяснить истинную
природу и соотношения между привычными нам кинематическими параметрами движения. В этом теоретическое
значение (10).
Практическое значение полученной формулы таково, что оно ещё на один шаг приближает нас к получению
уравнений движения твердого тела в обобщенных координатах.
Таким образом тензор углового ускорения определяется уже и второй производной тензора поворота. С другой
стороны, пользуясь определением тензора углового ускорения (6), мы можем получить выражение для
псевдовектора углового ускорения
Выражение (13) выглядит эффектно, и может быть использовано, например для того, чтобы выразить проекции
углового ускорения на собственные оси через углы ориентации твердого тела (Эйлера, Крылова, самолетные
углы и т.д.). Но по большей части оно носит теоретический характер - да, вот, смотрите, как угловое ускорение
связанно с матрицей поворота.
Если же мы попытаемся получить псевдовектор углового ускорения через параметры конечного поворота,
пользуясь (13), то этот путь сложно будет назвать оптимальным. Помните, сколько мы провозились с тензором
угловой скорости ? То-то же! А здесь можно, в принципе, обойтись и без СКА , достаточно обратится к формуле
(7) и материалу статьи о псевдовекторе угловой скорости
Выражение (15) можно слегка упростить. Во-первых, его второе слагаемое равно нулю, так как содержит свертку
тензора Леви -Чивиты с одним и тем же вектором по двум индексам, что эквивалентно . Во-вторых,
можно привести подобные слагаемые, и мы получаем окончательное выражение
Теперь, пользуясь (8) от (16) можно перейти и к тензору углового ускорения, но мы этого не будем делать.
Действия которые надо выполнить тривиальны, получаемое выражение будет достаточно громоздко. Для
практических целей нам достаточно и формулы (16).
Если ось вращения не меняет направления, то производные орта оси вращения обращаются в нуль. Такое
возможно при вращении вокруг неподвижной оси и при плоскопараллельном движении . Тогда вектор углового
ускорения выглядит тривиально
что дает то определение вектора углового ускорения, которым преподаватели теормеха (в том числе и я), потчуют
студентов . Кроме того, из последней формулы хорошо видно, что направление этого вектора непосредственно
зависит от ориентации базиса системы координат, а значит и положительного направления поворота в ней . Это
хорошо иллюстрирует тот факт, что вектор углового ускорения - псевдовектор.
Выводы
Формулы (10), (14) и (16) являются последними соотношениями , которыми замыкается построение кинематики
твердого тела в произвольных координатах. Мы прошли большой путь - пользуясь аппаратом тензорного
исчисления заново построили всю кинематику твердого тела.
Но мы не коснулись главного - каким образом удобно задавать положение тела в пространстве, какие выбрать
параметры? Как связать эти параметры с кинематическими характеристиками движения твердого тела?
Казалось бы, чем плохи параметры конечного поворота? Они плохи тем, что вырождаются при значении угла
поворота равном нулю. Вспомним, как задается тензор поворота
Мы получили что тензор поворота представляется единичной матрицей . Что в это плохого, нет поворота,
тождественное преобразование? Плохо то, что из такого тензора поворота невозможно получить компоненты орта
оси вращения. При интегрировании динамических уравнений движения такой фокус приведет к обрушению
численной процедуры.
Для построения моделирующих систем необходимо брать параметры не претерпевающие вырождения. К таковым
можно отнести сам компоненты тензора поворота, но их девять. Плюс три координаты полюса. Итого - 12
параметров , характеризующих положение тела в пространстве. А число степеней свободы твердого тела - шесть.
Таким образом шесть компонент тензора поворота являются зависимыми величинами , что раздувает порядок
системы уравнений движения ровно в два раза.
Исходя из этого соображения, параметры конечного поворота более выгодны - их четыре. И есть лишь одно
уравнение связи
и если бы не вырождение при их можно было бы использовать.
Однако, невырождающиеся параметры, с помощью которых можно описать ориентацию твердого тела в
пространстве есть, и они непосредственно связаны с параметрами конечного поворота. Это параметры Родрига-
Гамильтона, о которых мы поговорим в следующей статье.
Благодарности
При подготовке данной статьи , для ввода формул, использован ресурс, созданный пользователем @parpalak. В
связи с этим хочу поблагодарить его за создание и поддержку такого полезного сервиса.
Продолжение следует …
Часть 12. Параметры Родрига-Гамильтона в
кинематике твердого тела
Введение
Наконец -то мы подошли к довольно интересной теме - выбору параметров , однозначно определяющих
ориентацию твердого тела в пространстве. Исторически наиболее популярными являются углы поворота -
они в первую очередь упоминаются в классических учебниках теоретической механики .
Рис.1. Углы Эйлера - параметры, знакомые каждому, кто занимался компьютерной графикой и
моделированием пространственного движения тел. И каждый, кому они знакомы, знает ,
насколько проблематичным бывает их использование.
Обычно углы поворота используют совместно с декартовой системой координат, при этом говорят, что
связанная система координат может быть совмещена с базовой путем трех последовательных поворотов
вокруг её осей . При этом каждый следующий поворот осуществляется вокруг оси , полученной после
предыдущего поворота. Кроме того, следующий поворот не должен происходить вокруг оси , относительно
которой совершен предыдущий поворот. В связи с этим существует 12 различных комбинаций углов
поворота, самыми известными из которых являются углы Эйлера (рисунок 1). Базовую систему координат
поворачивают на угол вокруг оси Z (угол прецессии ), затем на угол вокруг оси X (угол нутации ), и
снова вокруг оси Z на угол (угол собственного вращения) до совмещения её со связанной системой
координат.
Использование углов Эйлера всем хорошо - их число совпадает с числом вращательных степеней свободы
твердого тела, а значит они не порождают избыточных уравнений связей . Но, даже не прибегая к
громоздким формулам, по рисунку 1, можно догадаться, где кроется проблема.
Рис. 2. Знаменитые кинематические уравнения Эйлера. Я , в своё время, хлебнул с ними долгих и
кропотливых отладок
Существует два значения угла нутации , при которых происходит вырождение кинематических уравнений
Эйлера (рисунок 2) - и . Предположим, что угол нутации принял одно из этих значений -
тогда угол прецессии и угол собственного вращения описывают поворот вокруг одной и той же оси Z и
принципиально неразличимы друг от друга. При использовании кинематических уравнений Эйлера мы
получаем ноль в знаменателе и NaN в фазовых координатах. Приплыли , процедура интегрирования
рухнула.
Другой вариант углов поворота - самолетные углы: - рыскание, - тангаж и - крен (рисунок 3).
Данные параметры поворота вырождаются при тангажах , при этом неразличимы становятся крен
и рыскание. Матерые симуляторщики знают, как сходит с ума КПП при выходе на крутые тангажи .
Все возможные комбинации углов поворота имеют вырождение. Для моделирования и закладки в
алгоритмы систем управления ориентацией область их применения ограничивается критическими
значениями параметров . В прошлой статье мы показали , что не подходят и параметры конечного поворота,
а использование непосредственно компонентов тензора поворота затрудняется излишне глубокими
зависимостями между ними , что порождает высокий порядок системы уравнений движения.
Однако, ещё великий Леонард Эйлер ввел в рассмотрение четыре параметра, которые не имеют
вырождения. На его публикацию по этому поводу тогдашний научный мир особого внимания не обратил.
Данная идея, независимо от Эйлера была развита Олидом Родригом, а в работах Уильяма Гамильтона
получила окончательное теоретическое обоснование. Встречайте -
Так вот, перемножение кватернионов сводится к алгебраической операции перемножения сумм, с той
лишь разницей , что требуется определить правила умножения мнимых единиц . Традиционно, каждая из
мнимых единиц возведенная в квадрат дает -1
смысл которой прост - если перемножать пары мнимых единиц в порядке, указанном стрелкой , то
получается третья мнимая единица со знаком «+». Если порядок перемножения изменить на
противоположный - получится третья мнимая единица со знаком «-». Не напоминает правило векторного
перемножения ортов в декартовых координатах? Это оно и есть, то есть мы получаем
а результат их умножения
Не трудно просто сравнить эту формулу с результатом умножения, которое мы выполнили , при этом
считая мнимые единицы ортами декартова базиса. Таким образом, кватернионы включают в себя и
векторы трехмерного пространства, и например, кватернионы вида и , будут скалярами, и их
произведение эквивалентно произведению скалярных величин
Ну и надо ли говорить, что обнуляя два последних коэффициента у каждого из кватернионов мы получим
произведение комплексных чисел? Думаю не стоит, ибо мы не погружаемся в комплексную область, а если
и говорим о комплексных числах, то там где это требуется.
Не стану так же говорить о том, что сложение кватернионов и умножение их на число аналогично
соответствующим операциям в комплексной области . А вот о чем надо поговорить, так о сопряжении
кватерниона
Эти операции имеют непосредственное отношение к тому, для чего в наши дни используют
гиперкомплексные числа
Величину, стоящую в скобках называют вензором (не путать с тензором!) кватерниона. Поупражняемся над
его векторной частью
Никто не мешает делать нам эквивалентных преобразований , вот мы и делаем их. Теперь введем замену
На каком основании ? Да на том, что сумма квадратов этих величин всегда даст единицу, а если это так, то
никто не мешает представить данные величины как синус и косинус некоторого угла. Почему угол делим
на два? Нам так хочется, потом это нам пригодится, ведь угол можно взять произвольный . Исходя из
введенной замены мы можем переписать кватернион в виде
В довершении позволим себе ещё одно допущение - пусть кватернион будет единичным, то есть
и векторную часть
результата преобразования. В конечном итоге, на основании формул (3) и (4), проведя не сложные
тригонометрические упрощения, приходим к выводу, что на выходе получается некоторый вектор
Так это же… формула конечного поворота Родрига! Выходит, что преобразование
которое, с учетом того, что для единичного кватерниона операция вычисления обратного кватерниона
эквивалентна сопряжению, можно переписать в виде
эквивалентно повороту вектора вокруг оси , задаваемой ортом на угол . Угол поворота и вектор, вокруг
которого происходит вращение можно рассчитать по компонентам кватерниона, исходя из замен ,
введенных нами выше.
Выводы
Мы убедились, что единичный кватернион , компоненты которого построены по формулам
определяет конечный поворот. Четыре параметра, которые мы привели и есть те самые параметры
Родрига-Гамильтона, которые однозначно определяют ориентацию твердого тела в пространстве и не
вырождаются при любых параметрах вращения. Например, если мы обнулим угол поворота, то орт оси
вращения так же станет равен нулю. При повороте на любой конечный угол мы всегда можем рассчитать
положение оси поворота.
Что же, а за окном тем временем рассвело… План данной статьи был несколько иным, и мы ни слова не
сказали о тензорах. Да оно и к лучшему, зато мы теперь имеем четкое представление о том, что за хитрые
параметры ориентации будем использовать в дальнейшем.
Благодарю за внимание!
Продолжение следует …
Часть 13. СКА Maxima в задачах преобразования тензорных
выражений. Угловые скорость и ускорение в параметрах
Родрига-Гамильтона
Введение
В этой статье мы решим два вопроса - получим выражения для угловой скорости и углового ускорения через параметры Родрига-
Гамильтона, о которых мы, подробнее чем планировалось, поговорили в прошлой статье. А заодно продемонстрируем, как можно
использовать для этой цели открытую СКА Maxima, которая, как оказалось, неплохо справляется с тензорами , и при наличии
определенных навыков может стать серьезным подспорьем для решения научных задач. Для меня Maxima - новый продукт, до
этого я работал с Maple и совсем чуть-чуть с Mathematica. Поэтому, возможно, некоторые используемые мной приёмы могут
показаться непрофессиональными .
В прошлый раз мы остановились на том, что показали , как алгебру кватернионов можно использовать для представления
преобразования поворота. Зная направление оси поворота, задаваемое ортом и угол, на который надо повернуть систему
координат можно построить единичный кватернион к компонентами и тогда, прямое
преобразование поворота вектора , сводится к перемножению кватернионов а обратное
преобразование Мы показали , что преобразования (2) и (3), проведенные над вектором
непосредственно, дают формулу Родрига, описывающую конечный поворот. Теперь наша цель - связать параметры кватерниона
поворота с тензором поворота и псевдовекторами угловой скорости и углового ускорения.
В данном случае, подстановку (5) в (4) можно выполнить вручную, ничего экстраординарного этот процесс не предполагает. Но
мы выполним всё в Maxima, заодно подготовив некоторые исходные данные для дальнейшей работы. Настраиваем Maxima для
работы с тензорами в трехмерном пространстве
/* Очищаем память */ kill(all); /* Загружаем пакеты для работы с тензорами и генерации LaTeX вывода */ load(itensor);
load(tentex); /* Даем имя метрическому тензору и задаем размерность пространства */ imetric(g); idim(3);
Вводим выражение (4) тензора поворота
Solv1:ishow(solve(Lambda, u([],[j])))$
получая на выходе решение уравнение в виде массива выражений
В полученном выражении необходимо опустить индекс, так как тензор поворота содержит ковариантные компоненты орта
поворота. Для этого сворачиваем полученное до этого выражение с метрическим тензором
u_k:ishow(contract(Solv1[1]*g([k,j],[])))$
Кроме того, заменим индекс j на m в ковариантных компонентах
um:ishow(subst(m, j, Solv1[1]))$
В итоге мы получим два выражения, готовых для подстановки в тензор поворота
Теперь мы можем подставить компоненты орта оси поворота в выражение для тензора поворота. Функция постановки subst() в
данном случае принимает два аргумента - выражение, которое нужно подставить в выражение, идущее вторым аргументом. При
этом в преобразуемом выражении ищется левая часть первого аргумента и заменяется на его правую часть
Отлично, теперь в тензоре поворота фигурируют компоненты векторной части кватерниона. Теперь упростим тригонометрию
B_2:ishow(trigsimp(B_1))$
Функция trigsim() упрощает тригонометрические выражения. При этом, как написано в документации , учитывает по
умолчанию основное тригонометрическое тождество и четность/нечетность тригонометрических функций . Однако, то ли
загрузка пакета тензорной алгебры так влияет, данная функция спотыкается на упрощении дробей , содержащих функции
одинарного и половинного аргументов , даже при взведенном флаге, о котором упоминалось выше. Тем не менее мы провели
подготовительную работу и на выходе получим упрощенную формулу
Осталось заменить квадраты косинуса и синуса половинного угла поворота на скалярный параметр кватерниона, для чего
выполним подстановку и упрощение в виде раскрытия скобок
tentex(B_3);
К выведенному коду я добавил лишь левую часть
Видно, что Maxima генерирует LaTeX-нотацию, весьма близкую к естественной математической записи , чего не скажешь о
Maple, который готовит монструозный код, содержащий все условности, принятые им при выводе читабельных формул.
Слагаемые, содержащие дельту Кронекера сгруппируем и вынесем общим множитель за скобки уже самостоятельно. Ну и вернем
на место «лямбду»
Нами получено выражение тензора поворота через параметры Родрига-Гамильтона. От этого тензора можно перейти к любым
другим параметрам, описывающим ориентацию твердого тела в пространстве.
Разминку можно считать оконченной . Впереди нас ждет более серьезная работа
2. Псевдовектор угловой скорости в параметрах Родрига-Гамильтона
Введем в Maxima уже известное нам выражение для псевдовектора угловой скорости . В естественной форме оно выглядит так
Опускаем индексы и переименовываем индексы орта поворота, в соответствии с обозначением индексов в тензоре угловой
скорости
Нам будут необходимы производные от орта оси поворота и от угла поворота. Необходимо получить их выраженными через
параметры кватерниона
/* Дифференцируем ковектор орта оси поворота по времени */ du_mdt:ishow(diff(u_m, t))$ /* Дифференцируем по времени
скалярный параметр кватерниона */ dLambda0dt:diff(Lambda0, t); /* Выражаем производную угла поворота */
Solv2:solve(dLambda0dt, diff(phi,t));
Maxima выполнит все операции вполне корректно
Но вот тут нас подстерегает ещё один нюанс. Нам надо убрать производные из полученных выражений . То есть убрать совсем.
Потому что Maxima, при упрощении выражений , не совсем адекватно на них реагирует. Например, если одна и та же
производная стоит в выражении как коэффициент перед синусом в квадрате и перед косинусом в квадрате одного и того же угла,
то при упрощении тригонометрии Maxima не видит в упор основного тригонометрического тождества. А если производную
заменить на обычное выражение - легко схлопывает тождество в единицу. То же касается и тензорных преобразований - на лицо
нежелание опускать индексы и сворачиваться с тензором Леви -Чивиты если один из тензоров , участвующих в операции
представлен производной по времени от другого тензора. Прямых указаний на решение проблемы я пока не встретил, хотя ищу
их, а пока применим костыль номер два - введем замены. Для начала в выражении угловой скорости заменим производную
скалярного параметра кватерниона
durdt:ishow(diff(u([],[r]),t) = contract(expand(rhs(du_mdt)*g([],[r,m]))))$
На выходе имеем полный набор выражений для выполнения подстановки
Что же, выполняем их, раскрывая по пути скобки , заставляя Maxima сокращать по возможности дроби
но во втором слагаемом маячит векторное произведения векторной части кватерниона самой на себя, равная нулю. Чтобы СКА
убрала её воспользуемся заклинанием
Omega_3:ishow(trigsimp(Omega_2))$
и заменить оставшийся косинус на скалярный параметр кватерниона
tentex(Omega_3);
Погоду портят нумерованные функцией canform() немые индексы, но тут уже мы ручками поставим нужные нам имена
индексов и заодно вернем на место производные от параметров Родрига-Гамильтона
Выражение (7) и есть долгожданное выражение угловой скорости через параметры Родрига-Гамильтона. Как видно, оно гораздо
компактнее исходного выражения, записанного в параметрах конечного поворота. Но это не единственная положительная черта.
Другая приятная особенность откроется нам, когда мы получим
Продемонстрирую оба пути , только длинный путь уберу под спойлер, чтобы мой уважаемый читатель не потерял за деревьями
леса.
Первое слагаемое - ноль, подобные приводятся вплоть до взаимного уничтожения членов , и итоге, без особого труда, получаем
Итак, введем в Maxima угловое ускорение в параметрах конечного поворота, помня о половинных углах
epsilon:ishow(2*sin(phi/2)^2*'levi_civita([],[i,m,r])*u([i],[])*diff(u([m],[]),t,2) + diff(phi,t)*2*cos(phi/2)^2*diff(u([],[r]),t) +
diff(phi,t)*2*sin(phi/2)*cos(phi/2)*'levi_civita([],[i,m,r])*u([i],[])*diff(u([m],[]),t) + diff(u([],[r]),t,2)*2*sin(phi/2)*cos(phi/2) + u([],
[r])*diff(phi,t,2))$
Теперь нам понадобятся вторые производные. Дифференцируем угол поворота
d2phidt2:diff(Solv2[1],t);
и подставляем в него уже обработанное нами ранее выражение для первой производной угла
d2phidt2:diff(Solv2[1],t);
Снова избавляемся от первых и вторых производных параметров , вводя соответствующие замены
Прежде чем дифференцировать тензоры, добавим в список функций времени введенные нами замены для первых производных,
иначе получим нули , которых на деле нет
depends([v0, v],t);
Вычисляем вторую производную от орта оси поворота, производим необходимые замены, поднимаем индексы для получения
необходимых нам выражений ковариантных компонент с нужными индексами
d2u_mdt2:ishow(diff(du_mdt, t))$
d2u_mdt2:ishow(subst(dphidt, d2u_mdt2))$ d2u_mdt2:ishow(subst(a0, diff(v0,t), d2u_mdt2))$ d2u_mdt2:ishow(subst(a([m],[]),
diff(v([m],[]),t), d2u_mdt2))$ d2u_mdt2:ishow(subst(v([m],[]), diff(p([m],[]),t), d2u_mdt2))$
d2urdt2:ishow(diff(u([],[r]),t,2) = contract(expand(rhs(d2u_mdt2)*g([],[r,m]))))$
На выходе имеем вторые производные ковариантных и контравариантных компонент, пригодные для подстановки
Выполняем серию подстановок - заменяем производные угла и орта, а так же компоненты самого орта на полученные выше, и
ранее, при вычислении угловой скорости , выражения
Теперь упростим тригонометрию, и заменим косинус половинного угла на скалярный параметр кватерниона, а так же выведем
LaTeX
epsilon_3:ishow(trigsimp(epsilon_2))$ epsilon_3:ishow(subst(lhs(Lambda0), rhs(Lambda0) , epsilon_3))$ tentex(epsilon_3);
И вместо «крокодила» имеем вполне приличную формулу, в которой угадывается результат (8)
(8) мы и получаем. Только гораздо дольше. Но зато проверили правильность исходных формул.
Внезапно, мы наблюдаем полную аналогию с (7), только вместо первых производных здесь стоят вторые производные.
Коэффициенты при производных одинаковы, что означает, что угловая скорость и угловое ускорение получаются из
соответствующих производных параметров Родрига-Гамильтона умножением на одну и ту же матрицу (3 x 4). Это, между прочим
и определило широкую применимость кватернионного подхода при моделировании движения космических аппаратов , и прочих
объектов , совершающих свободное вращение в пространстве.
Заключение
Статья вышла с уклоном на приемы работы с тензорными библиотеками Maxima. Могу сделать вывод, что, даже при описанных
допущениях, упрощать тензорные выражения в ней достаточно удобно.
Ну и , наконец , мы получили выражения угловой скорости и углового ускорения через удобные для моделирования параметры
ориентации Родрига-Гамильтона. И убедились в том, что формулы (7) и (8) их выражающие не только компактны, но и красивы,
в том смысле, что используют одно и то же линейное преобразование параметров к кватерниона к компонентам векторов
угловых скорости и ускорения. Такой подход серьезно упрощает организацию моделирующих программ, в чем мы ещё, я
надеюсь, убедимся.
На сегодняшний день мы вплотную подошли к рассмотрению динамики свободного твёрдого тела с применением тензорного
аппарата. На счёт следующей статьи у меня есть интересная идея, которую я постараюсь реализовать и подготовить качественный
материал.
Благодарю за внимание!
Продолжение следует …
Часть 14. Нестандартное введение в динамику твердого
тела
Введение
Динамика твердого тела - раздел механики , который в своё время задал четкий вектор развития этой науки . Это один из
самых сложных разделов динамики , и задача интегрирования уравнения сферического движения для произвольного
случая распределения массы тела не решена до сих пор.
В этой статье мы начнем рассматривать динамику твердого тела, применяя аппарат тензорной алгебры. Эта пилотная
статья о динамике ответит на ряд фундаментальных вопросов , касающихся, например, такого важного понятия как
центр масс тела. Что такое центр масс, что отличает его от остальных точек тела, почему уравнения движения тела
составляют в основном относительно этой точки ? Ответ на эти , и некоторые другие вопросы находится под катом.
Интегрирование уравнений движения этой детской игрушки - одна из до сих пор не решенных задач
механики...
где - обобщенная координата точки ; - обобщенная скорость точки . Из данного выражения видно, что начиная
решать задачу о движении и имея начальные условия (момент времени , положение и скорость) можно сразу
рассчитать активную силу.
Сила тяжести , упругости , Кулоновская сила взаимодействия заряда с электрическим полем, сила Ампера и сила
Лоренца, сила вязкого трения и аэродинамического сопротивления - всё это примеры активных сил. Выражения
для их расчета известны и эти силы можно посчитать, зная положение и скорость точки .
2. Реакции связей. Самые неприятные силы, которые только можно придумать. Напомню одну из аксиом статики,
именуемую аксиомой о связях
Связи приложенные к телу можно отбросить, заменив их действие силой , или системой сил
Изображенная на рисунке точка - не свободная точка. Её движение ограничено связью, условно представленной в
виде некой поверхности , в пределах которых располагается траектория движения. Приведенная выше аксиома
дает возможность убрать поверхность, приложив к точке силу , действие которой эквивалентно наличию
поверхности . При этом данная сила не является известной заранее - её величина удовлетворяет ограничениям на
положение, скорость и ускорение, накладываемыми связью, ну и , разумеется вектор реакции зависит от
приложенных активных сил. Реакции связей подлежат определению в процессе решения задачи . К реакциям
связей относится так же и сухое трение, наличие которого даже в простой задаче существенно осложняет процесс
её решения.
А теперь проделаем простейший фокус - ускорение с массой перенесем в другую часть уравнения (2)
и введем обозначение
Сила, представляемая вектором (3) называется силой инерции Даламбера. А уравнение (4) выражает принцип Даламбера
для материальной точки
Материальная точка находится в равновесии под действием приложенных к ней активных сил, реакций
связей и сил инерции
Позвольте, о каком равновесии может идти речь, если точка движется с ускорением? Но ведь уравнение (4) есть
уравнение равновесия, и приложив к точке силу (3) мы можем заменить движение точки её равновесием.
Достаточно распространен спор о том, являются ли силы инерции (3) физическими силами . В инженерной практике
используется понятие центробежной силы, которая есть сила инерции , связанная с центростремительным (или
осестремительным) ускорением, искривляющим траекторию точки . Моё личное мнение таково, что силы инерции есть
математический фокус, продемонстрированный выше, позволяющий перейти к рассмотрению равновесия вместо
движения с ускорением. Сила инерции (3) определяется ускорением точки , но оно, в свою очередь определяется
действием на точку приложенных к ней сил, и в соответствии аксиоматикой Ньютона сила первична. Поэтому ни о
какой «физичности » сил инерции говорить не приходится. Природа не знает активных сил, зависящих от ускорения.
Силы, действующие на конкретную точку можно разделить на внешние активные , реакции внешних связей ,и
внутренние силы , представляющие собой силы взаимодействия рассматриваемой точки с остальными точками тела
(по сути - внутренние реакции). Все
упомянутые силы есть
равнодействующие
соответствующей группы сил,
приложенных к точке. Применим к
этому уравнению Принцип
Даламбера
Твердое тело находится в равновесии под действием приложенной к нему системы сил, если главный
вектор и главный момент этой системы сил, относительно выбранного центра O, раны нулю
Главный вектор системы сил - это векторная сумма всех сил, приложенных к телу. Сумма сил, приложенных к каждой
точке тела определяется последним уравнением, поэтому складывая уравнения для всех точек, в левой его части
получим главный вектор
При этом, сумма внутренних сил равна нулю, как следствие из третьего закона Ньютона. Аналогично вычисляем сумму
моментов всех сил относительно выбранного произвольного центра O, что дает нам равный нулю главный момент
системы сил
причем, как показывается в классическом курсе динамики , сумма моментов внутренних сил, приложенных к системе
материальных точек, равна нулю, то есть . Уравнения (5) и (6) уже выражают принцип Даламбера
применительно к твердому телу, но лишь с одной необходимой поправкой .
Число активных сил и реакций связей в уравнениях (5) и (6) конечно. Большинство слагаемых в соответствующих
суммах равны нулю, ибо активные внешние силы и реакции внешних связей , вообще говоря, приложены лишь в
некоторых точках тела. Чего нельзя сказать о силах инерции - силы инерции приложены к каждой точке тела. То есть
сумма сил инерции , и сумма их моментов относительно выбранного центра есть суммы интегральные. Систему сил
инерции принято сводить к главному вектору и главному моменту и мы можем написать, что
главный вектор и главный момент сил инерции , приложенных к твердому телу. Интегралы (7) и (8) берутся по всему
объему тела, а - радиус вектор точки тела относительно выбранного центра O.
Теврдое тело находится в равновесии под действием приложенных к нему внешних сил, реакций связей ,
главного вектора и главного момента сил инерции .
По сути (10) и (11) есть форма записи дифференциальных уравнений движения твердого тела. Они довольно часто
применяются в инженерной практике, однако с точки зрения механики , такая форма записи уравнений движения не
является самой удобной . Ведь интегралы (7) и (8) можно вычислить в общем виде и придти к более удобным
уравнениям движения. В этой связи (10) и (11) следует рассматривать как теоретическую основу построения
аналитической механики .
Умножив (12) на массу точки со знаком минус, мы получим силу инерции , приложенную к элементу объема твердого
тела
Выражение (13) - ковариантное представление вектора силы инерции . Двойное векторное произведение в (12)
перепишем в более удобной форме, используя тензор Леви -Чивиты и псевдовекторы угловой скорости и углового
ускорения
Подставляем (14) в (13) и берем тройной интеграл по всему объему тела, учитывая, что угловая скорость и угловое
ускорение одинаковы в каждой точке этого объема, то есть их можно вынести за знак интеграла
Интеграл в первом слагаемом - это масса тела. Интеграл во втором слагаемом более интересная штука. Вспомним одну
из формул курса теоретической механики :
где - контравариантные компоненты радиус-вектора центра масс рассматриваемого тела. Не в даваясь в смысл
понятия центра масс просто заменим интегралы в (15) в соответствии с формулой (16), учтя, что во втором слагаемом
(15) используются ковариантные компоненты.
Ага, выражение (17) тоже нам знакомо, представим его в более привычной векторной форме
Первое слагаемое в (18) - сила инерции , связанная с поступательным движением тела вместе с полюсом. Второе
слагаемое - центробежная сила инерции , связанная с осествемительным ускорением центра масс тела при его движении
вокруг полюса. Третье слагаемое - вращательная составляющая главного вектора сил инерции , связанная с
вращательным ускорением центра масс вокруг полюса. В общем-то всё находится в соответствии с классическими
соотношениями теормеха.
Пытливый читатель скажет: «зачем применять тензоры для получения этого выражения, если в векторном виде оно
было бы получено не менее очевидным способом?». В ответ я скажу, что получение формул (17) и (18) - это была
разминка. Теперь мы получим выражение главного момента сил инерции относительно выбранного полюса, и тут
тензорный подход проявляет себя во всей красе.
Возьмем уравнение (13) и умножим его векторно слева на радиус вектор точки тела относительно полюса. Тем самым
мы получим момент силы инерции , приложенной к элементарному объему тела
Не знаю как у вас, а у меня рябит в глазах, даже при моей привычности к таким формулам. Слагаемые расположены в
более естественном порядке - переставлены местами вращательная и центробежная составляющие. Кроме того, от
первого слагаемого ко второму возрастает сложность преобразующих выкладок. Будем упрощать их по очереди ,
сначала упростим первое, сразу взяв интеграл
Тут снова появился радиус вектор центра масс. Здесь ничего сложного - ускорение полюса у нас одно и мы вынесли его
за знак интеграла. Интерпретацией займемся чуть позже, а пока преобразуем второе слагаемое (20). В нем мы можем
выполнить свертку произведения тензоров Леви -Чивиты по немому индексу k
Здесь мы воспользовались свойством дельты Кронекера заменять свободный индекс вектора/ковектора при
выполнении свертки . Теперь возьмет интеграл, учтя, что угловое ускорение постоянно для всего объема тела
Во как! Малопонятный «крокодил», путем формальных тензорных преобразований схлопнулся в компактную формулу.
Я лукавлю, мы ввели новое обозначение:
Но это не просто абстрактная формула. По структуре выражения (24) видно, что оно отражает распределение массы
тела вокруг полюса и называется оно - тензор инерции твердого тела. Эта величина имеет поистине фундаментальное
значение для механики , и о ней мы поговорим подробнее, пока лишь скажу, что (24) - тензор второго ранга,
компонентами которого являются осевые и центробежные моменты инерции тела в выбранной системе координат. Он
характеризует инертность твердого тела при вращении . Обращаю внимание читателя и на то, как быстро мы получили
выражение для тензора инерции , по сути действуя формальным способом. С векторными соотношения без ломки
мозгов не обойтись, в этом я убедился на личном опыте.
Ну и наконец обратимся к последнему слагаемому (20). При взятии интеграла в нём тоже должен получится тензор
инерции , и мы будем преобразовывать его таким образом, чтобы достичь этой цели . В этой части выражения (20)
должно фигурировать соотношение между тензором инерции и угловой скоростью тела. Приступим, для начало
свернув произведение тензоров Леви -Чивиты
Налицо существенное упрощение выражения - за счет свойств дельты Кронекера и того, что векторное произведение
. Но тензора инерции в (25) не видно. С целью его получить проведем ряд эквивалентных
преобразований
Здесь мы снова учли , что , воспользовались свойствами дельты Кронекера и операцией
поднятия/опускания индексов при умножении на метрический тензор. И , теперь мы интегрируем (26)
с учетом которого получаем компактное выражение для составляющей главного момента сил инерции , связанного с
центробежными силами
И хоть меня и переполняют пафосные фразы, отложу их на потом, а сейчас аккуратно выпишу итоговый результат в
векторной форме.
В общем случае движения твердого тела главный вектор и главный момент сил инерции , приложенных к твердому
телу, равны
А теперь все же восхитимся - не смотря на то, что вышеприведенные преобразования похожи на египетские
иероглифы, они формальны, мы просто выполняли действия над индексами тензоров и использовали свойства
тензорных операций . Нам не надо было упражняться с векторами , расписывать векторные операции в компонентах и
сводить получившиеся проекции векторов к результатам матричных операций . Все матричные и векторные операции
конечных выражение вышли у нас автоматически . К тому же, естественным образом получены такие фундаментальные
характеристики как координаты центра масс тела и тензор инерции .
Читая лекции студентам я задался целью вывести (29) и (30) оперируя векторами . После того как я перевел стопку
бумаги и изрядно поломав мозги я пришел к результату. Поверьте на слово - вышеприведенные преобразования просто
семечки , в сравнении с тем, через что надо пройти не используя тензоров .
К тому же, выражения (29) и (30) получены нами для произвольного центра приведения сил, в качестве которого мы
взяли полюс O1. Эти выражения помогут нам понять что такое центр масс тела и его важность для механики .
Чем плохи эти уравнения? А тем, что они зависят друг от друга - ускорение полюса будет зависеть от углового
ускорения и угловой скорости тела, угловое ускорение - от ускорения полюса. Вектор определяет положение центра
масс тела по отношению к полюсу. А что если мы выберем полюс прямо в центре масс? Тогда ведь и уравнения
(31), (32) примут более простой вид
Узнаете эти уравнения? Уравнение (33) - теорема о движении центра масс механической системы, а (34) - динамическое
уравнение Эйлера сферического движения. И эти уравнения независимы друг от друга. Таким образом, центр масс
твердого тела - это точка, относительно которой силы инерции приводятся к наиболее простому виду. Поступательное
движение вместе с полюсом и сферическое вокруг полюса - динамически развязаны. Тензор инерции тела,
вычисляется относительно центра масс и называется центральным тензором инерции.
Уравнения (33), (34) в зарубежной литературе называют уравнениями Ньютона-Эйлера, и , в настоящее время весьма
активно используются для построения ПО , предназначенного для моделирования механических систем. В рамках цикла
о тензорах мы ещё не раз о них вспомним.
Заключение
Прочитанная вами статья имеет две цели - в ней мы ввели базовые понятия динамики твердого тела и
проиллюстрировали мощность тензорного подхода при упрощении громоздких векторных соотношений .
В дальнейшем мы подробнее остановимся на тензоре инерции и изучим его свойства. Погрузившись в дебри
аналитической механики , сведем уравнения (31) - (34) к уравнениям движения в обобщенных координатах. В общем,
рассказать ещё есть о чем. А пока, благодарю за внимание!
Продолжение следует …
Часть 15. Движение несвободного твердого тела
Введение
В прошлый раз мы рассмотрели один из способов получения дифференциальных уравнений движения
твердого тела исходя из принципа Даламбера. Мы остановились на общей форме уравнений движения
Однако, внимательно взглянув на эти уравнения, меня следовало бы раскритиковать - дело в том, что в
данных уравнениях число неизвестных слишком велико. К неизвестным следует отнести ускорение
полюса и угловое ускорение тела , а также реакции связей . И если движение тела ограничено хотя
бы одной связью, число неизвестных величин в (1) и (2) превышает число уравнений .
Это происходит потому, что левая часть уравнений (1) и (2) содержит ускорения, вычисляемые для случая
свободного движения тела, то есть в них имеются избыточные координаты. Поэтому, систему (1), (2)
следует дополнить уравнениями связей , описывающими ограничения, налагаемые связями на координаты,
скорости и ускорения точек тела.
Этим мы сейчас и займемся - посмотрим, во что превращаются уравнения (1) и (2) при добавлении
уравнений связей , и что дают нам полученные уравнения в практическом смысле.
И для свободного тела нет смысла использовать произвольный полюс - лучше сменить центр приведения
систем сил инерции на центр масс тела, записав уравнения движения в более простой форме
Уравнения (5) и (6) - дифференциальные уравнения свободного движения твердого тела. Они могут быть
разрешены относительно ускорений и проинтегрированы численно, при заданных начальных условиях.
Реакция сферического шарнира, выражается одной силой , поэтому, с учетом (7) уравнения (1) и (2)
можно переписать в виде
Учтем, что момент второй реакции можно вычислить как , при этом ,
то есть получаем
Вторые слагаемые в обеих частях данного уравнения - смешанные произведения компланарных векторов и
равны нулю, в итоге имеем
– проекция векторного момента относительно неподвижной точки на ось проходящую через эту точку или
- момент силы относительно оси.
Выражение (14) крайне интересно. Если переписать его в тензорной форме, то мы получим формулу
позволяющую, по известному тензору инерции твердого тела определить его момент инерции
относительно интересующей нас оси вращения, направление которой в пространстве задано ортом .
Момент инерции (16) является скалярной величиной , характеризующей распределение массы тела вокруг
оси вращения. Эта величина, равно как и уравнение (13) хорошо известны из общего курса теоретической
механики .
где - вектор, касательный к траекториям точек тела. В случае поступательного движения, траектории
всех его точек одинаковы, а значит и вектор касательной к траектории одинаков для всех точек. С учетом
(17) и (18) можно переписать уравнение (1)
или
Заключение
В данной статье мы рассмотрели , как преобразуются общие уравнения движения твердого тела (1) и (2)
если дополнить их уравнениями связей . При этом, мы легко и непринужденно построили
дифференциальные уравнения движения для всех частных случаев движения тела, изучаемых
теоретической механикой .
Благодарности
при подготовке данной статьи использован метод, предложенный пользователем @SeptiM. В связи с
очевидным удобством работы, хочу выразить признательность автору, за проделанную им работу.
Продолжение следует …
Часть 16. Свойства тензора инерции твердого тела
Введение
Начав рассматривать динамику твердого тела мы столкнулись интересной тензорной величиной , а именно
называемой тензором инерции твердого тела. Кроме того, мы выяснили , что привычный из курса
теоретической механики момент инерции твердого тела, при его вращении вокруг неподвижной оси ,
получается из тензора инерции с помощью простой формулы
Рассмотрим подробнее свойства тензора инерции твердого тела. И для начала изучим механические
величины, вычисление которых, так же как и приведение сил инерции к данному центру, приводит к
понятию тензора инерции .
Для твердого тела, при вращении вокруг полюса МКД элементарного объема
В соответствии с (4), тензор инерции есть линейный оператор, связывающий МКД твердого тела с его
угловой скоростью.
Интегрируя последнее выражение по всему объему тела получаем выражение кинетической энергии
В выражении (5), как видно, снова фигурирует тензор инерции . При вращении тела вокруг
неподвижной оси , в соответствии с выражением угловой скорости через конечный поворот тела
выражение (5) трансформируется в
Формула (6) - кинетическая энергия твердого тела при вращательном движении , а , в соответствии с (2),
момент инерции тела относительно оси , задаваемой ортом .
Полученный тензор (7) является симметричным ковариантным тензором 2-го ранга, так как нетрудно
убедится в справедливости равенства . Будем называть тензор (7) ковариантным тензором
инерции. С учетом выражения (7) можно переписать выражение (2) для осевого момента инерции через
контравариантные компоненты орта оси вращения
Автор не встретил в литературе только что введенного термина, но поскольку из симметричности (7)
вытекают все основные свойства тензора инерции , ввод данного понятия, как будет показано ниже,
вполне оправдан .
Допустив комплексные собственные числа и собственные векторы, умножим (9) слева на сопряженнй
собственный вектор
Здесь мы учитываем что компоненты (7) - действительные числа, а значит операция сопряжения
эквивалентна транспонированию. Так как тензор (7) симметричный , , то есть, с учетом (10)
или , окончательно
действительное число.
Так как тензор (7) представлен матрицей в трехмерном пространстве, он имеет три действительных
собственных числа , которым соответствуют действительные же собственные векторы ,
соответственно, можно записать тензорные соотношения
Поделив обе части уравнений (14) на квадрат модуля соответствующего собственного вектора, получим
Очевидно, что
контравариантные компоненты некоторых ортов . Значит в (15), согласно (8), в качестве собственных чисел
ковариантного тензора инерции , представлены моменты инерции тела относительно осей и
которое, в силу того, что в общем случае , справедливо, когда скалярное произведение собственных
векторов равно нулю
Это означает, что . Повторяя доказательство для любой пары собственных векторов ,
получим, что они действительно ортогональны друг другу.
В диагонали стоят моменты инерции , вычисляемые по формулам (17). Эти моменты инерции называют
главными моментами инерции твердого тела, а оси , направление которых задается векторами и -
главными осями инерции.
6. Теорема Гюйгенса-Штейнера
Предположим, что нам известен центральный (вычисленный относительно центра масс тела) тензор
инерции . Допустим, что мы хотим вычислить тензор инерции относительно точки , отстоящей от
центра масс в направлении известного вектора . В этом случае радиус-вектор элементарного объема тела
относительно точки можно определить как сумму
задают положение центра масс тела относительно центра масс, то есть равны нулю. Окончательно
получаем выражение для тензора инерции
определяющее тензор инерции относительно произвольной точки через тензор инерции относительно
центра масс. Выражение (19) называют теоремой Гюйгенса-Штейнера. Приведенное доказательство этой
теоремы выполнено в самой общей форме.
В этом случае совпадают выражения для тензора инерции и ковариантного тензора инерции
Поэтому в декартовых координатах симметричен и тензор инерции , и для него справедливы
вышеперечисленные свойства, связанные с собственными значениями и собственными векторами . В
декартовых координатах тензор инерции представляется матрицей
или
где диагональные элементы называют осевыми моментами инерции , а прочие элементы - центробежными
моментами инерции .
Заключение
Материал данной статьи - авторская работа. В литературе господствует подход к изучению тензора
инерции связанный с использованием декартовых координат. Нами же рассмотрен самый общий подход и
мы убедились, что свойства тензора инерции и теорема Гюйгенса-Штейнера могут быть получены в
произвольных координатах. Все приведенные в статье формулы переходят в общеизвестные из курса
теоретической механики при использовании декартовой метрики .
Upd: Нашел упоминание о ковариантном тензоре инерции на каком-то богом забытом сайте. Что ж, это
подтверждает идею, использованную мной в данной статье
Продолжение следует …
Часть 17. Зарисовка о гайке Джанибекова
Данная статья посвящается светлой памяти моего учителя, доктора технических наук, профессора Кабелькова Александра
Николаевича, основателя и первого декана Физико-математического факультета ЮРГТУ (НПИ )
Введение
Это случилось в 1985 году, на орбитальной станции «Салют-7», во время посещения её экипажем корабля «Союз Т-13» в составе
космонавтов Джанибекова В. А . и Савиных В. П . Не буду описывать своими словами , процитировав один из многочисленных
сетевых источников
Когда космонавты распаковывали доставленный на орбиту груз, то им приходилось откручивать так называемые
«барашки» – гайки с ушками. Стоит ударить по ушку «барашка», и он сам раскручивается. Затем, раскрутившись до конца
и соскочив с резьбового стержня, гайка продолжает, вращаясь, лететь по инерции в невесомости (примерно как летящий
вращающийся пропеллер). Так вот, Владимир Александрович заметил, что пролетев примерно 40 сантиметров ушками
вперед, гайка вдруг совершает внезапный переворот на 180 градусов и продолжает лететь в том же направлении , но уже
ушками назад и вращаясь в другую сторону. Затем, опять пролетев сантиметров 40, гайка снова делает кувырок на 180
градусов и продолжает лететь снова ушками вперед, как в первый раз и так далее. Джанибеков неоднократно повторял
эксперимент, и результат неизменно повторялся. В общем, вращающаяся гайка, летящая в невесомости , совершает резкие
180-градусные периодические перевороты каждые 43 сантиметра. Также он пробовал вместо гайки использовать другие
предметы, например, пластилиновый шарик с прилепленной к нему обычной гайкой , который точно так же, пролетев
некоторое расстояние, совершал такие же внезапные перевороты.
Думаю, что для затравки этого вполне достаточно. На самом деле, в «эффекте Джанибекова» нет ничего экстраординарного (хотя ему
причисляют и возможную смену полюсов Земли каждые 12000 лет, и прочие глобальные катаклизмы). Используя аппарат тензорной
алгебры и теорию устойчивости механического движения, попробуем разобраться, что происходит с загадочной гайкой .
и , так как
С учетом начальных условий уравнение движения полюса легко интегрируется, и мы получаем равномерное и прямолинейное
движение центра масс. Вся соль во втором уравнении , которое тоже легко интегрируется, ведь его левая часть - абсолютная
производная от момента количества движения гайки относительно центра масс
где - локальная производная МКД, взятая в связанной системе координат, а сама формула носит название формулы Бура.
Таким образом и второе уравнение дает интеграл
который говорит о неизменности МКД. Учитывая, что в начале угловая скорость направлена строго вдоль оси , МКД так же будет
направлен вдоль той же оси , ибо несимметричность тела в этом случае влияния оказывать не будет, МКД будет иметь проекцию на
ось и она будет равна . Откуда тогда берутся эволюции, описанные в опыте Джанибекова?
или
Обратите внимание, оперируя тензорами мы начисто забыли о том, что в уравнении (6) имеется страшное матричное умножение да
ещё и векторное произведение. Ещё одна иллюстрация мощности тензорного подхода к преобразованию векторно-матричных форм.
4. Исследование устойчивости движения гайки Джанибекова по первому
приближению (первый метод Ляпунова)
Снова перейдем к матричной форме в уравнении (11), разрешив его относительно производной отклонений угловой скорости
Первый метод Ляпунова, который мы будем использовать для оценки устойчивости движения гайки предусматривает исследование
собственных чисел матрицы . Для того, чтобы установившееся движение было устойчивым, собственные числа (которых
будет три ) матрицы должны иметь отрицательные действительные части .
Однако, для начала нам следует получить матрицу , элементы которой удовлетворяют тензорному соотношению
Для начала вспомним, что мы работаем в декартовых координатах, значит метрический тензор представлен единичной матрицей ,
тензор Леви -Чивиты - символами Веблена, о которых мы уже говорили , а тензор инерции ранга совпадает с тензором инерции
ранга .
Для свертки выражения (13) можно воспользоваться СКА , но так как я ещё не разобрался с покомпонентной работой с тензорами в
Maxima и Maple, то быстро набросал следующий код в Maple, пользуясь её средствами линейной алгебры
restart;
with(LinearAlgebra): levi_civita := proc(i, j, k)
local E := IdentityMatrix(3,3); local A := Matrix(3, 3); local i1 := 0;
A[1] := E[i]; A[2] := E[j]; A[3] := E[k];
return Determinant(Transpose(A));
end proc:
J := Matrix( [ [I[xx], 0, 0], [0, aI[xx], 0], [0, 0, bI[xx]] ]); g := IdentityMatrix(3, 3); Omega := Vector([omega, 0, 0]); L := J . Omega;
G := Matrix(3, 3);
for r from 1 to 3 do
for l from 1 to 3 do G[r, l] := 0; for k from 1 to 3 do summ := 0; for m from 1 to 3 do summ := summ + levi_civita(r, k, m)*Omega[k]*J[m, l]
+ levi_civita(r,k,m)*g[k,l]*L[m]; end do: G[r, l] := G[r, l] + summ; end do:
end do:
end do:
Пропустив исходные данные через Maple, на выходе получаем матрицу
где - угловая скорость вращения гайки сразу после схода с резьбы на установившемся участке движения, перед кувырком. Эту
угловую скорость можно считать постоянной .
Характеристическое уравнение для вычисления собственных чисел данной матрицы имеет вид
Собственные числа принимают действительные значения, если безразмерные моменты инерции удовлетворяют условию
В противном случае два собственный числа будут чисто мнимыми . Если мы построим графики зависимости собственных значений
и от безразмерных моментов инерции , то увидим, что при нарушении условия (15) графики проваливаются в комплексную область.
Выводы
Хотя бы одно собственное значение с положительной вещественной частью говорит о неустойчивости установившегося режима
движения.
Теперь посмотрим, ведь условие (15) удовлетворяет принятому нами в начале условию (3). При соотношении между моментами
инерции , когда
то есть, будучи изначально закрученной вокруг оси с промежуточным между максимальным и минимальным значением момента
инерции , гайка ведет себя неустойчиво, совершает переворот, а затем снова пытается найти устойчивое положение, и снова совершает
переворот. Известно, что устойчивые вращения свободного тела возможны лишь вокруг осей с максимальным и минимальным
моментом инерции .
Если
то мы получаем чисто мнимые корни характеристического уравнения, и первый метод Ляпунова не отвечает однозначно на вопрос,
будет ли устойчиво движение в этом случае. Но исходя из того, что знает механика не сегодняшний день и из колебательного
характера решения линейных уравнений с мнимыми корнями характеристического уравнения, можно предположить периодические
колебания вектора угловой скорости около установившегося режима, что соответствует процессам прецессии и нутации .
В этой связи , наша планета, удовлетворяющая условию (16) не будет испытывать на себе эффект Джанибекова. Так что глобальная
катастрофа со сменой полюсов нам не грозит.
Данная статья была некоторой разминкой . К гайке «барашку» мы, возможно ещё вернемся, а пока - благодарю моих читателей за
внимание!
Продолжение следует …
Часть 18. Математическое моделирование эффекта
Джанибекова
Введение
Прошлая статья должна была быть о численном моделировании эффекта Джанибекова, но мне внезапно
пришла в голову мысль, что этот эффект можно исследовать качественно, пусть и довольно
приближенным первым методом Ляпунова. Однако, численное моделирование тоже весьма интересный
вопрос, тем более лежащий в плоскости моих исследовательских задач. Поэтому, сегодня мы
(1)
Векторная форма записи удобна для общего анализа характера зависимостей , она привычна и в ней видно,
что означает конкретное слагаемое. Однако, для дальнейшего преобразования уравнений в форму,
удобную для моделирования, перейдем к тензорной записи
(2)
Система уравнений (2) уже является замкнутой , интегрируя её можно получить закон движения центра
масс и зависимость угловой скорости тела от времени . Но, нас ещё будет интересовать ориентация тела,
поэтому дополним данную систему уравнений
(3)
Уравнение (3) есть ничто иное как представление компонент угловой скорости через параметры
ориентации Родрига-Гамильтона. Это выражение мы уже получали в предыдущих статьях. Теперь мы
будем рассматривать его как дифференциальное уравнение, связывающее параметры ориентации с
компонентами угловой скорости .
(4)
Продифференцируем (4) по времени
и есть искомое уравнение связи . Полная система уравнений движения свободного твердого тела в
тензорной форме будет иметь вид
(6)
(7)
(8)
Вращение гайки описывается системой семи уравнений первого порядка, которые получаем из (8), вводя
(9)
где - угловая скорость гайки после схода с резьбы; - начальное возмущение угловой скорости
Сравним полученный результат с движением тела, закрученным вокруг оси с максимальным моментом
инерции , то есть положим , задав следующие значения параметров
, рад/с, , рад/с
Параметры ориентации Родрига-Гамильтона
Проекции угловой скорости на собственные оси
Видно, что при достаточно значительном возмущении угловой скорости движение остается устойчивым
вращением вокруг оси с небольшой прецессией .
Похожая картина наблюдается для тела, закручиваемого вокруг оси с минимальным моментом инерции (
) , рад/с, , рад/с
Параметры ориентации Родрига-Гамильтона
Проекции угловой скорости на собственные оси
Частота прецессии существенно меньше, чем при закрутке вокруг оси с максимальным моментом инерции ,
что логично, так как колебания происходят вокруг оси с большим моментом инерции , чем в случае
.
Заключение
Все расчеты выполнены автором в СКА Maple 18. Графики построены из лога расчета связкой Kile +
LaTeX + gnuplot.
Хотелось бы ещё сделать анимацию, однако опыт автора в этом вопросе крайне мал. Поэтому хотел бы
задать вопрос читателям - существует ли ПО (для Linux/Windows), с помощью которого имея набор
значений параметров кватерниона ориентации в зависимости от времени сделать анимационный ролик,
иллюстрирующий движение тела? Подозреваю, что подобное можно провернуть с Blender 3D, но не
уверен .
Продолжение следует …