• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

Going in circles

A rotation around any axis can be represented by an orthogonal matrix (O<sup>-1</sup> = O<sup>T</sup>). For example, a rotation of angle θ around the Z axis can be represented by the matrix Sz =
<pre>
cos θ sin θ 0
-sin θ cos θ 0
0 0 1
</pre>

To rotate a point around the origin by this rotation, you multiply the vector to the point by this matrix. To apply more than one rotation, you multiply by multiple matrices. You can immediately see that the order of multiplication matters: matrix multiplication is not commutative. The set of all such matrices is called SO(3), which is a representation of the three-dimensional rotation group.

If you rotate a point at a constant speed, you can replace the angle θ with ω t, where omega is the angular speed. In an infinitesimal amount of time, you rotate by ω dt.

If you want to find the exact path of a particle to which multiple rotations are being applied, you'd multiply a bunch of infinitesimal rotations together and start integrating. Since all the matrices involves sines and cosines that you're integrating, the result will be a vector whose components are a big combination of sines and cosines of various angular velocities times time. So any arbitrary combination of rotations will in fact be periodic.

It might be easier to do the integrations if you use an alternate representation of rotations, SU(2). This involves 2x2 complex matrices, but then the matrix elements are all of the form e<sup>i ω dt</sup> and integrating exponentials is easier than trig functions.

Now for some reason I don't understand, reading this thread, what combination of rotations BSM wants to end up with. I think an infinite set of rotations would not converge, but I'm speculating.

Edit to add:
No, not a homeopathy thread.
Refreshing.

Edit again to add: The 'S' in SO(3) and SU(2) means that the determinant of all the matrices is 1. If it were another value, there'd also be scaling when you multiply, which you don't want, and if were negative, you'd also have a parity flip (mirror image).
 
Zombified said:
To rotate a point around the origin by this rotation, you multiply the vector to the point by this matrix. To apply more than one rotation, you multiply by multiple matrices. You can immediately see that the order of multiplication matters: matrix multiplication is not commutative. The set of all such matrices is called SO(3), which is a representation of the three-dimensional rotation group.
...
If you want to find the exact path of a particle to which multiple rotations are being applied, you'd multiply a bunch of infinitesimal rotations together and start integrating. Since all the matrices involves sines and cosines that you're integrating, the result will be a vector whose components are a big combination of sines and cosines of various angular velocities times time. So any arbitrary combination of rotations will in fact be periodic.
...
Now for some reason I don't understand, reading this thread, what combination of rotations BSM wants to end up with. I think an infinite set of rotations would not converge, but I'm speculating.

1. A bit too much maths and not an answer I can shut my eyes and visualise. Have you reached a solution or is it an essentially unanswrable question?

2. Am I to take it tha because of the non-commutative nature of teh matrix multiplication, I can't just say that I want all the rotations considered simultaneously. That seems odd. I can see that if you do add them sequentially then the order would matter, but I don't see why I'm not allowed to state that there is no order, but that all the rotations start simultaneously, bearing in mind thta this is an abstraction not real physics.

3. I'm assuming that viewed from then end of each axis at its termination in the N hemisphere and looking along each axis, that rotation about each axis is the same as for any other axis and constant.

4. Thanks
 
Badly Shaved Monkey said:
1. A bit too much maths and not an answer I can shut my eyes and visualise.
Hrm, I was afraid of that. But the math is interesting and has useful applications to quantum mechanics and particles physics....
Have you reached a solution or is it an essentially unanswrable question?
You can get an exact solution once you know what the set of rotations are, but for many axes, if the rotational frequencies are different the answer will be very complicated. If you want to compose an infinite number of rotations, I don't know if that has an answer.

2. Am I to take it tha because of the non-commutative nature of teh matrix multiplication, I can't just say that I want all the rotations considered simultaneously. That seems odd. I can see that if you do add them sequentially then the order would matter, but I don't see why I'm not allowed to state that there is no order, but that all the rotations start simultaneously, bearing in mind thta this is an abstraction not real physics.
The rotations can be applied simultaneously in time, but they're still ordered in terms of which rotations affects which other rotations. It's like your example of a gimbal mechanism: A rotation in the outer part of the mechanism actually changes the axis of the inner rotation. If you imagine this is as a set of concentric spheres where adjacent spheres are connected with a rotating bearing at two opposite points, you can rotate all the bearings simultaneously, but the spheres are ordered spatially - some are inside others.

