Two-way coupling between DualSPHysics and Project Chrono
Fluid–structure interaction · Multibody dynamics · SPH–rigid body coupling
DSPHChronoLib is a C++ library that enables two-way interaction between DualSPHysics (SPH fluid solver) and Project Chrono (multibody dynamics engine).
It synchronizes forces, motion, and state data between both solvers, enabling:
- Fluid–structure interaction (FSI)
- Multibody systems interacting with SPH fluids
- Mechanisms and articulated bodies driven by hydrodynamics
The library is designed to be modular, lightweight, and easy to integrate into existing DualSPHysics workflows.
- 🔄 Two-way coupling between SPH fluid dynamics and multibody rigid dynamics
- 🧩 Modular and low-coupling architecture
- 🌊 Fluid–structure interaction support
- ⚙️ Compatible with Chrono v9 and DualSPHysics ≥ v5.4
- 🐧🪟 Cross-platform support (Windows & Linux)
- All binaries and patched source files must belong to the same DualSPHysics version.
- Do not mix
bin/orsrc/lib/folders from different DualSPHysics versions. - If DualSPHysics source files are patched, this must be done before compiling DualSPHysics.
- Build and integration instructions are in BUILD.md.
DSPHChronoLib/
├─ Source/ # DSPHChronoLib source code and CMake project
│ ├─ ChronoChanges/ # Chrono source replacements required by the coupling
│ └─ CMakeLists.txt
├─ BUILD.md
├─ LICENSE
└─ README.md
- CMake ≥ 3.24.0
- C++ compiler toolchain
- Eigen ≥ 3.4.0 (3.4.0 tested)
- Project Chrono v9
- DualSPHysics ≥ 5.4
Detailed build instructions are provided in BUILD.md.
If you use DSPHChronoLib in your research, please cite:
Martínez-Estévez, I., Domínguez, J. M., Tagliafierro, B., Canelas, R. B., García-Feal, O., Crespo, A. J. C., & Gómez-Gesteira, M. (2023). Coupling of an SPH-based solver with a multiphysics library. Computer Physics Communications, 283, 108581. https://doi.org/10.1016/j.cpc.2022.108581
Martínez-Estévez, I., Tagliafierro, B., El Rahi, J., Domínguez, J. M., Crespo, A. J. C., Troch, P., & Gómez-Gesteira, M. (2023). Coupling an SPH-based solver with an FEA structural solver to simulate free surface flows interacting with flexible structures. Computer Methods in Applied Mechanics and Engineering, 410, 115989. https://doi.org/10.1016/j.cma.2023.115989
Contributions are welcome!
You can help by:
- Reporting issues
- Proposing improvements
- Enhancing documentation
- Submitting pull requests
- Fork the repository
- Create a feature or fix branch
- Follow the existing code style and structure
- Provide clear commit messages
- Submit a pull request with a concise description
By contributing, you agree that your contributions will be released under the same license as this project.
This project follows the licensing terms of DualSPHysics and Project Chrono.
See LICENSE for details. GNU Lesser General Public License v2.1.
© 2025 Ivan Martinez-Estevez
EPHYSLAB Environmental Physics Laboratory, Universidade de Vigo
This software is provided “as is,” without warranty of any kind. See the license for details.
