MFront: constitutive laws for everyone
by J.-M. Proix, EDF R&D / AMA
You want to easily develop a new mechanical behaviour ? MFront is for you.
It allows you to define any constitutive law using simple instructions, close to physical equations, without having to worry about solving methods: several algorithms are indeed offered. It is then very easy to use these laws directly into a calculation with Code_Aster.
What is it about ?
MFront is a constitutive law generator developed by the CEA in the framework of the fuel simulation software platform PLEIADES. It comes in the form of a software library that provides interfaces to several mechanical solvers among which Code_Aster, it also features a resolution tool for single material point (MTest).
Since October 2014, MFront is Open Source under the dual GPL and CECILL-A license. The website http://tfel.sourceforge.net was open for the occasion, it gives access to the source code, complete documentation including training materials and a tutorial, a bugtracker to allow feedback, bug reporting and feature request as well as a forum.
Coupling with Code_Aster
The coupling between Code_Aster and MFront is already operational and many tests have demonstrated its effectiveness. More than twenty laws are tested in Code_Aster including:
- the elastic-viscoplastic laws ; (MFRON01, [V1.03.126]) ;
- the laws for concrete and soil behaviour (MFRON02, [V1.03.127]) ;
- crystal plasticity laws (MFRON03, [V1.03.128]) ;
- laws with metallurgy (MFRON04, [V1.03.129]) ;
- laws with damage (MFRON05, [V1.03.130]).
These behaviours are used in Code_Aster via the Aster-MFront interface and compatible with 3D and 2D modeling, shells, THM and for the joint elements. Large strains may be used with GDEF_LOG Code_Aster’s kinematic hypothesis. In addition, MFront produces efficient code because the tensor operations are optimized as shown in benchmarks made against equivalent behaviours in Code_Aster.
Once your constitutive law is developed, it can be tested using MTest which can also can be used for parameters fitting using the ADAO module in SALOME.
![]() |
![]() |
CPU time | Time steps | Iterations | |
MFront | 4 m 57 s | 601 | 1810 |
Code_Aster | 8 m 58 s | 601 | 1811 |