The mathematical approach is to take each simultaneous rotation, multiplied in order, and apply just an infinitesimal bit of it at each instant. That's what I'm getting at with these infinitesimal rotation matrices.
3. I'm assuming that viewed from then end of each axis at its termination in the N hemisphere and looking along each axis, that rotation about each axis is the same as for any other axis and constant.
Do you mean all the rotations have the same angular rate?
4. Thanks
Beats arguing with K*m*r.
 
Badly Shaved Monkey said:
Sorry, just to clarify, how many axes are involved in generating those images?

Just 2 axes of rotation. First picture is like having two pins at 90deg stuck in the sphere, and showing the path they take. Second picture is like having 3 pins, all orthagonal to each other.

Zombified, that matrix method is the same one I used. If you take your 3x3 and add a 3x1 matrix containing X Y and Z on the side, and a 1x4 containing [0 0 0 1] on the bottom, you get a matrix which can handle not only rotations, but also translations in space.

I didn't have the guts to try integrating, but if anyone wants it, here's the long formula courtesy of MATLAB.

If you have a point located at x,y,z in the innermost rotating frame, and the rotation angles are given by ang1 and ang2

the final location of the point in a non-rotating frame is:
X=cos(ang2)*x+sin(ang2)*z
Y=sin(ang1)*sin(ang2)*x+cos(ang1)*y-sin(ang1)*cos(ang2)*z
Z=-cos(ang1)*sin(ang2)*x+sin(ang1)*y+ cos(ang1)*cos(ang2)*z

So Zombified is right, the path would be periodic, but it might take a while for the two frequencies to 'sync up'.
 
It's been a few years since I've used it, but I think Mathematica would be able to do the integrations, as long as you're talking about a finite number of axes. The integrations themselves are not that hard, it's just there's a whole lot of algebra and trig to do - just the thing computers are for. :)
 
I haven't read this thread deeply, but am confused about the math being used to generate the plots. In 3D graphics we face a problem called gimbal lock when applying successive rotations to an object. The standard mathematical treatment to solve this is the use of quaternions. In the 3D code that I write I have managed to stay away from this issue in various ways, so I've never become conversant with the math. So, what I am saying may not apply at all, but it seems like the likely branch of math to look at to solve this problem mathematically. Hope it helps, ignore me if it doesn't. :)
 
I'm not that familiar with using quaternions for rotations, either. My understanding is gimbal lock is an issue when you try to parameterize an arbitrary rotation by three basic angles, I'm not sure it comes up if you're just using matrices alone.
 
O.K. I'm probably missing something here but I'm convinced the overall path would ALWAYS be a circle. Here's the reasoning:

We know that if we have two rotations about a pair of orthogonal axes, then that is equivalent to a single rotation about some intermediate axis. If we add a third orthogonal rotation, then again the net rotation would be an intermediate between the three axes i.e 45 degrees off each. The point is that summing the first two rotations leads to a single rotation (in a different coordinate system). We can then generalise to say that any two orthogonal rotations can be summed into one. So having summed the first two into one, then summing in the third is again simply (incrementally speaking) a sum of two rotations i.e. (1+2) + 3. And in theory we could carry on like this to infinity.

Alternatively, if we consider any arbitrary axis (not necessarily orthogonal to another under consideration) we could represent BOTH of those axes in terms of components of some arbitrary orthogonal set. Having reduced the problem to the known orthogonal case we can then apply the earlier technique to deduce that the resultant must also be a circle in some other coordinate system. And so on ad infinitum.

Now of course I may be totally wrong, but I simply cannot see how anything else is possible.

Edited to remove silly mistake about the sum of the first two axes not being orthogonal to third...
 
Pragmatist said:
We know that if we have two rotations about a pair of orthogonal axes, then that is equivalent to a single rotation about some intermediate axis.

That is the problem right here. It isn't equivalent. I thought it might be a simple vector additon problem in my first post, but after thinking about it, it's not. I was too busy thinking about precession problems from first year physics.

Say I have a globe. If I rotate the globe around the N-S axis it is spinning a certain way. Now rotate the globe around a different axis. What happens? The north-south line moves. This means that the direction of the axes for one rotation depend on the angular position of the other set of axes.

Or in mechanical analogy, your gimbals have to be concentric to each other in a order. Although they can all spin together, in order to locate(know the position of) the globe in 3D space, it is necesary to know the angles of rotation, and the order in which they relate to one another.

