GPUSPH is an implementation of Smoothed Particle Hydrodynamics for free surface flows (Monaghan, 1994, 2005) on a Nvidia graphics card. In this application, the fluid can be water or a more viscous substance like lava (see also GPU-LAVA).

GPUSPH is open source but copyrighted by the developers under the GPL license. Feel free to use, but be sure to reference the model properly:

GPUSPH was started by Alexis Hérault in a study of lava cooling. It utilizes Nvidia’s CUDA language for coding Nvidia graphics cards and was inspired by the Nvidia SDK program Particles. His original effort was presented at the 3rd SPHERIC Meeting in Lausanne, Switzerland in 2008.

The research was carried out at the Istituto Nazionale di Geofisica e Vulcanologia (INGV) under the LAVA project - "Realization of the lava flow invasion hazard map at Mt Etna and methods for its dynamic update" - co-funded by National Civil Protection (DPC), and coordinated by Ciro Del Negro (INGV) and Stefano Gresta (Università di Catania). Some developments of the code have been sponsored by the Office of Naval Research.

The original GPU code followed the equations of the open source SPH free surface flows code SPHysics, which is written in Fortran and exists in serial and parallel form. See www.sphysics.org.

GPU-SPH is now at version 3.0 and it is a fully independent open source code using Nvidia graphics cards to do the heavy computations associated with SPH and thus there are tremendous speed-ups associated with the model. (Note that dualSphysics is a different program.)