Here is a neat simulation I ran recently (play with double speed).

It is based on the following equations:

equations

and with inspiration from here.