Hi everyone,
I am running an SPH application with:
- Symplectic Verlet time integration [1] including the density update proposed by [2],
- Laminar viscosity, thermal transfert and adaptive timestep as defined in [3].
The simulation consists in a fluid at rest in a tank. When I run this simulation, the average velocity keeps increasing. Therefore, I was forced to divide the predicted timestep by 10 [3] to avoid the simulation to explode.
This problem could be caused by:
- Dynamic Boundary Conditions, should I use Boundary Forces instead ?
- Time integration, should I use a Predictor-Corrector scheme instead ?
- MPI, could the parallelisation affect the stability of the program ?
Thank you for your time.
Best regards,
Bastien Bodin
--------
References:
[1] Crespo, A. J., Domínguez, J. M., Rogers, B. D., Gómez-Gesteira, M., Longshaw, S., Canelas, R. J. F. B., ... & García-Feal, O. (2015). DualSPHysics: Open-source parallel CFD solver based on Smoothed Particle Hydrodynamics (SPH). Computer Physics Communications, 187, 204-216.
[2] Parshikov, A. N., Medin, S. A., Loukashenko, I. I., & Milekhin, V. A. (2000). Improvements in SPH method by means of interparticle contact algorithm and analysis of perforation tests at moderate projectile velocities. International Journal of Impact Engineering, 24(8), 779-796.
[3] Bilotta, G., Hérault, A., Cappello, A., Ganci, G., & Del Negro, C. (2016). GPUSPH: a Smoothed Particle Hydrodynamics model for the thermal and rheological evolution of lava flows. Geological Society, London, Special Publications, 426(1), 387-408.