exponenta event banner

rotx

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

Синтаксис

Описание

пример

R = rotx(ang) создает матрицу 3 на 3 для поворота вектора 3 на 1 или 3-by-N матрицу векторов вокруг оси x на ang степени. При действии на матрицу каждый столбец матрицы представляет различный вектор. Для матрицы поворота R и вектор v, повернутый вектор задается R*v.

Примеры

свернуть все

Создайте матрицу для поворота вектора вокруг оси X на 30 °. Тогда пусть матрица работает на вектор.

R = rotx(30)
R = 3×3

    1.0000         0         0
         0    0.8660   -0.5000
         0    0.5000    0.8660

x = [2;-2;4];
y = R*x
y = 3×1

    2.0000
   -3.7321
    2.4641

При повороте вокруг оси X X-компонент вектора инвариантен.

Входные аргументы

свернуть все

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

Пример: 30.0

Типы данных: double

Выходные аргументы

свернуть все

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

Rx (α) = [1000cosα sinα0sinαcosα]

для угла поворота α.

Подробнее

свернуть все

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

Матрицы вращения используются для поворота вектора в новом направлении.

При преобразовании векторов в трёхмерном пространстве часто встречаются матрицы вращения. Матрицы вращения используются в двух смыслах: их можно использовать для поворота вектора в новое положение или их можно использовать для поворота базиса координат (или системы координат) в новое. В этом случае вектор остается один, но его компоненты в новом базисе будут отличаться от компонентов в исходном базисе. В евклидовом пространстве существует три основных вращения: по одному вокруг осей x, y и z. Каждый поворот определяется углом поворота. Угол поворота определяется как положительный для поворота против часовой стрелки, когда наблюдатель смотрит вдоль оси вращения в направлении начала координат. Любое произвольное вращение может быть составлено из комбинации этих трёх (теорема Эйлера о вращении). Например, можно повернуть вектор в любом направлении, используя последовательность из трёх поворотов: v′=Av=Rz (γ) Ry (β) Rx (α) v.

Матрицы вращения, которые поворачивают вектор вокруг осей x, y и z, задаются следующим образом:

  • Вращение против часовой стрелки вокруг оси X

    Rx (α) = [1000cosα sinα0sinαcosα]

  • Вращение против часовой стрелки вокруг оси y

    Ry (β) = [cosβ0sinβ010 sinβ0cosβ]

  • Вращение против часовой стрелки вокруг оси Z

    Rz (γ) = [cosγ sinγ 0sinγ cosγ 0001]

На следующих трех рисунках показано, как выглядят положительные повороты для каждой оси вращения:

Для любого вращения существует обратное вращение, удовлетворяющее A 1A = 1. Например, инверсия матрицы вращения по оси X получается изменением знака угла:

Rx 1 (α) = Rx (α) = [1000cosαsinα0 sinαcosα] = Rx ′ (α)

Этот пример иллюстрирует основное свойство: матрица обратного поворота является транспонированием оригинала. Матрицы вращения удовлетворяют A 'A = 1 и, следовательно, det (A) = 1. При вращениях сохраняются векторные длины, а также углы между векторами.

Мы можем думать о вращениях другим способом. Рассмотрим исходный набор базисных векторов, i, j, k, и поверните их все с помощью матрицы вращения A. Это дает новый набор базисных векторов i , j, ′ k ′, связанных с исходным:

i′=Aij′=Ajk′=Ak

С помощью транспонирования можно записать новые базисные векторы как линейные комбинации старых базисных векторов:

[i′j′k ] = A [ijk]

Теперь любой вектор может быть записан как линейная комбинация любого набора базисных векторов:

v=vxi+vyj+vzk=v′xi + v′yj + v′zk

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

[v′xv′yv′z]=A−1[vxvyvz]=A [vxvyvz]

На следующем рисунке показано преобразование вектора при повороте системы координат вокруг оси X. На рисунке ниже показано, как это преобразование можно интерпретировать как вращение вектора в противоположном направлении.

Ссылки

[1] Голдштейн, Х., К. Пул и Дж. Сафко, Классическая механика, 3-е издание, Сан-Франциско: Эддисон Уэсли, 2002, стр. 142-144.

Расширенные возможности

.

См. также

|

Представлен в R2013a