Take a practical example. In an airplane, the terms are roll, pitch and yaw. These are not great definitions but they'll do.

Roll: Side to side rotation. Around an axis drawn from the nose of the plane to the tail.

Pitch: Front-back motion. Around an axis drawn from one wingtip to another.

Yaw: left to right rotation, like on a swivel chair. Around an axis drawn from the ceiling through the floor.

Now, if I can just add up rotations, it dosen't matter the order in which they are applied. On the other hand if I can't then two moves with different orders won't be the same.

Ok, sit at the controls now. Plane is level and facing north.

a) Pitch back 90 degrees and yaw left 90 degrees.
You are now facing west and the horizon is vertical to you, with your head pointing south.

b) start again, this time yaw left 90 degrees and then pitch back 90 degrees. You are now facing directly upwards with your head pointed east.

This isn't the best explaination but it's as good as I can come up with.
 
roger said:
I haven't read this thread deeply, but am confused about the math being used to generate the plots. In 3D graphics we face a problem called gimbal lock when applying successive rotations to an object.

The same problem crops up in robotics. Say you have a robot with 6 axes/joints (like one of those big welding or car-manufacturing ones).

You can work these things in forward kinematics mode (In which you manually say joint 1 goto 20deg, joint 2 ....) which is tedious and pretty useless. Unfortunately you can't do much with this, such as go in a straight line. Alternatively you can work in inverse kinematics mode, which is where you specify the desired location in x,y,z and the robot calculates the position of the joints to achieve the location. Thus I say I want a nice straigt line along x and the robot makes countless trig calcs to get the signals to send to the motors.

Imagine if the each joints has an imaginary line protruding from it, about which that part of the robot rotates. If two joints are lined up then the inverse kinematic soloution is not unique, and the robot can't decide which joint to move to accomplish it. This is exactly analogus to gimbal lock.
 
Zombified said:
If you want to compose an infinite number of rotations, I don't know if that has an answer.

I hope it does. I like my maths to give proper 'answers', not reduced to how many iterations you can be bothered to calculate :)


The rotations can be applied simultaneously in time, but they're still ordered in terms of which rotations affects which other rotations. It's like your example of a gimbal mechanism: A rotation in the outer part of the mechanism actually changes the axis of the inner rotation. If you imagine this is as a set of concentric spheres where adjacent spheres are connected with a rotating bearing at two opposite points, you can rotate all the bearings simultaneously, but the spheres are ordered spatially - some are inside others.

That's what I hoped I avoided when I abstracted the problem away from a real set of concentric gimbals to a sphere spinning on infinite imaginary pins stuck through it. t=0, nothing. t=+infinitessimal, infinitessimal rotation about ALL axes.


Do you mean all the rotations have the same angular rate?

Yes
 
Badly Shaved Monkey said:

You mean you're after something that actually describes the movements taking place and plots the lines, rather than a method for fitting the line after the fact?

I'm pretty confident it can be done, but the methods to do it were never my strong point.

I suspect with the right encouragement zombified or wittgenstien will dare each other into producing a proof but, sadly, it is likely to be beyond my comprehension. Too many drunken nights since I studied 3D trig.

With a struggle I might work out how to do a polynomial line fit (which I think has already been given by someone), but that's what you don't want. Literally, using trig forms to cobble together a line that goes through the points you want it to.

Go on, BSM, offer them a banana.
 
Oh, and an attempt to maybe help you get something you can visualise, BSM.

With your sphere, picture the lines going through the axes of rotation and the points on the sphere surface which are either static relative to something or have a static intersection with one of the other 'virtual' spheres. Also picture the centre-point of the sphere(s) involved.

If you draw lines between these different points, and perpendicular lines to your visualised x, y and z axes/planes you will (amongst the mess) find a series of right angled triangles. You are seeking to identify the triangles which rotate on one axes and change only two of their line lengths (one being a the hypoteneuse) as the rotation you desire occurs. You can use these triangles to form a theoretical connection from the centre point of the original sphere across to the point on the surface of the rotating sphere.

You can describe this mathematically quite easily using o-level pythagorus. To take that equation and move it on would involve identifying which bits are moving in your triangle array, where and how relative to each other, and then using calculus to bring the equation up in complexity.

As, at this stage, we have a large number of unknowns (sphere diameter, location of orthagonal axes relative to original) etc the proof would be littered with variables.

