Find Transformation Matrix for 45° Rotation Around x_2 Axis

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
5 replies · 14K views
UrbanXrisis
Messages
1,192
Reaction score
1
Find the transformation matrix that rotates the axis [tex]x_3[/tex] of a rectangular coordinate system 45 degrees toward [tex]x_1[/tex] around the [tex]x_2[/tex] axis.

I have a question about what exactly are the [tex]x_1,x_2,x_3[/tex] supposed to be. Do I assume that they are the x,y,z axis?

Also, what is the general form of a two-dimensional transformation matrix? I know that there are different ones for rotation, scaling, shearing, and so on. But is there a general form for a 2x2 transformation matrix?
 
  • Like
Likes   Reactions: Sofia Dela Pena
Physics news on Phys.org
Yes, they are the x, y, z axes. The x1 x2 x3 just refer to three coordinates in your vectors. The x2 axis is all points of the form (0, x2, 0).

The "general form" of a 2x2 matrix is just any 2x2 matrix. Every matrix can be seen as a "transformation matrix."
 
[tex]\left(\begin{array}{c}x \\y\\z \end{array}\right)\left(\begin{array}{ccc} cos45 & 0 & -sin45 \\ 0&1&0 \\ sin25&0&cos45 \end{array}\right)[/tex]

would this be the matrix to rotate the z axis 45 degrees towards the x-axis and around he y axis?
 
Well, (1, 0, 0), on the x-axis, should be rotated to [itex](\frac{\sqrt{2}}{2}, 0, \frac{\sqrt{2}}{2}). Does your matrix do that?<br /> <br /> (The answer is "no" for two reasons! First, you are multiplying the matrices in the wrong order. You <b>can't</b> multiply the matrices as you show them. Second, you have a typo, writing one of the angles as "25" rather than "45".)[/itex]
 
this look better?

[tex]\left(\begin{array}{ccc}x &y&z \end{array}\right) \left( \begin{array}{ccc} cos45 & 0 & sin45 \\ 0&1&0 \\ -sin45&0&cos45 \end{array}\right)[/tex]
 
UrbanXrisis said:
this look better?

[tex]\left(\begin{array}{ccc}x &y&z \end{array}\right) \left( \begin{array}{ccc} cos45 & 0 & sin45 \\ 0&1&0 \\ -sin45&0&cos45 \end{array}\right)[/tex]
Surprisingly, yes. But only because you did the inverse of an inverse. It gets you the correct result, but it's not set up in the standard way.

You only have one rotation matrix:

[tex]\left( \begin{array}{ccc} 1 & 0 & 0 \\ 0&cos \theta& sin\theta \\ 0&-sin \theta&cos \theta \end{array}\right)[/tex]
The '1' should be on the axis you're rotating around (xx, yy, or zz). Shift the rest of the matrix over and down as necessary (rows shifting off the bottom wrap around to the top; columns shifting off the right wrap around to the left).

The vector you're transforming should be written as a 3x1 matrix.

[tex]\left(\begin{array}{c}x\\y\\z \end{array}\right)[/tex]

Your rotation matrix is multiplied by the vector. Since you're rotating about the y axis, it would look like this:

[tex]\left( \begin{array}{ccc} cos \theta & 0 & -sin \theta \\ 0&1& 0\\ sin\theta&0&cos \theta \end{array}\right) * \left(\begin{array}{c}x\\y\\z \end{array}\right)[/tex]

The rotation is counter-clockwise. If you want to rotate clockwise, you need to the inverse of the rotation matrix you used. Since you're using an orthogonal rotation matrix, the inverse is just the transpose of the counter-clockwise rotation matrix.
 
Last edited: