Естественные науки

Как коммутируют повороты?

Если х - поворот относительно оси ОХ, а у - поворот относительно оси ОУ, обязательно ли хух^(-1)у^(-1) - поворот относительно оси ОZ?
Елена Горбенко
Елена Горбенко
33 030
Вложим R^3 (как множество) и группу вращений SO(3) в тело кватернионов следующим образом.
Вектору x = (x1, x2, x3)^T сопоставим кватернион q(x) = i*x1 + j*x2 + k*x3
Кватерниону будем соспоставлять тот вектор, которой задает его мнимая часть.
Вращению f на угол 2a (против часовой) вокруг единичного вектора v сопоставим кватернион q(f) = cos(a) + sin(a)*q(v) (с т. до умножения кватерниона на действительную константу).

В таком представлении кватернионы вращают пространство сопряжениями:
Кватернион q(f)*q(x)*q^-1(f) - соответствует вращению f вектора x.
Обращению вращения соответствует изменение знака действительной части кватерниона вращение ну или (что удобнее) его сопряжение - на -1-то мы имеем право домножить, см. выше.
И вот мы облегчили задачу - вместо вычисления теоретико-группового коммутатора матриц поворота достаточно взять коммутатор кватернионов.

Чтоб определить углы, на которые можно вращать вокруг Ox и Oy, чтоб коммутатор вращал относительно Oz:
(упрощая - беру те, у которых определен ctg(x/2)),
Достаточно в действительных z, x, y решить уравнение

Im (x - i - k)(y - j - k)(x + i + k)(y + j + k) = zk
Дальще - просто аккуратно раскрыть скобки с учетом того, что произведение двух мнимых единиц = третья*(четность перестановки их трех)
Ну и квадрат каждой равен -1.

Мог в арифметике наврать, но принципиально, вроде, ни в чем не наврал.
СТ
Светлана Трусова
34 449
Лучший ответ
Светлана Трусова Ой.
Im (x - i)(y - j)(x + i)(y + j) = zk

Ну, давайте при i коэффициент найдем и обгнулим
xyy + x*(-j)*j = xyy + x = 0
Уже задница - у нас x и y действительные.

При вращении на углы, у которых ctg половинного определен и не ноль, коммутатор никак не будет вокруг z вращать.

Вроде, так.
Светлана Трусова Т. е. чтоб коммутатор вращений вокруг Ox и Oy вращал вокруг Oz, эти вращения должны быть или id, или осевыми симметриями.

Как-то так, надо проверять.

Но это чисто ради спортивного интереса я сдалал - полпытался найти углы для вращений вокруг Ox и Oy, при которых теоретико-групповой коммутатор вращает вокруг Oz.
Елена Горбенко Сейчас засяду разбираться (это мне не на один вечер). Сразу вопрос: ! в предп-й ф-ле - опечатка?
Светлана Трусова Начиная с "достаточно в действительных числах" глупых арифметических. ошибок и исправлений много.

Я на мобильнике, ребенка искупаю, попробую с этого места расписать так, чтоб ошибок поменьше было. У меня рука не набита умножать кватернионы (из тела, а не группы единичных) в уме, хотя там все по дистрибутивности/линейности раскрывается.
Елена Горбенко Задним числом задачки всегда просты. Но вот ведь был уверен, что вращение будет чисто по z (из смутных "соображений симметрии")
поворот
Ирина Кольцова
Ирина Кольцова
28 427
Простая проверка на 30градусов и на 90 показывает, что нет.
Светлана Трусова Хм, а почему не просто на 90 и 90?
Вложим R^3 (как множество) и группу вращений SO(3) в тело кватернионов следующим образом.
Вектору x = (x1, x2, x3)^T сопоставим кватернион q(x) = i*x1 + j*x2 + k*x3
Кватерниону будем соспоставлять тот вектор, которой задает его мнимая часть.
Вращению f на угол 2a (против часовой) вокруг единичного вектора v сопоставим кватернион q(f) = cos(a) + sin(a)*q(v) (с т. до умножения кватерниона на действительную константу).

В таком представлении кватернионы вращают пространство сопряжениями:
Кватернион q(f)*q(x)*q^-1(f) - соответствует вращению f вектора x.
Обращению вращения соответствует изменение знака действительной части кватерниона вращение ну или (что удобнее) его сопряжение - на -1-то мы имеем право домножить, см. выше.
И вот мы облегчили задачу - вместо вычисления теоретико-группового коммутатора матриц поворота достаточно взять коммутатор кватернионов.

Чтоб определить углы, на которые можно вращать вокруг Ox и Oy, чтоб коммутатор вращал относительно Oz:
(упрощая - беру те, у которых определен ctg(x/2)),
Достаточно в действительных z, x, y решить уравнение

Im (x - i - k)(y - j - k)(x + i + k)(y + j + k) = zk
Дальще - просто аккуратно раскрыть скобки с учетом того, что произведение двух мнимых единиц = третья*(четность перестановки их трех)
Ну и квадрат каждой равен -1.

Мог в арифметике наврать, но принципиально, вроде, ни в чем не наврал.