Maybe if we take all sphere diameters as 1 unit length and any orthagonal as intersecting at 0.25 units from the surface of its sphere the initial proof will be a bit more comprehendible?

Apologies in advance if their are any misunderstandings on my part in all that! Don't take it as correct until someone like Zombi or Wittgen confirms it ... it sounds like they do this sort of thing day to day, I haven't touched it since 1997.
 
I had a nice discussion about this sort of thing with xouper a long time ago but I can't find the thread now. It's probably gone. Anyway ...

Finite angular displacements do not, in general, commute, but infinitesimal angular displacements do, and therefore so do angular velocities, which are the ratio of an infinitesimal angular displacement divided by an infinitesimal period of time.

In other words, if you rotate a multiply gimballed sphere only a tiny bit, it doesn't matter which gimbals are inside which; you can calculate the sphere's motion by summing, as vectors, the infinitesimal rotations about the various axes. This doesn't work over an extended period of time, however, because after the gimbal system has rotated for a while, the outermost gimbal still points in the same direction while the gimbal immediately inside it has rotated to a different direction (and so on, if there are more than two gimbals), so it matters for the subsequent motion which gimbal is outside and which is inside.

I'm not entirely sure how to make sense of the infinite-gimbal question; however, I do think it can be answered if we agree that any gimbal that crosses the equator during the process changes its sense of rotation, so that at all times all the gimbals rotate clockwise when viewed from the north. By symmetry, the initial rotation of the sphere is clockwise about the north-south axis--other components of each of the infinitely many axes in the sum are cancelled out by corresponding components of the axis equally far on the opposite side of the north-south axis. And the rotation of the sphere continues to be about the north-south axis because at all times the set of axes is the same as initially--namely, all possible axes in one hemisphere--even though they may switch places amongst themselves.

The rotation about the north-south axis will be infinitely fast unless the rotation about each of the infinitely many axes is infinitesimally slow.

Returning to finitely many axes ... Regarding the periodicity question when different axes have different speeds, it seems to me the speeds have to be commensurable; otherwise the motion will not be periodic.

The MATLAB pictures are great. I think a couple more, showing the points after 90 degrees and 270 degrees, would clarify which part of the figure eight corresponds to which part of the flat disc.
 
69dodge said:
Finite angular displacements do not, in general, commute, but infinitesimal angular displacements do, and therefore so do angular velocities, which are the ratio of an infinitesimal angular displacement divided by an infinitesimal period of time.
This dosen't sit right with me. Grumble grumble. I wish I knew my calculus better. :) . It reminds me of Xenos paradox. Seems to work for small things but try it on the large scale and the results can be messy.
69dodge said:

The MATLAB pictures are great. I think a couple more, showing the points after 90 degrees and 270 degrees, would clarify which part of the figure eight corresponds to which part of the flat disc.

With pleasure. I've modified the plots slightly now. The curves shown represent the path that pins in the stuck in the sphere on the x and y axis would take, but with the lower sections of the pin removed for clarity.

The Flat disc is in the X-Z plane. The original axes are marked with short lines and X=red, Y=green and Z=blue, and I've included a example of the results if they were each rotated 30deg on both gimbals (longer lines).

So if it were to be animated (which it isn't) you'd see the red line representing the X axis trace out the flat disc, and the green line representing the Y axis trace out the figure of 8. The Z axis always has to stay perpendicular to the first two.
 
3rd pic. I was worried that I'm killing the forums bandwidth, but compared to some of the chess posts I've seen the number of images is small.
 
wittgenst3in said:
That is the problem right here. It isn't equivalent. I thought it might be a simple vector additon problem in my first post, but after thinking about it, it's not. I was too busy thinking about precession problems from first year physics.

Say I have a globe. If I rotate the globe around the N-S axis it is spinning a certain way. Now rotate the globe around a different axis. What happens? The north-south line moves. This means that the direction of the axes for one rotation depend on the angular position of the other set of axes.

Or in mechanical analogy, your gimbals have to be concentric to each other in a order. Although they can all spin together, in order to locate(know the position of) the globe in 3D space, it is necesary to know the angles of rotation, and the order in which they relate to one another.

Take a practical example. In an airplane, the terms are roll, pitch and yaw. These are not great definitions but they'll do.

Roll: Side to side rotation. Around an axis drawn from the nose of the plane to the tail.

Pitch: Front-back motion. Around an axis drawn from one wingtip to another.

Yaw: left to right rotation, like on a swivel chair. Around an axis drawn from the ceiling through the floor.

Now, if I can just add up rotations, it dosen't matter the order in which they are applied. On the other hand if I can't then two moves with different orders won't be the same.

Ok, sit at the controls now. Plane is level and facing north.

a) Pitch back 90 degrees and yaw left 90 degrees.
You are now facing west and the horizon is vertical to you, with your head pointing south.

