Nice definition, thanks for sharing.
I see what you mean. When developing Kangaroo 2, I was mainly focused on applications where the converged solution was the desired output (eg form-finding, rigid mechanical systems, constrained sketches), so was thinking mainly about stability and fast convergence
(this is what I see as the key distinction between dynamic-relaxation and simply simulation of dynamics).
However, this has meant that the solver I am using has a tendency to slightly overdamp things, and for simulations like this, where the actual dynamics are what is wanted it is not always ideal.
I do want Kangaroo to be something that can be used for both though. I’ll see what I can do to improve the dynamic behaviour - I have some ideas of things to try.
This example system is particularly sensitive to small variations in damping and stiffness, and to get the expected effect, where when a sphere hitting one end knocks only one sphere at the other end without disturbing the other spheres much, the collisions need to be extremely stiff and near perfectly elastic.