stringtranslate.com

Матрица вращения

В линейной алгебре матрица вращения — это матрица преобразования , которая используется для выполнения вращения в евклидовом пространстве . Например, используя соглашение, приведенное ниже, матрица

вращает точки в плоскости xy против часовой стрелки на угол θ относительно начала координат двумерной декартовой системы координат . Чтобы выполнить вращение точки плоскости со стандартными координатами v = ( x , y ) , его следует записать в виде вектор-столбца и умножить на матрицу R :

Если x и y — координаты конечной точки вектора, где x — косинус, а y — синус, то приведенные выше уравнения становятся формулами тригонометрического угла суммирования . Действительно, матрицу вращения можно рассматривать как формулы тригонометрического суммирования углов в матричной форме. Один из способов понять это — сказать, что у нас есть вектор, расположенный под углом 30° к оси X , и мы хотим повернуть этот угол еще на 45°. Нам просто нужно вычислить координаты конечной точки вектора под углом 75°.

Примеры в этой статье применимы к активным вращениям векторов против часовой стрелки в правосторонней системе координат ( y против часовой стрелки от x ) путем предварительного умножения ( R слева). Если какой-либо из них изменен (например, вращение осей вместо векторов, пассивное преобразование ), то следует использовать обратную матрицу примера, которая совпадает с ее транспонированием .

Поскольку умножение матриц не влияет на нулевой вектор (координаты начала координат), матрицы вращения описывают вращения вокруг начала координат. Матрицы вращения обеспечивают алгебраическое описание таких вращений и широко используются для вычислений в геометрии , физике и компьютерной графике . В некоторой литературе термин « вращение» обобщается и включает в себя неправильные вращения , характеризующиеся ортогональными матрицами с определителем -1 (вместо +1). Они сочетают правильное вращение с отражениями (которые инвертируют ориентацию ). В других случаях, когда отражения не учитываются, собственно метку можно отбросить. В этой статье соблюдается последнее соглашение.

Матрицы вращения представляют собой квадратные матрицы с действительными элементами. Более конкретно, их можно охарактеризовать как ортогональные матрицы с определителем  1; то есть квадратная матрица R является матрицей вращения тогда и только тогда, когда R T = R −1 и det R = 1 . Набор всех ортогональных матриц размера n с определителем +1 представляет собой представление группы , известной как специальная ортогональная группа SO( n ) , одним из примеров которой является группа вращения SO(3) . Набор всех ортогональных матриц размера n с определителем +1 или -1 является представлением (общей) ортогональной группы O( n ) .

В двух измерениях

Поворот вектора против часовой стрелки на угол θ . Вектор изначально выровнен по оси x .

В двух измерениях стандартная матрица вращения имеет следующий вид:

Это вращает векторы-столбцы посредством следующего матричного умножения :

Таким образом, новые координаты ( x ′, y ′) точки ( x , y ) после вращения равны

Примеры

Например, когда вектор

повернут на угол θ , его новые координаты равны

и когда вектор

повернут на угол θ , его новые координаты равны

Направление

Направление вращения вектора — против часовой стрелки, если θ положительное (например, 90°), и по часовой стрелке, если θ отрицательное (например, −90°) для . Таким образом, матрица вращения по часовой стрелке находится как

Двумерный случай — единственный нетривиальный (то есть не одномерный) случай, когда группа матриц вращения коммутативна, так что не имеет значения, в каком порядке выполняются множественные вращения. Альтернативное соглашение использует вращающиеся оси [1] , и приведенные выше матрицы также представляют вращение осей по часовой стрелке на угол θ .

Нестандартная ориентация системы координат

Поворот на угол θ с нестандартными осями.

Если используется стандартная правосторонняя декартова система координат , с осью x вправо и осью y вверх, вращение R ( θ ) происходит против часовой стрелки. Если используется левая декартова система координат, где x направлен вправо, а y направлен вниз, R ( θ ) движется по часовой стрелке. Такие нестандартные ориентации редко используются в математике, но распространены в 2D компьютерной графике , начало которой часто находится в верхнем левом углу, а ось Y вниз по экрану или странице. [2]

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

Общие 2D-вращения

Особенно полезны матрицы

для вращения на 90°, 180° и 270° против часовой стрелки.

Поворот на 180° (в центре) , за которым следует положительный поворот на 90° (слева), эквивалентен одному отрицательному повороту на 90° (положительный 270°) (справа). Каждый из этих рисунков изображает результат вращения относительно вертикального исходного положения (внизу слева) и включает матричное представление перестановки, примененной при вращении (в центре справа), а также другие связанные диаграммы. Подробности см. в разделе «Обозначение перестановок» в Викиверситете.

Связь со сложной плоскостью

С

матрицы формы

образуют кольцо , изоморфное полю комплексных чисел . При этом изоморфизме матрицы вращения соответствуют кругу единичных комплексных чисел , комплексных чисел модуля 1 .

Если отождествить с через линейный изоморфизм, действие матрицы вышеуказанного вида на векторы соответствует умножению на комплексное число x + iy , а повороты соответствуют умножению на комплексные числа по модулю 1 .

Поскольку любую матрицу вращения можно записать

приведенное выше соответствие связывает такую ​​матрицу с комплексным числом

(это последнее равенство и есть формула Эйлера ).

В трех измерениях

Положительный поворот на 90° вокруг оси Y (слева) после поворота вокруг оси Z (в центре) дает поворот на 120° вокруг главной диагонали (справа).
В левом верхнем углу — матрицы вращения, в правом нижнем — соответствующие перестановки куба с началом координат в его центре.

Базовые 3D-вращения

Базовое трехмерное вращение (также называемое элементарным вращением) — это вращение вокруг одной из осей системы координат. Следующие три основные матрицы вращения вращают векторы на угол θ вокруг осей x , y или z в трех измерениях, используя правило правой руки , которое кодифицирует их чередующиеся знаки. Обратите внимание, что правило правой руки работает только при умножении . (Эти же матрицы могут также представлять вращение осей по часовой стрелке. [nb 1] )

Для векторов-столбцов каждое из этих основных векторных вращений появляется против часовой стрелки, когда ось, вокруг которой они происходят, направлена ​​к наблюдателю, система координат правая, а угол θ положителен. R z , например, будет вращать в направлении оси y вектор, совмещенный с осью x , что можно легко проверить, оперируя R z вектором (1,0,0) :

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

