0

How does one find the angle difference between two quaternions. There was an answer to this post which says the angle difference between $x$ and $y$ is $z=x\ast \mathrm{conj}(y)$. Is that the multiplication operator or a dot product?

Thanks

sat
  • 9
  • 1
    Did you read the post you are referring to? There are some assumptions that are made in order for that result to be true, which may not hold in your situation. – John Habert Jan 28 '14 at 15:01

2 Answers2

1

This is due to the definition of the scalar product: $$\langle x,y \rangle_{\mathbb C^n} := \sum_{j=1}^n x_j \overline{y_j}$$ Where $\bar z$ denotes conjugation. Note that for real values $x_j$, the conjugate is equal, so the scalar product for real vertors is $$\langle x,y \rangle_{\mathbb R^n} = \sum_{j=1}^n x_jy_j$$ On $\mathbb H^n$ it is defined analogously to the one on $\mathbb C^n$, and for $n=1$, your specific case occurs.

AlexR
  • 25,110
1

conj(y)=$\bar{y}$ should be the quaternion conjugatate that sends $a+bi+cj+dk\mapsto a-bi-cj-dk$. The multiplication is just regular quaternion multiplication. As pointed out in the post you linked, the quaternions involved are unit-length quaternions, and for these quaternions, $q^{-1}=\bar{q}$.

If you have two unit quaternions $r_1$ and $r_2$, you can find another unit quaternion such that $qr_2=r_1$. The quaternion $q$ is the difference that you need to move $r_2$ to match $r_1$. Solving for $q$, you get $q=r_1r_2^{-1}=r_1\bar{r_2}$.

So by finding the angle of $r_1r_2^{-1}$, you're finding the angle difference between the rotations $r_1$ and $r_2$.

rschwieb
  • 160,592