This Java program simulates simples circular objects bouncing on different shapes and getting chaotic.
Using the upper bar it is possible to control the simulation process. First, we can select the kind of shape the balls are going to bounce on: it could be a sine curve, a parabola, an hyperbolic curve or more. Then, it is possible to add a single ball or a bunch of them, and launch the simulation.
It's interesting to notice that by choosing the parabola curve and launching the simulation with a great deal of balls, each of them tends to pass through the focal point of the parabola.
At first, it's possible to generate a great deal of bouncing objects all separated by an infinitesimal distance.
Then, after some bounces, we start to see the spreading
And, eventually, getting chaotic