Rotations using Orthogonal Matrices

1.5k Views Asked by At

1.) I'm curious why in problems that deal with finding a rotation matrix around a specified vector in R$^3$ (and likely R$^n$) that people feel the need to look for a orthonormal basis first. Would any basis work, specifically a non orthogonal basis, for constructing your rotation matrix?

2.) Also, I found the general form for a rotation about the e2 axis in R$^3$, while using (e1,e2,e3) to be:

$$\left( \begin{matrix} \cos\theta & 0 & \sin\theta \\ 0 & 1 & 0 \\ -\sin\theta & 0 & \cos\theta \\ \end{matrix}\right) $$

However, how could one take the above and find a rotation about some arbitrary vector, say (1,2,3)$^t$? I would think that finding a map from (0,1,0) -> (1,2,3) would be a good place to start but i'm not sure after that. (We haven't learned grahm schmidt or the cross product or rodriguez formula so I'm hoping to learn this based on other techniques)

Thanks.

2

There are 2 best solutions below

5
On BEST ANSWER

To answer your first question: applying a non-orthogonal change of basis to a rotation matrix will not generally yield a rotation matrix. For a quick example, consider the rotation by $90^\circ$ $$ R = \pmatrix{0&-1\\1&0}. $$ Now, computing the matrix of this transformation relative to the basis $\{(2,0),(0,1)\}$ (orthogonal but not orthonormal) yields $$ \pmatrix{2\\&1}^{-1} \pmatrix{0&-1\\1&0} \pmatrix{2\\&1} = \pmatrix{0&-1/2\\2&0}. $$ The matrix on the right is not a rotation matrix. If you like, you can think of it as a sort of "elliptical" analog to a rotation.


For your second question, one approach is as follows. Start with a rotation about $e_1$, $$ R = \pmatrix{1 &0&0\\ 0& \cos \theta & -\sin \theta \\0&\sin \theta & \cos \theta} $$ Now, it suffices to choose an orthonormal basis whose first element is $(1,2,3)$. The easiest way to produce this basis is via Gram Schmidt applied to the basis $\{(1,2,3),e_1,e_2\}$. Honestly, I don't think there is a more easily understood technique that would produce the basis.

The process I describe yields the orthonormal basis given by the columns of $$ Q = \pmatrix{1/\sqrt 2 & 1/\sqrt 2 & 0\\ 1/\sqrt 3 & -1/\sqrt 3 & 1/\sqrt 3\\ 1/\sqrt 6 & -1/\sqrt 6 & -\sqrt{2/3}}. $$ We can then compute the desired matrix $R'$ for the rotation about $(1,2,3)$ as $$ R' = QRQ^T. $$

1
On

An orthonormal basis is required for rotation transformations to be represented by orthogonal matrices, and it's required for orthonormal matrices (with determinant 1) to represent rotations.

Any basis would work, but without orthonormality, it is difficult to just "look" at a matrix and tell that it represents a rotation.

And yes, you could use that matrix to find a rotation around an arbitrary axis. What you have to do is find a unit vector along the axis you want to rotate around, and find an orthonormal set of basis vectors with that unit vector as its second element. Then in that basis, your matrix represents a rotation around your axis. So transforming the matrix back to the standard basis gives you the standard basis representation of the rotation around your axis.