How exactly is Lagrangian and Eulerian mixed? What aspects of each method are used in modern methods that combine both?
Do Eulerian algorithms keep track of particle specific quantities such as velocity and position? Or is it all encoded to the grid?
I know that point-particle-mesh for simple cosmological models use density grids to get the gravitational potential and force at every point, but it also keeps an array of particle specific quantities.
What are some of the factors that make people choose particular fluid solvers over others? There seems to be so many potential solutions -- is it just runtime vs accuracy?
@ericchan A classic paper from graphics to look at is Practical Animation of Liquids by Foster and Fedkiw, which introduced the particle level set method. The rough idea is to track both particles (Lagrangian) and a level set function on a grid (Eulerian), and use the particles to correct errors in the grid, but only near the liquid-air interface (where errors are most visible).
@ljelenak It's certainly possible to track all quantities on an Eulerian grid, but modern methods often mix particles and grids. In fact, this has been going on for a very long time; consider for instance the Particle in Cell (PIC), which doesn't quite combine Eulerian and Lagrangian in the sense we're talking about here: there, the grid is used to compute a quantity (pressure) at each time step, but information is propagated using particles. A similar idea that became quite popular in graphics is FLIP. An example of a real hybrid method is the one mentioned above (particle level set method) which uses a mixed Lagrangian/Eulerian representation to actually represent the fluid domain itself. Outside of graphics (and typically for a somewhat different class of problems), there are so-called Arbitrary Lagrangian Eulerian (ALE) which nicely combine the two points of view. ...The list goes on and on!
@merc You're right, it's quite a zoo out there! A good place to start is Robert Bridson's book on fluid simulation in computer graphics, and from there, you can start taking a look at recent graphics papers. In general it's more than just runtime vs. accuracy; there are particular fluid phenomena you care about, or particular temporal and spatial scales where you need to resolve the solution. For instance, a technique for simulating small water droplets (where you care a lot about surface tension, adhesion, etc.) might look very different from one that simulates large crashing waves. Likewise, methods for simulating water may look very different from methods for simulating viscous, coiling liquids like honey.