logo
Rotation_3D[1]

Тензор поворота и кватернион

Вот мы и добрались до самого интересного места этой статьи. А именно, до связи тензора поворота с еще одним замечательным объектом – кватернионом поворота. Для начала перепишем формулу (54) для повернутого вектора a′ используя функции половинного аргумента и вернувшись обратно к записи через вектор m

a′ = a + sinθm × a + (1 – cosθ)m × (m × a) = = a + 2sin(θ/2)cos(θ/2)m × a + 2sin2(θ/2) m × (m × a).

(59)

Введем обозначения

λ0 = cos(θ/2), λ = sin(θ/2)m.

(60)

Полезное свойство данных обозначений

0)2 + |λ|2 = (λ0)2 + λ · λ = 1.

(61)

Выражение (59) можно переписать в виде

a′ = a + 2λ0λ × a + 2λ × (λ × a) = = (λ0)2a + λ(λ · a) + 2λ0λ × a + λ × (λ × a).

(62)

Найдем далее выражение вектора поворота композиции двух поворотов

Q(θ) = Q(φQ(ψ).

(63)

Для этого воспользуемся формулой (52), записанной также через функции половинного аргумента и введенные обозначения (60)

P = 2sin2(θ/2)mm + 2[cos2(θ/2) – 1/2]1 + 2sin(θ/2)cos(θ/2)m × 1 = = 2{λλ + [(λ0)2 – 1/2]1 + λ0λ × 1}

(64)

Сопоставим векторам φ и ψ пары

μ0 = cos(|φ|/2), μ = sin(|φ|/2)φ /|φ |,

(65)

ν0 = cos(|ψ|/2), ν = sin(|ψ|/2)ψ /|ψ|.

(66)

Подставив данные выражения в (63), получим

Q(θ) = Q(φQ(ψ) = = 4{μμ + [(μ0)2 – 1/2]1 + μ0μ × 1}·{νν + [(ν0)2 – 1/2]1 + ν0ν × 1}= = 4{μν(μ · ν) + μμ[(ν0)2 – 1/2] + ν0μμ × ν + + νν[(μ0)2 – 1/2] + [(μ0)2 – 1/2] [(ν0)2 – 1/2]1 + [(μ0)2 – 1/2] ν0ν × 1 + + μ0μ × νν + [(ν0)2 – 1/2]μ0μ × 1 + μ0ν0μ × 1 × ν} = = 2{λλ + [(λ0)2 – 1/2]1 + λ0λ × 1}

(67)

Напомним, что для любых векторов b и c справедливы равенства

b × 1 = 1 × b = – (b × 1)T, tr(b × 1) = 0, tr(b × cc) = (b × c) · c = 0,

 

tr(cc) = c · c, b × 1 × c = cb – (c · b)1, tr(b × 1 × c) = – 2(c · b),

 

(b × 1)× = –2b, (b × cc)× = (b × c) × c = c(b · c) – b(c · c), (cc)× = 0, (b × 1 × c)× = c × b.

 

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

λ0 = μ0ν0μ · ν,

(68)

λ = μ0ν + ν0μ + μ · ν.

(69)

Далее можно ввести множество объектов, представляющих собой пару Λ = (λ0λ), на котором задан закон композиции элементов (операция умножения), в соответствии с формулами (68, 69).

Можно убедиться, что данный закон умножения является ассоциативным (Λ·Μ)·Ν = Λ·(Μ·Ν), дистрибутивным (Λ + Μ)·(Ν + Ρ) = Λ·Ν + Λ·Ρ + Μ·Ν + Μ·Ρ и удовлетворяет условию (αΛ)·(βΜ) = αβΛ·Μ, где α, β– произвольные вещественные числа. Операция суммы вводится следующим образом Λ + Μ = (λ0λ) + (μ0μ) = (λ0 + μ0λ + μ). В математике данное множество называется алгеброй кватернионов, а сами объекты кватернионами. Выше нами были рассмотрены кватернионы единичной длины (λ0)2 + λ · λ = 1, которые наравне с тензором поворота могут использоваться для задания ориентации тела в трехмерном пространстве. В общем случае кватернионы могут иметь произвольную длину. Более подробно о кватернионах и о том, как их использовать для описания поворотов, будет написано Zed’ом в следующем номере журнала.