Общие 3D-вращения

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

представляет вращение , углы отклонения, тангажа и крена которого равны α , β и γ соответственно. Более формально, это внутреннее вращение, углы Тейта – Брайана которого равны α , β , γ вокруг осей z , y , x соответственно. Аналогично, продукт

представляет собой внешнее вращение, чьи (неправильные) углы Эйлера равны α , β , γ вокруг осей x , y , z .

Эти матрицы производят желаемый эффект только в том случае, если они используются для предварительного умножения векторов-столбцов и (поскольку в общем случае умножение матриц не является коммутативным ) только в том случае, если они применяются в указанном порядке (более подробную информацию см. в разделе «Неоднозначности»). Порядок операций вращения — справа налево; матрица, соседняя с вектором-столбцом, применяется первой, а затем — слева. [3]

Преобразование матрицы вращения в ось-угол

Каждое вращение в трех измерениях определяется своей осью (вектор вдоль этой оси не изменяется при вращении), а его угол — величиной вращения вокруг этой оси ( теорема Эйлера о вращении ).

Существует несколько методов вычисления оси и угла на основе матрицы вращения (см. также представление оси-угла ). Здесь мы опишем только метод, основанный на вычислении собственных векторов и собственных значений матрицы вращения. Также можно использовать след матрицы вращения.

Определение оси

Вращение R вокруг оси u можно разложить, используя 3 эндоморфизма P , ( IP ) и Q (щелкните, чтобы увеличить).

Учитывая матрицу вращения R 3 × 3 , вектор u, параллельный оси вращения, должен удовлетворять

поскольку вращение u вокруг оси вращения должно привести к u . Уравнение, приведенное выше, можно решить для u , которое уникально с точностью до скалярного множителя, если только R = I.

Далее уравнение можно переписать

который показывает, что u лежит в нулевом пространстве R I .

С другой стороны, uсобственный вектор R , соответствующий собственному значению λ = 1 . Каждая матрица вращения должна иметь это собственное значение, причем два других собственных значения являются комплексно-сопряженными друг с другом. Отсюда следует, что общая матрица вращения в трех измерениях имеет с точностью до мультипликативной константы только один действительный собственный вектор.

Один из способов определить ось вращения — показать, что:

Поскольку ( RRT )кососимметричная матрица , мы можем выбрать u так, что

Произведение матрицы и вектора становится векторным произведением вектора на самого себя, гарантируя, что результат равен нулю:

Следовательно, если

затем

Величина u , вычисленная таким образом, равна u ‖ = 2 sin θ , где θ — угол поворота.

Это не работает , если R симметричен. Выше: если RR T равно нулю, то все последующие шаги недействительны. В этом случае необходимо диагонализировать R и найти собственный вектор, соответствующий собственному значению 1.

Определение угла

Чтобы найти угол поворота, как только ось вращения известна, выберите вектор v, перпендикулярный оси. Тогда угол поворота — это угол между v и R v .

Однако более прямой метод — просто вычислить след : сумму диагональных элементов матрицы вращения. Следует позаботиться о выборе правильного знака угла θ , соответствующего выбранной оси:

откуда следует, что абсолютное значение угла равно

Для оси вращения вы можете получить правильный угол [4] из

где

Матрица вращения по оси и углу

Матрица собственного вращения R на угол θ вокруг оси u = ( u x , u y , u z ) , единичный вектор с u2
х
+ ты2
года
+ ты2
з
= 1
, определяется как: [5]

Вывод этой матрицы из основных принципов можно найти в разделе 9.2 здесь. [6] Основная идея получения этой матрицы состоит в разделении проблемы на несколько известных простых шагов.

  1. First rotate the given axis and the point such that the axis lies in one of the coordinate planes (xy, yz or zx)
  2. Then rotate the given axis and the point such that the axis is aligned with one of the two coordinate axes for that particular coordinate plane (x, y or z)
  3. Use one of the fundamental rotation matrices to rotate the point depending on the coordinate axis with which the rotation axis is aligned.
  4. Reverse rotate the axis-point pair such that it attains the final configuration as that was in step 2 (Undoing step 2)
  5. Reverse rotate the axis-point pair which was done in step 1 (undoing step 1)

This can be written more concisely as

where [u]× is the cross product matrix of u; the expression uu is the outer product, and I is the identity matrix. Alternatively, the matrix entries are:

where εjkl is the Levi-Civita symbol with ε123 = 1. This is a matrix form of Rodrigues' rotation formula, (or the equivalent, differently parametrized Euler–Rodrigues formula) with[nb 2]

In the rotation of a vector x around the axis u by an angle θ can be written as:

or equiviliently:

This can also be written in tensor notation as:

If the 3D space is right-handed and θ > 0, this rotation will be counterclockwise when u points towards the observer (Right-hand rule). Explicitly, with a right-handed orthonormal basis,

Note the striking merely apparent differences to the equivalent Lie-algebraic formulation below.

Properties

For any n-dimensional rotation matrix R acting on

(The rotation is an orthogonal matrix)

It follows that:

Вращение называется правильным, если det R = 1 , и неправильным (или рото-отражением), если det R = –1 . Для четных размерностей n = 2 k n собственных значений λ собственного вращения встречаются как пары комплексно-сопряженных чисел , которые являются корнями из единицы: λ = e ± j для j = 1, ..., k , что действительно только для λ знак равно ±1 . Следовательно, не может быть векторов, фиксируемых вращением ( λ = 1 ), и, следовательно, не может быть оси вращения. Любые фиксированные собственные векторы встречаются парами, а ось вращения представляет собой четномерное подпространство.

Для нечетных размерностей n = 2 k + 1 собственное вращение R будет иметь нечетное количество собственных значений, по крайней мере, с одним λ = 1 , а ось вращения будет нечетномерным подпространством. Доказательство:

Здесь I — единичная матрица, и мы используем det( RT ) = det( R ) = 1 , а также (−1) n = −1, поскольку n нечетно . Следовательно, det( RI ) = 0 , что означает, что существует нулевой вектор v с ( R – I ) v = 0 , то есть R v = v , фиксированный собственный вектор. В четномерном подпространстве, ортогональном v , также могут быть пары фиксированных собственных векторов , поэтому общая размерность фиксированных собственных векторов нечетна.

