A practical introduction, the second edition of Fluid Simulation for Computer Graphics shows you how to animate fully three-dimensional incompressible flow. It covers all the aspects of fluid simulation, from the mathematics and algorithms to implementation, while making revisions and updates to reflect changes in the field since the first edition. Highlights of the Second Edition New chapters on level sets and vortex methods Emphasizes hybrid particle-voxel methods, now the industry standard approach Covers the latest algorithms and techniques, including: fluid surface reconstruction from particles; accurate, viscous free surfaces for buckling, coiling, and rotating liquids; and enhanced turbulence for smoke animation Adds new discussions on meshing, particles, and vortex methods The book changes the order of topics as they appeared in the first edition to make more sense when reading the first time through. It also contains several updates by distilling author Robert Bridson's experience in the visual effects industry to highlight the most important points in fluid simulation. It gives you an understanding of how the components of fluid simulation work as well as the tools for creating your own animations.
https://www.routledge.com/Fluid-Simulation-for-Computer-Grap...
The first edition was really good on the nitty gritty implementation details.
Robert Bridson does a great job on explaining fluid concepts, and there's a useful appendix on the basics of vector math, but it's definitely still a lot of work to build up a good understanding of the equations.
I own the second edition of the book, released in 2015, though I haven't read too much of it, as I already went through the first in detail. However, I did notice that the second edition emphasizes some important points that were a little subtle in the first edition. That would have made implementing it easier [1].
The other thing about the second edition is that fluid simulation has advanced since 2007. The foundations are still the same, and the pressure solve remains unchanged, but advection has been made both simpler to implement and more accurate by using a particle representation for that portion of the algorithm.
IIRC, the 2nd edition covers FLIP, which is one of those newer techniques, though not the most current. The APIC paper[2] was also released in 2015 (with a video [3]), and it was a bit of a breakthrough. APIC is pretty much better in every way. Fortunately, Bridson's book prepares you well for reading the APIC paper (which assumes you know the standard fluid simulation techniques already).
In short: this free material is a great introduction to fluid simulation. If you want to implement your own simulation, read the second edition of the book, then read the APIC paper.
[1]: The greatest weakness of the notes/book IMO, was the lack of a reference implementation. I never got around to cleaning up the code after I got it working, but here's my implementation. Please forgive the mess: https://github.com/cgmb/euler
[2]: The affine particle-in-cell method (2015) - https://disney-animation.s3.amazonaws.com/uploads/production...
Particle-based methods like Smoothed Particle Hydrodynamics (SPH) are simpler to implement and are more intuitive than grid-based methods, but they're also harder to analyze mathematically. SPH is the method used by PixelJunk Shooter. "Fluid Simulation for Video Games" by Michael Gourlay is mostly about a different fluid technique (vortons), but does include SPH. [2]
[1]: https://www.cs.ubc.ca/~rbridson/fluidsimulation/
[2]: https://software.intel.com/en-us/articles/fluid-simulation-f...