[Math] Rotors/Quaternions: double reflection question

quaternionsrotations

I am trying to learn/understand quaternion. I found this reference (among many others):

http://www.geometricalgebra.net/quaternions.html

It states (see attached screenshot of that page), that to reflect a vector around an axis by a given angle $\phi$ you can perform a double reflection. First project the vector x on the plane perpendicular to the rotation axis (you get $a$), and then rotate by angle $\phi/2$: you get vector $b$ and then perform another reflection to get the final rotated vector.

My question: "the result is that $x$ is rotated over an angle $\phi$ which is twice the angle between $a$ and $b$". This is the statement I don't understand! Looking at figure 7.2 the angle between $a$ and $b$ and the vector x and its rotated version seem like the same?

enter image description here

EDIT/SUGGESTION OF ANSWER

Rather than adding this as my own answer, I prefer to make an edit to my own question and suggest this as potential answer. Would appreciate if someone could confirm my intuition on this.

It seems like figure 7.2 is actually slightly misleading (because not easy to read properly). After reading more on bi-vectors and what seems related to Clifford algebra, my understanding is that rotations are best expressed as a combination of 2 vectors defined in the rotation plane (that is the plane perpendicular to the rotation axis) and the angle between these 2 vectors is half the angle of rotation we actually wish to apply (and this construct is what we call a rotor, is that correct?). In other words we "encode" the amount of rotation we wish to apply for our rotation within the angle subtended by the two vectors lying a plane (the rotation plane) perpendicular to the rotation axis.

This is my understanding of this problem/question, but would appreciate if a mathematician could confirm this and eventually formalize it.

Best Answer

Your understanding is correct. Given two unit vectors $a$ and $b$, their geometric product $R = a b$ is a rotor. The rotor is:

$R = a b = a \cdot b + a \wedge b$

$R = \cos \theta + I \sin \theta$

where $I = \frac{a \wedge b}{\|a \wedge b\|}$. When $R$ is applied to a blade $X$ using the versor product $R X \tilde R$, the total angle of rotation is $2 \theta$. For convenience the rotor is defined to rotate $\theta/2$ so that when the versor product is applied the total rotation angle amounts to $\theta$.

It can be seen algebraically developing the versor product:

$R X \tilde R = (\cos \theta + I \sin \theta) X (\cos \theta - I \sin \theta)$

$R X \tilde R = \cos^2\theta \ X + (\cos \theta \sin \theta)( −X I + I X ) − \sin^2\theta \ I X I $

Using the fact that $- X I + I X = -2 X \cdot I$

$R X \tilde R = \cos^2\theta \ X - 2(\cos\theta \sin\theta) X \cdot I − \sin^2\theta \ I X I$

It is convinient for our purpose to express the reflection $I X I$ of the blade $X$ with respect to the dual of the bivector $I^* = I e_{321}$ instead of $I$, so we get $I X I = (-1)^k I^* X I^* = -2 I^* (I^* \cdot X) + X$. where $k$ is the grade of the blade $X$. So we get:

$R X \tilde R = (\cos^2\theta - \sin^2\theta) \ X - 2(\cos\theta \sin\theta) \ X \cdot I + 2 \sin^2\theta \ I^* (I^* \cdot X)$

Applying the following trigonometric identities:

$\cos 2\theta = \cos^2\theta − \sin^2\theta$

$\sin 2\theta = 2 \cos\theta \sin\theta$

$1−\cos 2\theta = 2 \sin^2\theta$

we finally get:

$R X \tilde R = \cos 2\theta \ X - \sin 2\theta \ X \cdot I + (1 − \cos 2\theta) \ I^* (I^* \cdot X)$

This is the Geometric Algebra version of Rodrigues' formula. As can be seen, the versor product produces a rotation with total angle of rotation of $2 \theta$. That is why the convention is to take angle $\theta/2$.

Related Question