Например, в 2-пространстве n = 2 вращение на угол θ имеет собственные значения λ = e и λ = e - , поэтому оси вращения нет, за исключением случая θ = 0 , случая нулевого вращения. В трехмерном пространстве n = 3 ось ненулевого собственного вращения всегда является единственной линией, а поворот вокруг этой оси на угол θ имеет собственные значения λ = 1, e , e . В 4-пространстве n = 4 четыре собственных значения имеют вид e ± , e ± . Нулевое вращение имеет θ = φ = 0 . Случай θ = 0, φ ≠ 0 называется простым вращением , с двумя единичными собственными значениями, образующими плоскость оси , и двумерным вращением, ортогональным плоскости оси. В противном случае осевая плоскость отсутствует. Случай θ = φ называется изоклиническим вращением , в котором собственные значения e ± повторяются дважды, поэтому каждый вектор поворачивается на угол θ .

След матрицы вращения равен сумме ее собственных значений. При n = 2 поворот на угол θ имеет след 2 cos θ . При n = 3 поворот вокруг любой оси на угол θ имеет след 1 + 2 cos θ . Для n = 4 и след равен 2(cos θ + cos φ ) , который становится 4 cos θ для изоклинического вращения.

Примеры

Геометрия

В евклидовой геометрии вращение является примером изометрии , преобразования, которое перемещает точки без изменения расстояний между ними. Вращения отличаются от других изометрий двумя дополнительными свойствами: они оставляют (по крайней мере) одну фиксированную точку и оставляют неизменной « руку ». Напротив, перемещение перемещает каждую точку, отражение меняет местами левый и правый порядок, скользящее отражение делает и то, и другое, а неправильное вращение сочетает в себе изменение левостороннего вращения с нормальным вращением.

Если за начало декартовой системы координат принять фиксированную точку , то каждой точке можно присвоить координаты как смещение от начала координат. Таким образом, можно работать не с самими точками, а с векторным пространством перемещений. Теперь предположим, что ( p1 , ... , pn ) координаты вектора p от начала координат O до точки P. Выберите ортонормированный базис для наших координат; тогда квадрат расстояния до P по Пифагору равен

который можно вычислить с помощью матричного умножения

Геометрическое вращение преобразует линии в линии и сохраняет соотношения расстояний между точками. Из этих свойств можно показать, что вращение является линейным преобразованием векторов и, следовательно, может быть записано в матричной форме Q p . Тот факт, что вращение сохраняет не только соотношения, но и сами расстояния, формулируется как

или

Поскольку это уравнение справедливо для всех векторов p , можно сделать вывод, что каждая матрица вращения Q удовлетворяет условию ортогональности :

Вращения сохраняют направленность, поскольку они не могут изменить порядок осей, что подразумевает специальное матричное условие:

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

Умножение

Обратной матрицей вращения является ее транспонирование, которое также является матрицей вращения:

Произведение двух матриц вращения представляет собой матрицу вращения:

Для n > 2 умножение матриц вращения n × n обычно не является коммутативным .

Отмечая, что любая единичная матрица является матрицей вращения и что умножение матриц ассоциативно , мы можем суммировать все эти свойства, сказав, что матрицы вращения размера n × n образуют группу , которая при n > 2 неабелева , называемую специальной ортогональной группой . group и обозначается SO( n ) , SO( n , R ) , SO n или SO n ( R ) , группа матриц вращения размера n × n изоморфна группе вращений в n -мерном пространстве. Это означает, что умножение матриц вращения соответствует композиции вращений, применяемых в порядке слева направо к соответствующим матрицам.

Неясности

Ротации псевдонимов и алиби

Интерпретация матрицы вращения может быть неоднозначной.

В большинстве случаев эффект неоднозначности эквивалентен эффекту инверсии матрицы вращения ( для этих ортогональных матриц эквивалентно транспонирование матрицы ).

Трансформация псевдонима или алиби (пассивного или активного)
Координаты точки P могут измениться как из-за поворота системы координат CS ( алиас ), так и из-за поворота точки P ( алиби ). В последнем случае вращение P также приводит к вращению вектора v , представляющего P . Другими словами, либо P и v фиксированы, пока CS вращается (псевдоним), либо CS фиксирован, пока P и v вращаются (алиби). Любое вращение можно законно описать обоими способами, поскольку векторы и системы координат фактически вращаются относительно друг друга вокруг одной оси, но в противоположных направлениях. В этой статье мы выбрали подход алиби для описания вращений. Например,
представляет собой поворот вектора v против часовой стрелки на угол θ или поворот CS на тот же угол, но в противоположном направлении (т.е. по часовой стрелке). Преобразования Алиби и псевдонимов также известны как активные и пассивные преобразования соответственно.
Предварительное или пост-умножение
Одна и та же точка P может быть представлена ​​либо вектором -столбцом v , либо вектором-строкой w . Матрицы вращения могут либо предварительно умножать векторы-столбцы ( R v ), либо после умножать векторы-строки ( w R ). Однако R v вызывает вращение в направлении, противоположном w R . В этой статье повороты векторов-столбцов описываются посредством предварительного умножения. Чтобы получить точно такое же вращение ( т.е. те же конечные координаты точки P ) , эквивалентный вектор-строка должен быть умножен на транспонирование R (т.е. wRT ) .
Правые или левые координаты
Матрица и вектор могут быть представлены относительно правой или левой системы координат. На протяжении всей статьи мы предполагали правостороннюю ориентацию, если не указано иное.
Векторы или формы
Векторное пространство имеет двойственное пространство линейных форм , и матрица может действовать как на векторы, так и на формы.

Разложения

Независимые самолеты

Рассмотрим матрицу вращения 3 × 3

Если Q действует в определенном направлении v просто как масштабирование с коэффициентом λ , то мы имеем

так что

Таким образом, λ является корнем характеристического многочлена для Q ,

