2

A few months ago I wrote this simulation of a system of circles bouncing off each other. It's a two-dimensional box with elastic balls in it that bounce off each other. I came back to it and noticed that I didn't sanitize the input for the "elasticity" constant (which multiplies the resultant velocities after performing momentum transfer on collision) and I started putting in values above 1. Of course, this makes no sense physically, but it was still interesting nonetheless.

I noticed that there seems to be a certain threshold of elasticity beyond which the total energy of the system becomes unbounded and grows exponentially instead of slowing to a halt due to friction (dynamic friction from moving). Can the system be simplified to a point where this threshold can be easily calculated as a function of the friction, the initial energy of the system, and the size of the spheres?

I found this question (Collision time of Brownian particles) which is very much related, but doesn't quite answer the general case with many particles.

1 Answers1

0

Since you programmed the simulation, you should know or otherwise have access to the underlying equations simulating the dynamics of your particle collisions. If this dynamic equation is a linear difference equation, you can transform the equations into the z domain and express the equations as a transfer function. As a transfer function you can solve for the roots of its denominator, and if any of the roots exist outside the unit circle, the system will behave in a divergent manner and be unstable. This would be the analytical version of the 'smoking gun' to explain the growing energy you observed.

It really depends on the structure of your equations, but as a very simple explanation for feedback in a linear discrete systems, if the feedback (loop) gain is greater than 1, your system is unstable. In terms of physical parameters, you might be modeling say the parameter of viscosity that adds energy to the system rather than dissipates it.

docscience
  • 11,779