The fluid simulation here is essentially the same as the one used to simulate water and terrain movement in many of the other apps. There are a few complications but really it all comes down to doing simple operations lots of times very quickly.