Обращают на себя внимание две особенности. Во-первых, один из корней (или собственных значений ) равен 1, что говорит нам о том, что на какое-то направление матрица не влияет. Для вращений в трех измерениях это ось вращения (понятие, не имеющее смысла ни в каком другом измерении). Во-вторых, два других корня представляют собой пару комплексно-сопряженных чисел, произведение которых равно 1 (постоянный член квадратичного уравнения), а сумма равна 2 cos θ (отрицаемый линейный член). Эта факторизация представляет интерес для матриц вращения 3 × 3 , поскольку со всеми ними происходит одно и то же. (В особых случаях для нулевого поворота «комплексно-сопряженные» оба равны 1, а для поворота на 180 ° они оба равны -1.) Кроме того, аналогичная факторизация справедлива для любой матрицы вращения n × n . Если размерность n нечетна, будет «висящее» собственное значение, равное 1; и для любого измерения остальные полиномиальные факторы разлагаются на квадратичные члены, подобные этому (с учетом двух особых случаев). Нам гарантируется, что характеристический полином будет иметь степень n и, следовательно, n собственных значений. А поскольку матрица вращения коммутирует со своим транспонированием, это нормальная матрица , поэтому ее можно диагонализировать. Мы заключаем, что каждая матрица вращения, выраженная в подходящей системе координат, разбивается на независимые вращения двумерных подпространств, не болеен/2из них.

Сумма элементов главной диагонали матрицы называется следом ; он не меняется, если мы переориентируем систему координат, и всегда равен сумме собственных значений. Для матриц вращения 2 × 2 и 3 × 3 это удобно , поскольку след показывает угол поворота θ в двумерном пространстве (или подпространстве). Для матрицы 2 × 2 след равен 2 cos θ , а для матрицы 3 × 3 — 1 + 2 cos θ . В трехмерном случае подпространство состоит из всех векторов, перпендикулярных оси вращения (инвариантное направление с собственным значением 1). Таким образом, мы можем извлечь из любой матрицы вращения 3 × 3 ось вращения и угол, и они полностью определяют вращение.

Последовательные углы

Ограничения на матрицу вращения 2 × 2 подразумевают, что она должна иметь вид

с a 2 + b 2 = 1 . Следовательно, мы можем установить a = cos θ и b = sin θ для некоторого угла θ . Чтобы найти θ, недостаточно посмотреть только на a или b ; мы должны рассмотреть оба вместе, чтобы поместить угол в правильный квадрант , используя функцию арктангенса с двумя аргументами .

Теперь рассмотрим первый столбец матрицы вращения 3 × 3 :

Хотя a 2 + b 2 , вероятно, будет равняться не 1, а некоторому значению r 2 < 1 , мы можем использовать небольшую вариацию предыдущего вычисления, чтобы найти так называемое вращение Гивенса , которое преобразует столбец в

обнуление б . Это действует на подпространство, охватываемое осями x и y . Затем мы можем повторить процесс для xz -подпространства до нуля c . Действуя на полную матрицу, эти два вращения создают схематическую форму.

Переключив внимание на второй столбец, вращение Гивенса подпространства yz теперь может обнулить значение z . Это приводит полную матрицу к виду

что является единичной матрицей. Таким образом, мы разложили Q как

Матрица вращения размера n × n будет иметь ( n − 1) + ( n − 2) + ⋯ + 2 + 1 или

записи ниже диагонали до нуля. Мы можем обнулить их, расширив ту же идею прохождения через колонны серией поворотов в фиксированной последовательности плоскостей. Приходим к выводу, что набор матриц вращения размера n × n , каждая из которых имеет n 2 элементов, можно параметризовать формулой1/2n ( n − 1) углов.

В трех измерениях это повторяет в матричной форме наблюдение, сделанное Эйлером , поэтому математики называют упорядоченную последовательность трех углов углами Эйлера . Однако ситуация несколько сложнее, чем мы до сих пор указывали. Несмотря на небольшую размерность, на самом деле у нас есть значительная свобода в используемой нами последовательности пар осей; а еще у нас есть некоторая свобода в выборе ракурсов. Таким образом, мы обнаруживаем множество различных соглашений, используемых при параметризации трехмерного вращения в физике, медицине, химии или других дисциплинах. Когда мы включаем опцию мировых осей или осей тела, возможны 24 различные последовательности. И хотя некоторые дисциплины называют любую последовательность углами Эйлера, другие дают разные названия (Кардано, Тейта-Брайана, крен-тангаж-рыскание ) различным последовательностям.

Одна из причин большого количества вариантов заключается в том, что, как отмечалось ранее, вращения в трех измерениях (и выше) не коммутируют. Если мы поменяем заданную последовательность вращений, мы получим другой результат. Это также означает, что мы не можем составить два вращения, сложив соответствующие им углы. Таким образом, углы Эйлера не являются векторами , несмотря на внешнее сходство в виде тройки чисел.

Вложенные размеры

Матрица вращения 3 × 3 , такая как

предлагает матрицу вращения 2 × 2 ,

встроен в верхний левый угол:

Это не иллюзия; не одна, а множество копий n -мерных вращений находятся внутри ( n + 1) -мерных вращений в виде подгрупп . Каждое вложение оставляет фиксированным одно направление, которое в случае матриц 3 × 3 является осью вращения. Например, у нас есть

фиксация оси x , оси y и оси z соответственно. Ось вращения не обязательно должна быть осью координат; если u = ( x , y , z ) — единичный вектор в нужном направлении, то

где c θ = cos θ , s θ = sin θ , представляет собой поворот на угол θ , оставляющий ось u неподвижной.

Направление в ( n + 1) -мерном пространстве будет единичным вектором величины, который мы можем рассматривать как точку на обобщенной сфере Sn . Таким образом, группу вращений SO( n + 1) естественно описать как комбинацию SO( n ) и Sn . Подходящим формализмом является расслоение ,

где для каждого направления в базовом пространстве Sn слой над ним в общем пространстве SO ( n + 1) является копией расслоенного пространства SO( n ) , а именно вращений, которые удерживают это направление фиксированным.

Таким образом, мы можем построить матрицу вращения размера n × n , начав с матрицы размера 2 × 2 , направив ее фиксированную ось на S 2 (обычную сферу в трехмерном пространстве), направив полученное вращение на S 3 и так далее до конца. S n -1 . Точку на Sn можно выбрать с помощью n чисел, поэтому мы снова имеем1/2n ( n - 1) чисел для описания любой матрицы вращения размера n × n .

