TFEL is a collaborative development of CEA and EDF.
MFront is a code generator which translates a set of
closely related domain specific languages into plain C++ on top of the TFEL
library. Those languages cover three kinds of material knowledge:
MFront implementations are competitive with native
implementations available in the Cast3M,
Code-Aster, Abaqus Standard and
Cyrano3 solvers.A set of interfaces are provided for various solvers:
Cast3M
finite element solver. This interface is described here.Code_Aster
finite element solver. This interface is described hereAbaqus Standard
finite element solver. This interface is described here.Abaqus Explicit
finite element solver. This interface is described here.CalculiX
finite element solver. This interface is described here.ANSYS Mechanical APDL
finite element solver. This interface is described here.ZeBuLoN
finite element solver. This interface is described here.TMFFT and the AMITEX_FFTP
Fast Fourier Transform solvers developed internally at CEA. Note that AMITEX_FFTP
is distributed under a free license for research and education purposes.
Those solvers reuse the interface developed for the Cast3M finite element
solver.ElmerFEM
multiphysics solver. This interface is described here.For material properties, various interfaces are also provided and
cover the following languages: C, C++,
python, fortran, etc.
New to TFEL/MFront? Start here!
| Resource | Description | Difficulty |
|---|---|---|
| Getting Started | Step-by-step guide for beginners. | ⭐ |
| Installation Guide | How to install TFEL/MFront on Linux, Windows, macOS, and FreeBSD. | ⭐/⭐⭐ |
| Documentation | List of all available documentation. | ⭐/⭐⭐/⭐⭐⭐ |
| FAQ | Frequently asked questions and troubleshooting. | ⭐ |
For developers and contributors.
| Resource | Description |
|---|---|
| Contributing | How to contribute to TFEL/MFront. |
| Compiling MFront Shared Libraries | Guide for building shared libraries. |
| CMake Options | Advanced CMake configuration. |
| Coverity Scan | Static analysis for TFEL. |
| Packages | Creating binary packages for TFEL. |
| TFEL System | Overview of TFEL’s architecture. |
Stay up-to-date with the latest changes.
| Version | Release Notes |
|---|---|
| 5.x | v5.2 |
| 5.1 | v5.1 |
| 5.0 | v5.0 |
| 4.x | v4.2 |
| 3.x | v3.4 |
| All Versions | Release Notes Archive |
Note: For a consolidated changelog, see CHANGELOG.md.
Get help and connect with the TFEL/MFront community.
| Resource | Description |
|---|---|
| GitHub Discussions | Ask questions, share ideas. |
| GitHub Issues | Report bugs or request features. |
| Official contact for support. | |
| Associated Projects | Projects using or extending TFEL/MFront. |
| Publications | Scientific papers and references. |
| News | Latest news and announcements. |
Note: This documentation is a work in progress. Contributions are welcome! See Contributing for details.
TFEL versions prior to 0.1 were released under both the
LGPL and the CECILL-B licences. A copy of those licences is included in
the distributions of TFEL.
TFEL versions 1.x were developed by CEA within the
PLEIADES project. Since svn revision 584, TFEL was part of the
PLEIADES project.
Starting from versions 2.x, TFEL has been publicly released under either the GPL or the CECILL-A licence. A copy of those licences is delivered with the sources of TFEL. CEA or EDF may also distribute this project under specific licensing conditions. Since 2023, the linking exception clause was added to the GPL licence.
Copyright (C) 2006-2013 CEA/DEN. All rights reserved. Copyright (C) 2014-2025 CEA/DEN, EDF R&D. All rights reserved.