Uploaded June 2026 | Updated September 2026, 2 weeks ago
40 non-interacting balls dropped on a parabola, f(x) = x^2, including color dependent bounce sounds when the balls hit the function. This system is non-chaotic.
All in Python. Frames to movie by FFmpeg.
40 non-interacting balls dropped on a parabola, f(x) = x^2, including color dependent bounce sounds when the balls hit the function. This system is non-chaotic.
All in Python. Frames to movie by FFmpeg.






![Butterfly-effect simulation using 501 double pendulums [1440p]
This is a slightly different 1440p version of one of my previously posted videos. They say 1440p resolution are rendered with a significantly higher bitrate.
Below is essentially a copy-paste of the previous video:
Simulation of 501 double pendulums having initial start positions ranging between 2.2995 radians and 2.3 radians spanned from the vertical line. That is, the difference in starting angle between each adjacent pair of double pendulums is one millionth of a radian. Hence, the outermost apices of all the double pendulums sweeps only 1/2000 of a radian at the very start.
Despite such a tiny difference between the 501 initial conditions, the outermost apices of the pendulums rapidly spread out homogeneously all over their energetically allowed range, as the double pendulum is a chaotic system for certain criteria of the initial conditions, meaning that it is ridiculously sensitive to initial conditions. This is sometimes referred to as the Butterfly effect.
CPU time was ~3 minutes for calculating all positions of the pendulums for all 3200 frames on a mid-2012 MacBook Air. Plotting/saving all frames took ~1.5 hour in total.
Here is a good example page to start out playing with one double pendulum in Python: https://scipython.com/blog/the-double-pendulum/. My scripts need a thorough clean-up before sharing.
Music by @gpcbass!
Done in Python and ffmpeg. Butterfly-effect simulation using 501 double pendulums [1440p]](https://i.ytimg.com/vi/k3TaCGmJZ9I/mqdefault.jpg)