Фактически, мы можем рассматривать последовательное угловое разложение, обсуждавшееся ранее, как обращение этого процесса вспять. Композиция из n - 1 вращений Гивенса приводит первый столбец (и строку) к (1, 0, ..., 0) , так что оставшаяся часть матрицы представляет собой матрицу вращения размером на единицу меньше, встроенную так, чтобы оставить (1, 0, ..., 0) исправлено.

Параметры асимметрии по формуле Кэли

Когда матрица вращения Q размера n × n не включает в себя собственное значение -1, то есть ни одно из плоских вращений, которые она содержит, не является поворотом на 180°, тогда Q + I является обратимой матрицей . Большинство матриц вращения соответствуют этому описанию, и для них можно показать, что ( QI )( Q + I ) −1 является кососимметричной матрицей , A . Таким образом, А Т = − А ; а поскольку диагональ обязательно равна нулю и поскольку верхний треугольник определяет нижний, то A содержит1/2n ( n − 1) независимых чисел.

Удобно, что IA обратимо, если A кососимметричен; таким образом, мы можем восстановить исходную матрицу, используя преобразование Кэли ,

который отображает любую кососимметричную матрицу A в матрицу вращения. Фактически, за исключением отмеченных исключений, таким способом мы можем создать любую матрицу вращения. Хотя в практических приложениях мы вряд ли можем позволить себе игнорировать поворот на 180°, преобразование Кэли по-прежнему остается потенциально полезным инструментом, позволяющим параметризовать большинство матриц вращения без тригонометрических функций.

Например, в трех измерениях мы имеем (Кейли, 1846 г.)

Если мы объединим асимметричные записи в вектор ( x , y , z ) , то мы создадим поворот на 90° вокруг оси x для (1, 0, 0), вокруг оси y для (0, 1, 0), 0) и вокруг оси z для (0, 0, 1). Поворот на 180° просто недосягаем; ибо в пределе x → ∞ ( x , 0, 0) приближается к повороту на 180 ° вокруг оси x , и аналогично для других направлений.

Разложение на ножницы

В двумерном случае матрицу вращения можно разложить на три матрицы сдвига (Paeth 1986):

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

Вращение также можно записать как два среза и масштабирование (Daubechies & Sweldens 1998):

Теория групп

Ниже приведены некоторые основные факты о роли совокупности всех матриц вращения фиксированной размерности (здесь в основном 3) в математике и особенно в физике, где вращательная симметрия является требованием каждого действительно фундаментального закона (из-за предположения об изотропии пространства). ), и где та же самая симметрия, если она присутствует, является упрощающим свойством многих проблем менее фундаментального характера. Примеры изобилуют классической механикой и квантовой механикой . Знание части решений, относящихся к этой симметрии, применимо (с оговорками) ко всем таким проблемам, и его можно исключить из конкретной конкретной проблемы, тем самым уменьшив ее сложность. Ярким примером – в математике и физике – может быть теория сферических гармоник . Их роль в групповой теории групп вращений состоит в том, что они являются пространством представления всего множества конечномерных неприводимых представлений группы вращений SO (3). По этой теме см. Группа вращения SO (3) § Сферические гармоники .

К основным статьям, перечисленным в каждом подразделе, приводятся более подробные ссылки.

Группа лжи

Матрицы вращения размера n × n для каждого n образуют группу , специальную ортогональную группу SO( n ) . Эта алгебраическая структура связана с топологической структурой, унаследованной от нее таким образом, что операции умножения и обратного являются аналитическими функциями элементов матрицы. Таким образом, SO( n ) для каждого n является группой Ли . Он компактен и связан , но не просто связан . Это также полупростая группа , фактически простая группа за исключением SO(4). [7] Актуальность этого состоит в том, что все теоремы и весь механизм теории аналитических многообразий (аналитические многообразия, в частности, являются гладкими многообразиями ) применимы, и хорошо развитая теория представлений компактных полупростых групп готова к использованию.

Алгебра Ли

Алгебра Ли so ( n ) группы SO( n ) задается формулой

и — пространство кососимметричных матриц размерности n , см. классическую группу , где o ( n ) — алгебра Ли O( n ) , ортогональная группа . Для справки, наиболее распространенным основанием для этого (3) является

Экспоненциальная карта

Соединение алгебры Ли с группой Ли представляет собой экспоненциальное отображение , которое определяется с помощью стандартного матричного ряда экспонент для e A [8] . Для любой кососимметричной матрицы A exp( A ) всегда является матрицей вращения. [номер 3]

Важным практическим примером является случай 3×3 . В группе вращений SO(3) показано, что каждый Aso (3) можно отождествить с вектором Эйлера ω = θ u , где u = ( x , y , z ) — вектор единичной величины.

По свойствам отождествления u находится в нулевом пространстве A. Таким образом, u инвариантен слева согласно exp( A ) и, следовательно, является осью вращения.

Согласно формуле вращения Родригеса в матричной форме получаем:

где

Это матрица поворота вокруг оси u на угол θ . Более подробную информацию см. в экспоненциальной карте SO(3) .

Формула Бейкера – Кэмпбелла – Хаусдорфа

Формула BCH дает явное выражение для Z = log( e X e Y ) в терминах разложения в ряд вложенных коммутаторов X и Y. [9] Это общее расширение разворачивается как [nb 4]

В случае 3 × 3 общее бесконечное разложение имеет компактный вид [10]

для подходящих коэффициентов тригонометрической функции, подробно описанных в формуле Бейкера-Кэмпбелла-Хаусдорфа для SO(3) .

В качестве группового тождества вышеизложенное справедливо для всех точных представлений , включая дублет (спинорное представление), которое является более простым. Таким образом, та же явная формула напрямую следует через матрицы Паули; см. вывод 2 × 2 для SU(2) . Для общего случая n × n можно использовать Ref. [11]

Спиновая группа

Группа Ли матриц вращения размера n × n , SO( n ) , не является односвязной , поэтому теория Ли говорит нам, что это гомоморфный образ универсальной накрывающей группы . Часто с покрывающей группой, которая в данном случае называется спиновой группой , обозначаемой Spin( n ) , работать проще и естественнее. [12]

