Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Rotation matrix (nxn).

  1. Jul 30, 2008 #1
    I know how the rotation matrix looks like in the 2x2 and 3x3 orders, but how does it look in general?

    thanks in advance.
  2. jcsd
  3. Jul 30, 2008 #2


    User Avatar
    Staff Emeritus
    Science Advisor

    I know that, in 2 dimensions, a rotation about (0,0) by angle [itex]\theta[/itex] can be represented as a matrix by
    [tex]\left[\begin{array}{cc}cos(\theta) & -sin(\theta) \\ sin(\theta) & cos(\theta)\end{array}\right][/tex]
    but what are you saying a rotation in 3 dimensions looks like?

    Any matrix with determinant 1 can represent a rotation.
  4. Jul 30, 2008 #3
    Think of a rotation as taking the x,y,z,w,... axes, and rotating them around to a new set of axes x2,y2,z2,w2,... If you take the unit vectors in the representing of the new axes, and put them in the columns of a matrix in their respective order, then that matrix you get will be the rotation matrix.

    In R2, you may notice that the vector (cos(theta),sin(theta)) and (-sin(theta),cos(theta)) are perpendicular unit vectors rotated theta degrees from the original (1,0) and (0,1) vectors.
  5. Jul 30, 2008 #4
    If you are looking for a R^N rotation in a plane, rotating the components of a vector that lies in the plane and leaving the "perpendicular" components (ie: components in all normal directions) untouched, then this can be expressed with the following geometric-algebra/clifford-product expansion:

    R(x) = e^{-i\theta/2} x e^{i\theta/2}
    = x \cos^2(\theta/2) - i x i \sin^2(\theta/2) + 2 \cos(\theta/2) \sin(\theta/2) x \cdot i

    Here the unit bivector i is formed by the product of two non-colinear vectors n_k in the plane:

    i=\frac{n_1 \wedge n_2}{\lvert n_1 \wedge n_2 \rvert}.

    It's a bit messy, but you can calculate the rotation matrix from this if you really wanted to (with an orthonormal basis basis e_i and calculation of R(e_i) \cdot e_j gives the matrix).
  6. Jul 30, 2008 #5
    another way to look at this is, just like so:

    R(x) = x_{\perp} + x_{\parallel}\left( cos\theta + i\sin\theta\right)

    where [itex]x_{\perp}[/itex] is the component not in the plane of rotation, [itex]x_{\parallel}[/itex] is the component in the plane of rotation, and [itex]x_{\parallel} i [/itex] is a 90 degree rotation in the desired sense of the component of the vector in the plane. Then given any way you are comfortable with (ie: projection and rejection matrixes P, and (I-P)) for finding the components of the vector in and out of the plane, you can use that to compute the rotation matrix.
  7. Jul 30, 2008 #6


    User Avatar
    Science Advisor
    Homework Helper
    2015 Award

    i think a rotation is an orthogonal matrix with determinant one?

    so there is some basis in which the matrix looks like a bunch of 1's on the diagonal, and then a bunch of 2 by 2 matrices representing plane rotations.
  8. Jul 31, 2008 #7
    Yes, thanks mathwonk I also got this answer after solving a question from Gullimin and Pollack:" if k is odd then f:S^k->S^k f(x)=-x is homotpic to the identity function".

    The homotopy is a sort of rotation matrix times x, where the arguement is (pi*t), so if k is odd we can find a rotation matrix (k+1)x(k+1) (k+1 is even) which consists of orthogonal matrices on the diagonal representing plane rotations.

    You got to love geometry! (-:
  9. Jul 31, 2008 #8
    So that raises an interesting question - what is the minimum number of sequential plane rotations required to represent a general rotation in Rn?

    In R2, its just 1. In R3 its 2 since you rotate xhat to xhat', and then roll around xhat'. What about higher dimensions?
  10. Jul 31, 2008 #9

    Ben Niehoff

    User Avatar
    Science Advisor
    Gold Member

    Every plane rotation can be factored into two reflections. It might be easier to think in terms of reflections.

    There's a really elegant derivation of this (i.e., the number of plane rotations needed to give a general rotation) in The Road to Reality using Clifford algebras, but I forget it.
  11. Aug 1, 2008 #10
    well if we have R^n where n is odd, then there must be 1 in the diagonal of the matrix, while in an even n we can handle without it (if we want).
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?