Environmental Engineering Reference
In-Depth Information
Johns Hopkins University (U.S.A.). This project is based on the development of an
open-source tool that represents accurately the behaviour of a fluid (Gómez-Gesteira
et al. 2012a , b ). SPHysics has been mainly applied to the study of coastal processes in
2D (Gómez-Gesteira et al. 2005 ; Dalrymple and Rogers 2006 ; Narayanaswamy et al.
2010 ; Rogers et al. 2010 ) and in 3D (Gómez-Gesteira and Dalrymple 2004 ;Crespo
et al. 2008 ). The first version in FORTRANwas released in 2007, whichwas followed
by new releases, including a multicore version implemented with Message Passing
Interface (MPI). Despite this improvement, the number of particles that the model
was able to handle at a reasonable computational time was not high; this means that
the applicability of the model was compromised by the size of the domain of study.
This issue lead to the development of a new code keeping the same open-source phi-
losophy. DualSPHysics is a new implementation that takes advantage of the compu-
tational power of hundreds of cores of the NVIDIA graphic processing units (GPUs).
The DualSPHysics code has been developed by researchers from the University
of Vigo (Spain) and University of Manchester (U.K). The model is implemented in
C++ language with MPI and CUDA programming platforms to carry out simulations
on the CPUs and GPUs, respectively. The new CPU code presents some advantages,
such as a more optimised use of the memory. The object-oriented programming par-
adigm provides means to develop a code that is easy to understand, maintain and
modify. Furthermore, additional approaches are implemented, for example particles
are reordered to provide faster access to memory, symmetry is considered in the force
computation to reduce the number of particle interactions and the best approach to
create the neighbour list is implemented (Domínguez et al. 2011 ). The CUDA library
manages the parallel execution of threads on the GPUs. The best approaches were
considered to be implemented as an extension of the C++ code, so that the most
appropriate optimizations to parallelise particle interactions on GPU were imple-
mented (Domínguez et al. 2013a , b ). The first rigorous validations were presented
by Crespo et al. ( 2011 ).
Due to the aforementioned facts, DualSPHysics is especially well suited to sim-
ulate complex engineering problems involving violent collisions between water and
coastal structures. Different problems have been analysed with the code such as the
computation of forces exerted by large waves on the urban furniture of a promenade
(Barreiro et al. 2013 ) or the study of the run-up in an existing armour block sea
breakwater (Altomare et al. 2014 ). The software is available to free download at
www.dual.sphysics.org .
The different formulations implemented in DualSPHysics will be presented in the
subsequent sections. A benchmark case to show the capabilities of the code to repro-
duce the dam-break behaviour and its interaction with coastal structures is described.
2Theory
The principles of the SPH theory are here described. For a wider and deeper descrip-
tion of the SPH method, the reader is addressed to Monaghan ( 1982 , 1992 , 2005 ),
Benz ( 1990 ), Liu ( 2003 ) and Gómez-Gesteira et al. ( 2010 , 2012a ).
Search WWH ::




Custom Search