0

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.

H_1317
  • 1,085
  • When $n\gt3$, rotations in $\mathbb R^n$ don’t necessarily have a fixed axis as they do in $\mathbb R^3$. It’s somewhat special in this regard. – amd Sep 23 '19 at 00:40

2 Answers2

2

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. $$

Ben Grossmann
  • 225,327
  • Thanks! In part 1 of your answer, I seem to be going wrong with how you compute the matrix transformation of the new matrix. R*(2,0) = (0,2) which would be the coordinate vector (0,2) in your new basis yet you list (0,1/2) as the first column of your new matrix. Where am i going wrong here? – H_1317 Sep 22 '19 at 15:59
  • @H_1317 You're right; I had the inverse on the wrong side. – Ben Grossmann Sep 22 '19 at 16:08
  • then would the first column be (1,0) instead of (2,0) since (2,0) is the first basis element in our new basis? – H_1317 Sep 22 '19 at 16:44
  • nevermind, what i said is wrong. (2,0) -> (0,2) which is 2 times the second basis element. – H_1317 Sep 22 '19 at 16:46
  • How did u get Q? Shouldnt Q be the change of basis matrix which would be defined as BQ = B’, where B’ is our new basis which has its first basis vector = (1,2,3)? It seems like if ur starting with the standard basis, Q implies ur first new basis vector is (1 /root 2, 1 /root 3, 1 /root 6). – H_1317 Sep 23 '19 at 05:09
0

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.

Arthur
  • 199,419
  • ahh ok so is the reason "an orthonormal basis is required for rotation transformations to be represented by orthogonal matrices" that if i started with a non orthonormal basis then my transformations of those basis vectors would dictate the columns in a new matrix that would simply not be orthogonal (as a constant rotation of each basis vector would maintain their lack of orthonormality -- since angles between vectors are maintained and lengths?) – H_1317 Sep 22 '19 at 15:40