How to simulate rotational stability of multiple parts?

AI Thread Summary
The discussion centers on simulating the rotational stability of multiple interconnected spinning parts in a space colony simulation game. The author successfully models single large spinning parts but faces challenges with assemblies like O'Neill cylinders, which exhibit unrealistic tumbling behavior despite counter-rotation. The key issue lies in accurately calculating the total energy of the system and understanding how energy loss affects orientation and spin. The author plans to explore rigid body dynamics algorithms to improve the simulation's accuracy. Ultimately, the goal is to create a more realistic representation of how multiple rotating masses interact in a space environment.
JoeStrout
Messages
3
Reaction score
0
I've written a space colony simulation game called High Frontier. It correctly simulates rotational stability when most of the mass is dominated by a single large spinning part. For example, a squat cylinder will be stable, but a long cylinder will end up tumbling end over end, as shown:



This tumbling doesn't happen in ideal physics bodies; it's an effect of energy loss (due to subtle flexing, for example). I simulate this in the following way: for each part of the structure, I hypothesize a small random change in its spin axis (imagine some minor perturbation), calculate what its angular velocity would be around that axis, and its new kinetic energy as described here. If the new kinetic energy is less than the previous kinetic energy, I keep the change; otherwise I throw it out. So, over time the system ends up in its lowest-energy state.

But now I want to simulate systems that involve multiple spinning parts joined together. For example, consider O'Neill cylinders, which is a space colony design consisting of two counter-rotating cylinders joined at the end:
10029474534_d8ac7d8a81_b.jpg


When I build such an assembly in my simulator, despite the cylinders rotating in opposite directions, it still flops over and starts rotating end-over-end. When we imagine changing the axis a little bit (towards the short axis), this is a reduction in kinetic energy for both cylinders, and so a reduction in the total energy of the system... or so it seems to me.

I'm pretty certain this is not how conjoined rotating parts behave in real life, so clearly I've missed something in my simulation. I get that the total angular momentum of the system is zero, but each of the parts has kinetic energy, and I'm simulating on a part-by-part basis. So what's missing?

Finally, if it helps focus our thoughts: how does the arrangement of the parts matter? Would two cylinders connected end-to-end work just as well as side by side?
 
Last edited by a moderator:
Physics news on Phys.org
The spinning of a fully asymmetric top (i.e., with three different principle moments of inertia) is stable around the principle axes of the largest and the smallest moment of inertia, while it's unstable when rotating around the 3rc principle axis.
 
It is stable for a fully rigid body. Not necessarily for a space station. But do you really want to take care of those effects? Actual space stations would probably have some active compensation to keep them spinning around the axis of their smallest moment of inertia.
 
  • Like
Likes vanhees71
vanhees71 said:
The spinning of a fully asymmetric top (i.e., with three different principle moments of inertia) is stable around the principle axes of the largest and the smallest moment of inertia, while it's unstable when rotating around the 3rc principle axis.
That's true for an ideal rigid body, and we simulated that long ago here. However it is not a relevant effect in this case (at least, not in any way I can see).

mfb said:
It is stable for a fully rigid body. Not necessarily for a space station. But do you really want to take care of those effects? Actual space stations would probably have some active compensation to keep them spinning around the axis of their smallest moment of inertia.
I really do want to simulate these effects, yes.

But my question isn't about the stability of a single rotating mass. We have that working correctly already (including energy loss, which leads a long cylinder to spin end-over-end regardless of its original spin axis).

My question is about multiple rotating masses, joined together at the ends (via bearings, of course). Perhaps it would be helpful to reframe the question this way:

How do I calculate the total energy in a system composed of two or more spinning masses? And if some energy is lost, how will this manifest in the orientation and spin of the system?
 
Calculating the total energy should be easy - calculate the energy of each component and sum.
JoeStrout said:
And if some energy is lost, how will this manifest in the orientation and spin of the system?
That depends on the details of your station. Which part reacts how to forces.
 
mfb said:
Calculating the total energy should be easy - calculate the energy of each component and sum.

Well, that's what I'm doing now, but as described in the first post, it results in unrealistic behavior. Each cylinder's energy is reduced by flipping over onto its side and rotating end-over-end (while conserving angular momentum). So, the sum of their energy is also reduced.

That depends on the details of your station. Which part reacts how to forces.

Yes, I've come to the conclusion that there is no easy answer to this. I've bought https://www.amazon.com/gp/product/B0017I6RR4/?tag=pfamazon01-20 on rigid body dynamics algorithms, and will be starting from scratch (using the nifty 6D-vector notation the book espouses). Hopefully at the end I'll be able to correctly simulate situations like this.

Thanks to all who tried to help!
 
Last edited by a moderator:
Some internal stiffness should prevent the cylinders from doing things that are too weird.
 
Back
Top