Welcome to preCICE

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.

visualisation of how preCICE couples different solvers

Prepared for the next generation of multi-physics simulations

non-invasive integration
Minimally invasive integration
  • Elegant library approach
  • High-level API in C++, C, Fortran, Python, Matlab
Learn more  
Coupling of programs
Coupling of arbitrary many programs
  • Arbitrary combinations of strong and weak interactions
  • Arbitrary many solvers
Learn more  
numerical methods
State-of-the-art numerical methods
  • Robust quasi-Newton acceleration
  • Radial-basis function data mapping
Learn more  
scalability
Scalability up to complete supercomputers
  • Pure peer-to-peer approach
  • Support of heterogenous hardware (CPU/GPU)
  • Efficient also on a laptop
Learn more  

Ready-to-use with your favourite open-source solver

Several free and proprietary codes are currently coupled with preCICE. Pick one of our official adapters below or check out our community projects.

What our community is saying

We are using preCICE as it can handle numerical simulations of large sizes with ease as opposed to previous in-house couplers.

simulation biomechanics

—Kyle Davis

University of the Free State, Department of Cardiothoracic Surgery, South Africa

The large number of coupling functionalities in preCICE gives the user the opportunity to build advanced and scalable simulations with ease.

simulation aerodynamics

—Derek Risseeuw

Aerodynamics, Faculty of Aerospace Engineering, TU Delft, The Netherlands

With preCICE, we could realize an efficient CPU-GPU coupling of our in-house lattice Boltzmann solver and OpenFOAM.

simulation cpu-gpu

—Marta Camps Santasmasas

Aerodynamics research group, MACE, The University of Manchester, UK

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. We develop everything openly on GitHub, the preCICE library is licensed under LGPLv3, and every other component is developed under compatible free software licenses.

You can cite the preCICE library using the following paper. Please also consider citing the adapters you use, as well as the preCICE Distribution for reproducibility. You can find the respective references in our literature guide.

preCICE v2: A sustainable and user-friendly coupling library

Gerasimos Chourdakis, Kyle Davis, Benjamin Rodenberg, Miriam Schulte, Frédéric Simonis, Benjamin Uekermann et al., 2022. In Open Research Europe, 2:51.

Publisher's Site   Download BibTeX  
Citations of preCICE v1 paper (332)   Literature guide  

Join the community!

We develop everything in the open, with continuous feedback by a vivid community. Be part of it:

  • Ask for help and help others in the preCICE forum and register to receive news.
  • Directly edit the documentation. We review and help - nothing can go wrong.
  • Report issues on GitHub and help us solve them for everyone.
  • Contribute code and simulation examples - we help you with guidelines, tools, and reviews.
  • Meet the community in one of the preCICE workshops and conference sessions.

You support preCICE – preCICE supports you

As the developers of preCICE, we enjoy supporting our academic and industry users, but due to the growing demand, we are not able to service all support requests any more. We are introducing preCICE support as a way to contribute to sustainable open-source software development and to ensure preCICE is developed and maintained in the future. Supporting preCICE comes with several benefits:

  • Increased success rate for your research proposal (include preCICE as a partner, software provider, or sub-contractor)
  • Priority support and direct access to the preCICE developers
  • Private, on-site support and bespoke training

We offer different levels of support for industry and academia.

precice support program logo

Frequently asked questions (FAQ)

Can preCICE be used for volume coupling?

Yes, but it will be computationally expensive. preCICE is mainly designed to couple simulations that share ...

Learn more  
What are best practices to write a new adapter?

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  
Can preCICE be used for one-way coupling?

Yes! Several people are doing this already. Even though there may be other ways to do one-way coupling, it may ...

Learn more  

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 precice-config.xml.

code animation