The coupling library for
partitioned multi-physics.
preCICE is an open-source coupling library and ecosystem for general partitioned multi-physics and multi-scale simulations, including surface and volume coupling. 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 coupled problems. The software offers convenient methods for transient equation coupling, communication, time interpolation, and data mapping.
Prepared for the next generation of multi-physics simulations
Minimally invasive integration
- Elegant library approach
- High-level API in C++, C, Fortran, Python, Matlab
Coupling of arbitrary many programs
- Arbitrary combinations of strong and weak interactions
- Arbitrary many solvers
State-of-the-art numerical methods
- Robust quasi-Newton acceleration
- Radial-basis function data mapping
Scalability up to complete supercomputers
- Pure peer-to-peer approach
- Support of heterogenous hardware (CPU/GPU)
- Efficient also on a laptop
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
Kyle Davis
University of the Free State, South Africa
Derek Risseeuw
TU Delft, The Netherlands
Marta Camps Santasmasas
The University of Manchester, UK
Academic at heart, 100% free software
Academic at heart
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. More information.
100% free software
Licensed under LGPL-3.0, preCICE ensures you retain control of your simulation stack. No license fees, no vendor lock-in, just pure open innovation. You can cite the preCICE library using the paper below. Find more references in our 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.
- Subscribe to our quarterly newsletter including:
- New publications
- New features
- New adapters, bindings, tools, tutorials, and more
- Upcoming events and news from the community
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 anymore. 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.
Support preCICE — see optionsFrequently asked questions (FAQ)
Can preCICE be used for volume coupling?
Yes. In preCICE v3 there have been many changes and improvements regarding large meshes. The following has ...
Learn moreWhat are best practices to write a new adapter?
There are guidelines for adapters, as well as for application cases, as part of the ecosystem standardization ...
Learn moreCan 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 moreTried and tested by a global community
Through the community-driven development approach, preCICE has become one of the leading coupling libraries for multi-physics simulations both in academia and industry. The wide variety of application fields ranges from aerodynamics to astronautics, automotive manufacturing, wind energy, biomechanics, biomimetics, marine engineering, nuclear fusion, reactor safety, geophysical systems, and many more.
Oden Institute
USA
CIRA
Italy
Fluid Mechanics
Germany
Applied Mechanics
Germany
Scientific Computing
Germany
University of the Free State
South Africa
A*STAR
Singapore
NRG
Netherlands
Helicopter Technology
Germany
FNB
Germany
IWS
Germany
Wind Energy
Netherlands
FAST
Germany
Noise & Vibration
Belgium
Aerodynamics
United Kingdom
MTU Aero Engines
Germany
STS
Germany
Aerodynamics
Netherlands
Heat and Mass Transfer TC
Spain
IFL
Germany
DHCAE
Germany
EuroCFD
France
Global Research for Safety
Germany
MPI-IPP
Germany
CFD & FSI
United Kingdom
Bitron
Italy
AIT
Austria
Fluid Mechanics
Luxembourg
University of Split
Croatia
IIT
India
Nuclear Engineering
Sweden
IAG
Germany
Pprime Institute
France
Corvid Technologies
USA
Space Transportation System Laboratory
Japan
Aeroacoustics and Flow Physics
USA
ATA Engineering
USA
Korea Atomic Energy Research Institute
South Korea
Energy Technology
Netherlands
Computational Fluid Dynamics
United Kingdom
Mechanical and Materials Engineering
Ireland
High Performance Computing
Germany
Alfred Wegener Institute
Germany
Atmospheric Chemistry and Climate Modeling
China
Fluid Mechanics
Germany
Propellant Management
Germany
Paul Scherrer Institut
Switzerland
Model-Based Development
Germany
Ben-Gurion University
Israel
Leibniz Institute for Crystal Growth
Germany
Parallel CFD & Optimization Unit
Greece
Leonardo Labs
Italy
Structural Analysis
Germany
IFPEN
France
Ex Mente Technologies
South Africa
Mintek
South Africa
CardioVascular Biomechanics
Netherlands
Lawrence Livermore National Laboratory
USA
Fusion and Fission Energy
USA
Marine Science and Engineering
China
GeoEnergy Engineering
United Kingdom
Medical Sciences Division
United Kingdom
Computational Electromagnetics
Germany
Structural Mechanics and Dynamics in Aerospace Engineering
Germany
Fixed and Rotary-wing Aircraft Multidisciplinary Eng.
Italy
Rotorcraft Aerodynamic
Italy
Numerical Analysis
Netherlands
How does it look like?
In this tutorial, we couple the CFD code OpenFOAM with a C++ rigid body solver for fluid-structure interaction, using a serial-explicit coupling, as defined in the preCICE configuration file. OpenFOAM loads a ready-to-use adapter, while the C++ code uses the preCICE API. OpenFOAM starts and waits for the other code. After they both start, they find each other and perform a black-box coupled simulation.