# Cartwheeling/spinning rod problem

1. Aug 5, 2004

### Kludgy

Hi,

I'm stuck with the simulation of something that is very intuitive in reality. It's easy to produce a combined cartwheeling and spinning motion with a screwdriver by flicking the wrist at the right time.

But what combination of angular parameters describes the evolution of this rotation about primary and secondary axes simultaneously?

I've written a simple program that numerically integrates body orientation from a constant body-relative angular velocity (ignoring momentum for simplicity). The angular velocity is set high about the primary axis and low about a secondary. But of course the rod just wobbles, rotating about the one and only fixed angular velocity axis.

So what am I lacking in my understanding of the problem? ;)

2. Aug 5, 2004

### Gza

I would think you would need to know what a tensor is in order to simulate that situation. I'm not really familiar with an easier method of tackling it, but there may be one.

3. Aug 5, 2004

### Kludgy

Do you mean like supplying a non-diagonal inertia tensor matrix to the calculation?

4. Aug 5, 2004

### turin

The angular momentum should be constant. There are three natural axes of rotation, and usually in lower level physics you only deal with one. The basic idea about conservation of angular momentum still applies in the case of two axes, though, as Gza has pointed out, the best way to do this is to introduce yourself to the inertia tensor. It is a lot like a 3x3 matrix and it basically characterizes the natural rotation axes. The total angular momentum of the screwdriver would be a linear combination of these two axes, but it is a bit more complicated than it probably sounds, since the axes themselves evolve (It is linear, but coupled.).

5. Aug 5, 2004

### Kludgy

Ok I think I got it, using an instantaneous world space inertia tensor to calculate the angular velocity at the beginning of each step. Now I can get a spin and tumble.

My new problem is that there is a strange energy transfer in the simulation. Maybe it's normal, but physics is not my strong suit. For simplicity I'm just using euler approximation on matrices right now:

R' = orthonormalize( R + h skewsymmetric(w) R )

which always evolves the rotation into a spin about the primary axis. I guess it's the poor integration, but I'd like to verify that it's not expected behaviour in the absence of energy dissipation..

6. Aug 5, 2004

### Kludgy

Yea it's a numerical bug coming from orthonormalize since the spin always converges on the same world space axis.

7. Aug 5, 2004

### Kludgy

Ok correction again I'm wrapping this up. :) It's not the orthonormalize, but if I subdivide the simulation step 500 times everything is much more stable.

Thanks for the help! I'm off to look for better integration approaches...

8. Aug 6, 2004

### turin

I'm not clear of the meaning behind your code statement, but it appears to be an approximation that represents only a small deviation from something a lot easier to work with. If that's the case, then, I would certainly expect integration (iteration) of this approximation to eventually take you to the simplified form.

9. Aug 7, 2004

### pervect

Staff Emeritus
I think the equations you are looking for are called Euler's equations

http://www.mathworks.com/access/helpdesk/help/toolbox/physmod/mech/mech_studies4.html [Broken]

The remark that the angular momentum vector stays constant is also a very useful observation about the motion.

Last edited by a moderator: May 1, 2017
10. Aug 7, 2004

### pervect

Staff Emeritus
As I recall, in the absence of *any* energy dissipation mechanism, spins along both the the axis with both the highest and lowest moment of inertia are stable. Spins around the axis "in between" are unstable. This often comes up in homework problems or class discussion about the nature of a tumbling book. You can throw a book so it spins along any of the three possible axis, and observe this instability.

If you have any energy dissipation, it's very natural for a system to rotate around the axis with the largest I, because that's the lowest energy state of the system.

The energy of the system can be written as L^2/2I, where L is the angular momentum (which stays constant), so the larger I is, for a given L, the lower the total energy is.

If one does have energy dissipative mechanisms, spin along the lowest I becomes unstable as well. This happened to an early space satellite (Voyager, I believe) - they tried to spin it along the axis with the least I, and because the satellite wasn't perfectly rigid, in the matter of a few hours it went to the lowest energy configuration, spinning around the axis with the largest I.

So anyway, some of your energy transfer may be "natural", other parts of it may be due to a lossy integration algorithm.