A novel generalized diffusive SPH model: Theoretical analysis and 3D HPC implementation

The subject of the present thesis is the development of a new free Smoothed Particle Hydrodynamics (SPH) code oriented to the researchers, conversely to the already available free/open source SPH codes. The new software should be competitive in performance terms, allowing at the same time to be modified and extended with a minimum amount of effort. Such code should be later applied to analyze SPH models where a diffusive term is added in the mass conserving equation, which are usually known as ? -SPH models. Therefore, the thesis can be split in 3 main parts: The theoretical aspects of the SPH models considered, the numerical model implementation, and their verification and validation. During the theoretical analysis, the possibility of adding a diffusive term inside the continuity equation in order to significantly reduce the characteristic numerical instabilities of the SPH model is investigated, compiling a list of the already existing models, discussing their features and relationships, and pointing out their main benefits and drawbacks. A close relation between the ? -SPH models and the Riemann solver based ones have been unveiled. Also, a new diffusive term not requiring neither a tuning parameter nor a Courant condition is presented. Such term is resulting from a slightly modification of an already existing one. Later, as part of the same theoretical investigation of the model, an energy conservation analysis has been carried out, considering the interactions with the boundary conditions, such that several extra energy terms are resulting, some of them representing extra energy dissipations if a set of conditions are fulfilled. All this theoretical aspects have been implemented in a new free SPH solver, accelerated with OpenCL, modular, and extensible by Python scripts. Implementation details regarding the software itself, as well as the SPH models considered have been provided. The main benefits of the new code, compared with other already existing free/open source alternatives, have been discussed. Finally, a set of 4 verification and validation test cases is described, covering all the theoretical and implementation aspects discussed along the thesis. In such verification and validation cases the implementation details, performance, and results quality are discussed. The verification and validation cases are complemented with two practical applications, where the capabilities of the new software to scale to significantly complex problems are shown. RESUMEN En esta tesis se documenta el desarrollo de un nuevo software de SPH (Smoothed Particle Hydrodynamics), que tiene la particularidad de estar orientado al trabajo de investigacion, en lugar de enfocarse a aplicaciones industriales como los otros codigos libres/abiertos disponibles en la actualidad. El nuevo codigo debe ser competitivo en terminos de coste computacional, al tiempo que provee una herramienta modular y extensible. Dicho codigo se empleara mas tarde para analizar los modelos conocidos como ? -SPH, que se caracterizan por la presencia de un termino difusivo en la equacion de conservacion de masa. Por tanto, el trabajo llevado a cabo durante el desarrollo de la tesis se puede dividir en tres partes: Los aspectos teoricos, la implementacion del modelo numerico, y la verificacion y validacion de los mismos. A lo largo del analisis teorico se investigara la posibilidad de anadir un termino difusivo a la ecuacion de continuidad, con el objetivo de reducir significativamente las inestabilidades numericas que vienen caracterizando al modelo de SPH. Para ello se recopilaran todos los modelos existentes actualmente, discutiendo sus propiedades principales, las relaciones que guardan entre ellos, y las principales ventajas a destacar de cada uno de ellos. Ello nos servira para establecer una relacion entre los modelos ? -SPH, y los modelos basados en Riemann solvers. Ademas se presentara un nuevo termino, resultante de la modificacion de uno ya existente. Dicho termino tendra la ventaja de no requerir ni un parametro de tuneado, ni una condicion de Courant adicional sobre el paso de tiempo. Como parte del mismo analisis teorico, se investigaran las propiedades de conservacion de los modelos, en donde se considerara la interaccion con los contornos. Como resultado, se demostrara la existencia de unos terminos de energia adicionales, algunos de los cuales pueden ser considerados disipaciones extra si se cumplen unas determinadas condiciones. Todos estos aspectos teoricos se implementan en un nuevo codigo libre de SPH, el cual esta acelerado con OpenCL, ademas de ser modular y extensible con codigos de Python. Se documentan algunos detalles sobre la implementacion del software en si mismo, y sobre la implementacion de los modelos SPH a considerar. El nuevo software se compara con otras alternativas ya existentes, resaltando sus ventajas. Finalmente, se describen 4 casos de verificacion y validacion que permiten cubrir todos los aspectos teoricos y computacionales abordados durante la tesis. En ellos se proveen algunos detalles sobre como se han desarrollado, el coste computacional, y la calidad de los resultados. Estos casos de verificacion y validacion se complementan con dos aplicaciones practicas, donde se muestran las capacidades del software para afrontar casos significativamente complejos.