SPH was originally designed to study stellar movement, the original work was done by Lucy in 1977 (Lucy, 1977). Although Lucy’s work was on fusion particle movement this was adapted for use with Fluid. Although there have been a lot of adaption’s on the algorithm other the years this work was the origin of the SPH algorithm.
The method is based on the idea of a smoothing distance between particles; if the particles get closer to each other they apply a force to repulse each other away. For this reason this algorithm works with both compressible liquids and incompressible but adaptations are required to handle incompressible liquids.
Due to the expandable simplicity of this algorithm, the algorithm can be adapted to support different types of simulation not just simple fluid movement. There are examples of ability to simulate rotational motion, underwater explosion shocks and material strength.
SPH works as an interpolation method, where scalar fields are generated as specific locations. Each particle works in a local area to explain its movement. What this means is each particle has a region that it affect neighbour particles properties.
The main components of SPH Algorithm are:
- Neighbourhood Search
- Calculation of:
- Gas Pressure
The SPH algorithm discussed was presented by Matthias Muller in his report Particle-Based Fluid Simulation for Interactive Applications (Matthias Müller, 2003), shows a realistic implementation of the SPH algorithm. Therefore here we will try explaining the approach proposed my Matthias Muller and incorporate other people’s research into making SPH Algorithm more understandable.