В случае плоского вращения SO(2) топологически является кругом S 1 . Его универсальная накрывающая группа Spin(2) изоморфна вещественной прямой R при сложении. При использовании углов произвольной величины пользуются удобством универсального покрытия. Каждая матрица вращения 2 × 2 состоит из счетной бесконечности углов, разделенных целыми числами, кратными 2 π . Соответственно, фундаментальная группа SO (2) изоморфна целым числам Z .

В случае пространственных вращений SO(3) топологически эквивалентно трехмерному реальному проективному пространству RP 3 . Его универсальная накрывающая группа Spin( 3 ) изоморфна 3-сфере S3 . Каждая матрица вращения 3 × 3 создается двумя противоположными точками на сфере. Соответственно, фундаментальная группа SO(3) изоморфна двухэлементной группе Z 2 .

Мы также можем описать Spin(3) как изоморфный кватернионам единичной нормы при умножении, или некоторым вещественным матрицам 4 × 4 , или комплексным специальным унитарным матрицам 2 × 2 , а именно SU(2). Отображения покрытия для первого и последнего случая имеют вид

и

Подробное описание SU(2)-накрытия и кватернионного накрытия см. в спиновой группе SO(3) .

Многие особенности этих случаев одинаковы для более высоких размерностей. Все накрытия являются взаимно-однозначными, причем SO ( n ) , n > 2 , имеют фундаментальную группу Z2 . Естественная обстановка для этих групп находится внутри алгебры Клиффорда . Один тип действия вращений представляет собой своеобразный «сэндвич», обозначаемый qvq . Что еще более важно в приложениях к физике, соответствующее спиновое представление алгебры Ли находится внутри алгебры Клиффорда. Его можно возвести в степень обычным способом, чтобы получить двузначное представление, также известное как проективное представление группы вращения. Так обстоит дело с SO(3) и SU(2), где двузначное представление можно рассматривать как «обратное» накрывающему отображению. По свойствам накрывающих отображений обратное можно выбрать однозначно как локальное сечение, но не глобально.

Бесконечно малые вращения

Матрицы в алгебре Ли сами по себе не являются вращениями; кососимметричные матрицы являются производными, пропорциональными разностями вращений. Фактическое «дифференциальное вращение» или бесконечно малая матрица вращения имеет форму

где исчезающе мало и Aso (n) , например, с A = L x ,

Правила вычислений такие же, как обычно, за исключением того, что бесконечно малые величины второго порядка обычно отбрасываются. Согласно этим правилам, эти матрицы не удовлетворяют всем тем же свойствам, что и обычные матрицы конечного вращения при обычном подходе к бесконечно малым числам. [13] Оказывается, порядок применения бесконечно малых вращений не имеет значения . Чтобы увидеть это на примере, обратитесь к бесконечно малым вращениям SO(3) .

Конверсии

Мы видели существование нескольких разложений, которые применимы в любом измерении, а именно: независимые плоскости, последовательные углы и вложенные измерения. Во всех этих случаях мы можем либо разложить матрицу, либо построить ее. Мы также уделили особое внимание матрицам вращения 3 × 3 , и они требуют дальнейшего внимания в обоих направлениях (Stuelpnagel 1964).

Кватернион

Учитывая единичный кватернион q = w + x i + y j + z k , эквивалентная предварительно умноженная (для использования с векторами-столбцами) матрица вращения 3 × 3 равна [14]

Теперь каждый компонент кватерниона оказывается умноженным на два в члене второй степени, и если все такие члены равны нулю, то остается единичная матрица. Это приводит к эффективному и надежному преобразованию любого кватерниона – единичного или неединичного – в матрицу вращения 3 × 3 . Данный:

мы можем рассчитать

Освободившись от требования единичного кватерниона, мы обнаруживаем, что ненулевые кватернионы действуют как однородные координаты для матриц вращения 3 × 3 . Преобразование Кэли, обсуждавшееся ранее, получается путем масштабирования кватерниона так, чтобы его компонент w был равен 1. При повороте на 180 ° вокруг любой оси w будет равно нулю, что объясняет ограничение Кэли.

Сумма элементов по главной диагонали ( следу ) плюс один равна 4 − 4( x 2 + y 2 + z 2 ) , что равно 4 w 2 . Таким образом, мы можем записать сам след как 2 w 2 + 2 w 2 − 1 ; а из предыдущей версии матрицы мы видим, что сами диагональные элементы имеют тот же вид: 2 x 2 + 2 w 2 − 1 , 2 y 2 + 2 w 2 − 1 и 2 z 2 + 2 w 2 − 1. . Таким образом, мы можем легко сравнить величины всех четырех компонентов кватернионов, используя диагональ матрицы. Фактически мы можем получить все четыре величины, используя суммы и квадратные корни, и выбрать согласованные знаки, используя кососимметричную часть недиагональных записей:

Альтернативно, используйте один квадратный корень и деление

Это численно стабильно до тех пор, пока след t не является отрицательным; в противном случае мы рискуем разделить на (почти) ноль. В этом случае предположим, что Q xx — это наибольшая диагональная запись, поэтому x будет иметь наибольшую величину (остальные случаи получаются путем циклической перестановки); тогда следующее безопасно.

Если матрица содержит значительную ошибку, например накопленную числовую ошибку, мы можем построить симметричную матрицу 4 × 4 :

и найдите собственный вектор ( x , y , z , w ) его собственного значения наибольшей величины. (Если Q действительно является матрицей вращения, это значение будет равно 1.) Полученный таким образом кватернион будет соответствовать матрице вращения, наиболее близкой к данной матрице (Бар-Ицхак 2000) (Примечание: формулировка цитируемой статьи умножается после умножения, работает с векторами-строками).

Полярное разложение

Если матрица M размера n × n невырождена, ее столбцы представляют собой линейно независимые векторы; таким образом, процесс Грама – Шмидта может превратить их в ортонормированный базис. С точки зрения числовой линейной алгебры , мы преобразуем M в ортогональную матрицу Q , используя QR-разложение . Однако мы часто предпочитаем Q, ближайший к M , чего этот метод не обеспечивает. Для этого нам нужен инструмент полярного разложения (Fan & Hoffman 1955; Higham 1989).