b) start again, this time yaw left 90 degrees and then pitch back 90 degrees. You are now facing directly upwards with your head pointed east.

This isn't the best explaination but it's as good as I can come up with.

Thanks, but nope, still don't get it! :)

I'm not trying to be awkward, just trying to understand the problem, but I'm still convinced you are doing something strange.

I take your point about the rotation of the frame of reference in successive rotations, however, the problem as posed suggests two SIMULTANEOUS rotations, therefore at the starting point both rotations should be applied simultaneously relative to the SAME frame of reference - not that it matters in practice. No actual observer frame of reference is defined, although I can't see how it matters, IF the oberver's frame of reference is fixed. And I suspect that is what is happening here - I am assuming a fixed observer in a static frame of reference whereas I believe you are trying to view from a rotating frame of reference which is complicating the issue.

I cannot see how a uniform sphere can have more than one real axis of rotation (relative to a fixed observer). Let me restate the issue in different terms and see if I can convey what I'm talking about.

Let us define a sphere of unit radius which is fixed in space at the centre point (i.e. no translation in space of the centre point is allowed). The sphere is free to rotate about that point along any arbitrary axis. Now let's restate the problem in more realistic physical terms. In order to cause the sphere to start rotating we need to apply forces. The forces need to be applied tangentially to the surface of the sphere. Let us choose an arbitrary point on the surface of the sphere and let's assume that two forces are applied tangentially to the surface at that point.

Now, it doesn't matter what the angle is between those two forces, no matter how you work it, the two independent force vectors can be resolved into a SINGLE tangential force vector. Of course the angle matters in terms of the overall direction of the resultant vector, but what I mean is that we will have a single resultant vector regardless of whether the forces are orthogonal or at some acute angle relative to each other. And if there is only one vector resultant there is only a simple spin along one arbitrary axis. From the point of view of any FIXED observer, any point on the surface of that sphere (except for the poles of rotation) will describe a circle relative to the fixed observer. Of course points at different latitudes will describe circles of different diameter, and the circles will be at different orientations depending on the position of the observer, but the overall motion will ALWAYS be simple circles.

You can continue to sequentially add single force vectors to the above, each additional force vector will cause a shift in the axis of spin. but overall there will always be ONE, and only one, real axis of spin.

The situation is different if the frame of reference of the observer is rotating. If we were to assume planetary orbits to be circular for example, then the path of one planet which is always moving in a simple circle would appear to perform complex loops (including retrograde motion) if observed from the surface of the earth because the observer on the earth is in a constantly moving reference frame (revolution of the earth around the sun) as well as rotation of the earth about its axis. However, if the same observer was placed in a fixed frame of reference (let's say at the center of the sun and NOT rotating) then it would be obvious that the planet in question was always moving in a simple circle. The same applies if we pick any arbitrary fixed point in space - the only requirement being that the observer is fixed.

Therefore I suspect that you are trying to view from a rotating reference frame. Can you define the position of your observer?

In terms of BSM's original question, restated in terms of my force vector analogy, if you tried to apply simultaneous spin from ALL possible axes, then the forces would cancel out and there would be no spin at all, the sphere would remain fixed and not rotating.

Finally, I can't see that it would make any difference if the forces were applied tangentially to DIFFERENT points on the surface of the sphere because they would then just resolve to one net moment. And only two dimensions are possible, the surface of the sphere is two dimensional despite the fact that it is part of a three dimensional object.
 
Originally posted by Pragmatist
I cannot see how a uniform sphere can have more than one real axis of rotation (relative to a fixed observer).
It can't have more than one axis of rotation at a time. But at different times it may have different axes of rotation.
From the point of view of any FIXED observer, any point on the surface of that sphere (except for the poles of rotation) will describe a circle relative to the fixed observer.
No, because the sphere might start rotating about a totally different axis before the point has a chance to describe a complete circle.

With the center of the sphere fixed, a given point on the surface may describe a path that is entirely arbitrary except that it must remain on the surface.
 

Back
Top Bottom