0
$\begingroup$

I'm working off of a paper which claims that the Rodriguez rotation formula can be changed into a matrix form that is the addition of the following matrices, where 1 is the identity matrix and two are skew symmetric. Using this implementation is not leading to correct results even for simple global axis rotations.

Given, $\bar{v}$, is the rotation unit vector and $\alpha$ is the angle of rotation.

$\tilde{A} = \tilde{I}\cos(\alpha) + \tilde{V}\sin(\alpha) + \tilde{V}^2(1 - \cos(\alpha))$

where $\tilde{I}$ is a 3x3 identity matrix and $\tilde{V}$ is a Skew-symmetric matrix:

$$\tilde{V} = \begin{bmatrix}0 & -v_z & v_y \\ v_z & 0 & -v_x \\ -v_y & v_x & 0\end{bmatrix}$$

if $v$ = [1.0, 0.0, 0.0] and $\alpha$ = pi / 4:

I should get:

$$\tilde{A} = \begin{bmatrix}1 & 0 & 0 \\ 0 & 0.7071 & -0.7071 \\ 0 & 0.7071 & 0.7071\end{bmatrix}$$

but I'm getting: $$\tilde{A} = \begin{bmatrix}.7071 & 0 & 0 \\ 0 & 0.4142 & -0.7071 \\ 0 & 0.7071 & .4142\end{bmatrix}$$

What is the problem with this identity/ skew symmetric matrix decomposition? Is the squared matrix element by element? I've been calculating it as matrix multiplication.

$\endgroup$
  • $\begingroup$ Yes, the formula is incorrect. The last matrix should not be $\tilde V$ but $vv^T$. $\endgroup$ – Rahul Aug 18 '17 at 16:24
  • $\begingroup$ Or you can keep the last matrix and get rid of the coefficient on the first (identity) matrix, i.e. $$A = I+V\,\sin(\alpha) + V^2\,(1-\cos(\alpha))$$ $\endgroup$ – lynn Aug 18 '17 at 18:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.