Для измерения близости мы можем использовать любую матричную норму, инвариантную относительно ортогональных преобразований. Удобным выбором является норма ФробениусаQMF в квадрате, которая представляет собой сумму квадратов разностей элементов. Написав это в терминах трассировки Tr , наша цель:

Найдите Q, минимизирующее Tr( ( Q - M ) T ( Q - M ) ) , при условии Q T Q знак равно I .

Хотя целевая функция записана в матричных терминах, она представляет собой всего лишь квадратичный полином. Мы можем минимизировать его обычным способом, найдя, где его производная равна нулю. Для матрицы 3 × 3 ограничение ортогональности подразумевает шесть скалярных равенств, которым должны удовлетворять элементы Q. Чтобы включить ограничение(я), мы можем использовать стандартный метод — множители Лагранжа , собранные в виде симметричной матрицы Y. Таким образом, наш метод:

Дифференцируем Tr( ( Q - M ) T ( Q - M ) + ( Q T Q - I ) Y ) по (элементам) Q и приравниваем нулю.

Рассмотрим пример 2×2 . Включая ограничения, мы стремимся свести к минимуму

Взяв производную по Q xx , Q xy , Q yx , Q yy по очереди, собираем матрицу.

В общем случае получаем уравнение

так что

где Q ортогонален, а S симметричен. Чтобы гарантировать минимум, матрица Y (и, следовательно, S ) должна быть положительно определенной. В линейной алгебре QS называется полярным разложением M , где S - положительным квадратным корнем из S 2 = M T M .

Когда M несингулярно , факторы Q и S полярного разложения определяются однозначно . Однако определитель S положителен, поскольку S положительно определен, поэтому Q наследует знак определителя M . То есть Q гарантированно будет только ортогональной, а не матрицей вращения. Это неизбежно; M с отрицательным определителем не имеет однозначно определенной матрицы ближайшего вращения.

Ось и угол

Чтобы эффективно построить матрицу вращения Q по углу θ и единичной оси u , мы можем воспользоваться преимуществами симметрии и кососимметрии внутри записей. Если x , y и z являются компонентами единичного вектора, представляющего ось, и

затем

Определение оси и угла, как и определение кватерниона, возможно только с точностью до знака; то есть ( u , θ ) и (− u , − θ ) соответствуют одной и той же матрице вращения, точно так же, как q и q . Кроме того, извлечение оси и угла представляет дополнительные трудности. Угол может быть ограничен диапазоном от 0° до 180°, но формально углы кратны 360°. Когда угол равен нулю, ось не определена. Когда угол равен 180°, матрица становится симметричной, что влияет на извлечение оси. Вблизи кратных 180° необходимо соблюдать осторожность, чтобы избежать числовых проблем: при извлечении угла арктангенс с двумя аргументами с atan2 (sin θ , cos θ ) , равным θ , позволяет избежать нечувствительности arccos; а при вычислении величины оси для получения единичной величины метод грубой силы может потерять точность из-за потери значения (Moler & Morrison 1983).

Частичный подход заключается в следующем:

Тогда x- , y- и z - компоненты оси будут разделены на r . Полностью надежный подход будет использовать другой алгоритм, когда t , след матрицы Q , отрицательный, как при извлечении кватернионов. Когда r равно нулю, поскольку угол равен нулю, ось должна быть получена из какого-то источника, отличного от матрицы.

углы Эйлера

Сложность преобразования возрастает с увеличением углов Эйлера (используемых здесь в широком смысле). Первая трудность состоит в том, чтобы установить, какой из двадцати четырех вариантов декартова порядка осей мы будем использовать. Предположим, что тремя углами являются θ 1 , θ 2 , θ 3 ; физика и химия могут интерпретировать их как

в то время как динамика самолета может использовать

Один системный подход начинается с выбора самой правой оси. Среди всех перестановок ( x , y , z ) только две помещают эту ось на первое место; одна перестановка четная, а другая нечетная. Таким образом, выбор паритета устанавливает среднюю ось. Это оставляет два варианта для самой левой оси: либо дублировать первую, либо нет. Эти три варианта дают нам 3 × 2 × 2 = 12 вариантов; мы удваиваем это число до 24, выбирая статические или вращающиеся оси.

Этого достаточно, чтобы построить матрицу из углов, но тройки, различающиеся во многом, могут дать одну и ту же матрицу вращения. Например, предположим, что мы используем соглашение zyz , указанное выше; то мы имеем следующие эквивалентные пары:

Углы для любого порядка можно найти, используя краткую стандартную процедуру (Herter & Lott 1993; Shoemake 1994).

Проблема сингулярного выравнивания, математического аналога физической блокировки подвеса , возникает, когда среднее вращение выравнивает оси первого и последнего поворотов. Это влияет на каждый порядок оси при четном или нечетном кратном 90°. Эти особенности не характерны для матрицы вращения как таковой и возникают только при использовании углов Эйлера.

Сингулярностей можно избежать, если рассматривать матрицу вращения и манипулировать ею как ортонормированные векторы-строки (в 3D-приложениях часто называемые правым вектором, восходящим вектором и исходящим вектором), а не как углы. Сингулярностей также можно избежать при работе с кватернионами.

Вектор-векторная формулировка

В некоторых случаях интересно описать вращение, указав, как один вектор отображается в другой по кратчайшему пути (наименьшему углу). При этом полностью описывается связанная матрица вращения. В общем случае, учитывая x , yn , матрица

принадлежит SO( n + 1) и отображает x в y . [15]

Равномерные матрицы случайного вращения

Иногда нам необходимо создать равномерно распределенную матрицу случайного вращения. В двух измерениях интуитивно кажется очевидным, что это означает, что угол поворота равномерно распределен между 0 и 2 π . Эта интуиция верна, но не переносится на более высокие измерения. Например, если мы разложим матрицы вращения 3 × 3 в форме ось-угол, угол не должен распределяться равномерно; вероятность того, что (величина) угла не превышает θ, должна быть равна1/π( θ - грех θ ) , ибо 0 ≤ θ ≤ π .

Поскольку SO( n ) — связная и локально компактная группа Ли, у нас есть простой стандартный критерий равномерности, а именно, что распределение остается неизменным при составлении с любым произвольным вращением («перенос» группы Ли). Это определение соответствует так называемой мере Хаара . Леон, Массе и Ривест (2006) показывают, как использовать преобразование Кэли для создания и проверки матриц в соответствии с этим критерием.

