Welcome to the official documentation for TFEL and MFront. This section provides a structured overview of all available resources, organized by topic and difficulty level.

This page provides several links to available documentations regarding TFEL and MFront, which are fairly detailed. Unfortunately, most of these materials are written in French. They also mostly refer to versions 2.0.x, and thus do not describe the latest available version.

For a new (English speaking) user, we would highly recommend:

For Spanish users, Jordi Alberich has written “A Spanish introduction to MFront and Salome-MECA”, which is available here.

MFront documentation

Tutorials & Examples

Learn by doing with hands-on examples.

Resource Description Language Difficulty
MFront Gallery Step-by-step implementations of classical behaviours. English ⭐⭐
Tutorial (French) Complete tutorial for beginners (Norton law example). French ⭐⭐
Spanish Tutorial Introduction to MFront and Salome-MECA. Spanish ⭐⭐
Behaviour Examples Official test cases (GitHub). Code ⭐⭐⭐

Courses

Talks

A github repository has been set up to store various documents describing TFEL and MFront usage. The talks of the first and second MFront Users are available there:

https://github.com/thelfer/tfel-doc

Material Knowledge Types

Resource Description
Material Properties How to define material properties (e.g., Young’s modulus, thermal conductivity).
Mechanical Behaviours In-depth guide to implementing mechanical behaviours.
Models Simple point-wise models (e.g., swelling for fuel performance codes).

Domain specific languages

Resource Description
Implicit Implicit integration for strain-based behaviours.

Bricks and Extensions

Resource Description
Behaviour Bricks Pre-defined bricks to simplify behaviour implementation.
StandardElastoViscoplasticity brick Brick allowing to implement a vast class of plastic and viscoplastic behaviours
StandardElasticity Brick used by behaviours based on an elastic part described by Hooke’s law
FiniteStrainSingleCrystal Brick dedicated to finite strain behaviour describing single crystals
DDIF2 brick Brick based the DDIF2 damage law used in various fuel performance code developed at CEA

Homogenization

Resource Description
Sachs Scheme Lower bound for polycrystals.
Taylor Scheme Upper bound for polycrystals.
Ponte Castaneda Non-linear elastic composites.
Masson Affine Formulation Affine formulation for viscoplastic polycrystals.
Biphasic Linear Homogenization Homogenization for biphasic media.
β-Rule Implementation of the β-rule for homogenization.

Post-Processing & Outputs

Resource Description
Post-Processings How to extract and analyze results.
Parameters Material parameters and their usage.

Interfaces

Interfaces dedicated to material properties

Interface Description Documentation
Generic interface For use with the MGIS project. Generic Interface
Generic parallel interface For use with the MGIS project. Generic Interface

Mechanical behaviours

TFEL/MFront supports multiple finite element solvers. Each interface has its own documentation.

Interface Description Documentation
Abaqus Commercial FEA solver (Standard/Explicit). Abaqus Interface
Code_Aster Open-source FEA solver developped by EDF. Aster Interface
Cast3M CEA’s finite element solver. Cast3M Interface
CalculiX Open-source FEA solver. CalculiX Interface
ANSYS Commercial FEA solver (APDL). ANSYS Interface
ZeBuLoN (Zmat) Zset’s finite element solver. Zmat Interface
Cyrano Fuel performance code (CEA). Cyrano Interface
ElmerFEM Open-source multiphysics solver. ElmerFEM Interface
AMITEX_FFTP FFT-based solver. AMITEX Interface
Generic interface For use with the MGIS project. Generic Interface

Advanced topics ⭐⭐/⭐⭐⭐

Resource Description
Theory Theoretical background for material behaviours.
mfront types Predefined aliases in MFront
The @BehaviourVariable keyword Calling behaviours inside behaviours
Unicode Unicode support in MFront
Glossary Definitions of all TFEL/MFront terms.
madnex Support of madnex files in MFront
mfront-query Command line queries about MFront files
mfront-doc A documentation generator from MFront files
The mfm tool A tool for querying entry points in MFront generated libraries
Compilation process Compilation process used by MFront
Fisher-Burmeister complementary function On the Fisher-Burmeister complementary function and its applications to multi-surface plasticity
Extending StandardElastoViscoPlasticity How to extend standard bricks with custom criteria.

Keywords associated with Domain-Specific Languages (DSL)

Note the those pages may be outdated or can not apply to your particular installation of TFEL/MFront. We highly recommend using the command line to retrieve the list of keywords associated with a DSL or the documentation associated with a keyword.

DSL Description Keywords Reference
Implicit Implicit integration for strain-based behaviours. Implicit Keywords
Default Generic DSL for custom integration algorithms. Default Keywords
Runge-Kutta Explicit integration for ODE-based behaviours. Runge-Kutta Keywords
IsotropicPlasticMisesFlow DSL for isotropic J₂ plasticity. Keywords

Testing & Validation ⭐⭐

Tools and guides for testing your implementations.

Resource Description
MTest TFEL’s testing tool for material point simulations.
MTest Nonlinear Constraints Advanced constraints in MTest.
TFEL-Check Validation suite for TFEL.
MTest Keywords Keywords reference for MTest.
mfm-test-generator Generation of integration tests for various solvers.

Python modules ⭐⭐

Resource Description
TFEL Python bindings for TFEL libraries.
MFront Python Python bindings for MFront.
MTest Python Python bindings for MTest.

Advanced Topics ⭐⭐/⭐⭐⭐

For experienced users.

TFEL libraries

Library Description
TFEL/Math Overview of the TFEL/Math library.
TFEL/Material Overview of the TFEL/Material library.
TFEL/PhysicalConstants Pre-defined physical constants in TFEL.
TFEL/MFrontDataBase Utilities to handle MFront generated libraries.
TFEL/System Overview of the TFEL/System library.
TFEL/Config Overview of the TFEL/Config library.

Usage of the TFEL libraries in C++ is described in this page.

Mathematical Foundations

Resource Description
Tensors Operations on 2nd and 4th order tensors (TFEL/Math).
Numerical Integration Numerical integration methods in TFEL.
Data Interpolation Interpolation techniques.

Doxygen documentation

The Doxygen documentation is available here.

Legend

External Resources

Additional materials (mostly outdated) and references.

Resource Description
TFEL/MFront Reference Manual (PDF) Complete reference manual (French).
Behaviours Manual (PDF) Guide to writing mechanical behaviours (French).
planestress.pdf How to handle plane stress in implicit schemes.
finitestrain.pdf Finite strain behaviours.
MTest User Guide (PDF) MTest documentation.
TFEL Doc Repository Additional talks, tutorials, and documents.

Bibliography

1.
Helfer, Thomas, Michel, Bruno, Proix, Jean-Michel, Salvo, Maxime, Sercombe, Jérôme and Casella, Michel. Introducing the open-source mfront code generator: Application to mechanical behaviours and material knowledge management within the PLEIADES fuel element modelling platform. Computers & Mathematics with Applications. 2015. DOI 10.1016/j.camwa.2015.06.027. Available from: http://www.sciencedirect.com/science/article/pii/S0898122115003132