experimental preCICE-adapter for the open source computing platform FEniCS
Note: This adapter is currently purely expermental and limited in functionality. If you are interested in using it or you want to contribute, feel free to contact us via the preCICE mailing list.
currently only supports 2D simulations in FEniCS
This adapter was developed by Benjamin Rüth during his research stay at Lund University in the group for Numerical Analysis in close collaboration with Peter Meisrimel.
Make sure to install
- preCICE (https://github.com/precice/precice/wiki)
- python3 (this adapter supports only python3)
- the python language bindings for preCICE (https://github.com/precice/precice/blob/develop/src/precice/bindings/python/README.md)
- fenics (https://fenicsproject.org/)
- and scipy (
pip3 install scipy
)
Run python3 setup.py install
from your shell. Use sudo
if necessary.
As a first test, try to import the adapter via python3 -c "import fenicsadapter"
.
You can run the other tests via python3 setup.py test
.
Add from fenicsadapter import Coupling
in your FEniCS code. Please refer to the examples in the tutorials repository for usage examples.
The adapter is configured via a json
configuration file. For example configuration files and usage refer to the tutorials (fenics-fenics).
To create and install the fenicsadapter
python package the following instructions were used: https://python-packaging.readthedocs.io/en/latest/index.html.
preCICE is an academic project, developed at the Technical University of Munich and at the University of Stuttgart. If you use preCICE, please cite us:
H.-J. Bungartz, F. Lindner, B. Gatzhammer, M. Mehl, K. Scheufele, A. Shukaev, and B. Uekermann: preCICE - A Fully Parallel Library for Multi-Physics Surface Coupling. Computers and Fluids, 141, 250–258, 2016.
If you are using FEniCS, please also consider the information on https://fenicsproject.org/citing/.
This offering is not approved or endorsed by the FEniCS Project, producer and distributor of the FEniCS software via https://fenicsproject.org/.