The coupling library for partitioned multi-physics simulations.
preCICE is an open-source coupling library for partitioned multi-physics simulations, including, but not restricted to fluid-structure interaction and conjugate heat transfer simulations.
Partitioned means that preCICE couples existing programs/solvers capable of simulating a subpart of the complete physics involved in a simulation. This allows for the high flexibility that is needed to keep a decent time-to-solution for complex multi-physics scenarios.
The software offers convenient methods for transient equation coupling, communication, and data mapping.
Prepared for the next generation of multi-physics simulations
- Elegant library approach
- High-level API in C++, C, Fortran, Python, Matlab
- Arbitrary combinations of strong and weak interactions
- Arbitrary many solvers
- Robust quasi-Newton acceleration
- Radial-basis function data mapping
- Pure peer-to-peer approach
- Efficient also on a laptop
What our community is saying
University of the Free State, Department of Cardiothoracic Surgery, South Africa
Aerodynamics, Faculty of Aerospace Engineering, TU Delft, The Netherlands
—Vinh-Tan Nguyen, PhD
Institute of High Performance Computing, A*STAR, Singapore
Academic at heart, 100% free software
preCICE has been developed by three generations of doctoral candidates from the Chair of Scientific Computing at the Technical University of Munich and from the Institute for Parallel and Distributed Systems at the University of Stuttgart.
You can cite the preCICE library using the following paper. Please also consider citing the adapters you use. You can find the respective references in our literature guide.
Frequently asked questions
Yes, but it will be computationally expensive. preCICE is mainly designed to couple simulations that share ...Learn more
I wanted to ask if there are some additional guidelines on how to write good adapters for preCICE. I have the feeling that ...Learn more
Yes! Several people are doing this already. Even though there may be other ways to do one-way coupling, it may ...Learn more
Tried and tested by a global community
How does it look like?
In this tutorial case, we couple OpenFOAM with CalculiX for FSI. OpenFOAM starts and waits for CalculiX. After they both start,
they find each other and start performing a serial-implicit coupling with interface quasi-Newton acceleration.
These options are set in the preCICE configuration file