Very cool. I wonder if this, in some sense, is a numerical solution to the various differential equations that govern fluid flow (e.g. Navier–Stokes).
But as soon as you dive into a tiny bit of detail, no, this violates those equations at basically every iteration.