Мы также можем создать равномерное распределение в любом измерении, используя алгоритм подгруппы Диакониса и Шахшахани (1987). При этом рекурсивно используется структура вложенной группы измерений SO( n ) следующим образом. Создайте равномерный угол и постройте матрицу вращения 2 × 2 . Чтобы перейти от n к n + 1 , сгенерируйте вектор v, равномерно распределенный на n -сфере S n , вставьте матрицу n × n в следующий больший размер с последним столбцом (0, ..., 0, 1) и поверните большую матрицу, чтобы последний столбец стал v .

Как обычно, у нас есть специальные альтернативы для случая 3×3 . Каждый из этих методов начинается с трех независимых случайных скаляров, равномерно распределенных на единичном интервале. Арво (1992) использует нечетное измерение, чтобы изменить отражение Хаусхолдера на вращение путем отрицания, и использует это для нацеливания оси равномерного плоского вращения.

Другой метод использует единичные кватернионы. Умножение матриц вращения гомоморфно умножению кватернионов, а умножение на единичный кватернион вращает единичную сферу. Поскольку гомоморфизм является локальной изометрией , мы сразу заключаем, что для получения равномерного распределения на SO(3) мы можем использовать равномерное распределение на S3 . На практике: создайте четырехэлементный вектор, где каждый элемент представляет собой выборку нормального распределения. Нормализуйте его длину, и вы получите случайный единичный кватернион с равномерной выборкой, который представляет случайное вращение с равномерной выборкой. Обратите внимание, что вышесказанное применимо только к вращениям в измерении 3. Для получения обобщенного представления о кватернионах следует изучить Роторы .

Углы Эйлера также можно использовать, хотя и не каждый угол распределен равномерно (Murnaghan 1962; Miles 1965).

Для формы «ось-угол» ось равномерно распределена по единичной сфере направлений S 2 , тогда как угол имеет неравномерное распределение по [0, π ] , отмеченное ранее (Miles 1965).

Смотрите также

Примечания

  1. ^ Обратите внимание, что если вместо вращения векторов вращается система отсчета, знаки в терминах sin θ поменяются местами. Если система отсчета A повернута против часовой стрелки вокруг начала координат на угол θ , чтобы создать систему отсчета B, то R x (с перевернутыми знаками) преобразует вектор, описанный в координатах системы отсчета A, в координаты системы отсчета B. Преобразования системы координат в аэрокосмической, робототехнике и других областях часто выполняются с использованием такой интерпретации матрицы вращения.
  2. ^ Обратите внимание, что
    так что в обозначениях Родригеса, что эквивалентно,
  3. ^ Обратите внимание, что это экспоненциальное отображение кососимметричных матриц в матрицы вращения сильно отличается от преобразования Кэли, обсуждавшегося ранее, и отличается до третьего порядка,
    И наоборот, кососимметричная матрица A , задающая матрицу вращения через карту Кэли, задает ту же матрицу вращения через карту exp(2 artanh A ) .
  4. ^ Подробный вывод см. в разделе «Производная экспоненциальной карты» . Вопросы сходимости этого ряда к правому элементу алгебры Ли здесь оставлены под ковром. Сходимость гарантируется, когда X ‖ + ‖ Y ‖ < log 2 и Z ‖ < log 2 . Если эти условия не выполняются, ряд все равно может сходиться. Решение всегда существует, поскольку в рассматриваемых случаях требуется уточнение .

Примечания

  1. ^ Своковски, Эрл (1979). Исчисление с аналитической геометрией (второе изд.). Бостон: Приндл, Вебер и Шмидт. ISBN 0-87150-268-2.
  2. ^ Рекомендация W3C (2003 г.). «Масштабируемая векторная графика – исходная система координат».{{cite web}}: CS1 maint: numeric names: authors list (link)
  3. ^ «Матрицы вращения» (PDF) . Проверено 30 ноября 2021 г.
  4. Куо Кан, Лян (6 октября 2018 г.). «Эффективное преобразование вращающейся матрицы в ось и угол вращения путем расширения формулы Родригеса». arXiv : 1810.02999 [cs.CG].
  5. ^ Тейлор, Камилло Дж.; Кригман, Дэвид Дж. (1994). «Минимизация группы Ли SO (3) и связанных с ней многообразий» (PDF) . Технический отчет № 9405 . Йельский университет.
  6. ^ Коул, Ян Р. (январь 2015 г.). Моделирование CPV (дипломная работа). Университет Лафборо. hdl : 2134/18050.
  7. ^ Бейкер (2003); Фултон и Харрис (1991)
  8. ^ (Веддерберн, 1934, §8.02)
  9. ^ Холл 2004, гл. 3; Варадараджан 1984, §2.15
  10. ^ (Энгё, 2001)
  11. ^ Куртрайт, TL ; Фэрли, Д.Б. ; Захос, СК (2014). «Компактная формула для вращений как полиномов матрицы спина». СИГМА . 10 : 084.arXiv : 1402.3541 . Бибкод : 2014SIGMA..10..084C. дои : 10.3842/SIGMA.2014.084. S2CID  18776942.
  12. ^ Бейкер 2003, гл. 5; Фултон и Харрис 1991, стр. 299–315.
  13. ^ (Гольдштейн, Пул и Сафко 2002, §4.8)
  14. ^ Шумейк, Кен (1985). «Анимация вращения с помощью кватернионных кривых». Компьютерная графика: материалы конференции SIGGRAPH '85. SIGGRAPH '85, 22–26 июля 1985 г., Сан-Франциско. Том. 19. Ассоциация вычислительной техники. стр. 245–254. дои : 10.1145/325334.325242 . ISBN 0897911660.
  15. ^ Сид, Хосе Анхель; Тохо, Ф. Адриан Ф. (2018). «Условие Липшица вдоль трансверсального слоения подразумевает локальную единственность ОДУ». Электронный журнал качественной теории дифференциальных уравнений . 13 (13): 1–14. arXiv : 1801.01724 . дои : 10.14232/ejqtde.2018.1.13 .

Рекомендации

Внешние ссылки