The MFEM/MGIS project

The aim of the MFEM/MGIS project is to provide a C++ library to build advanced mechanical simulation based on MFront behaviours with MFEM . The MGIS project is used to interface MFront behaviours .

The MFEM-MGIS project, aims at efficiently use supercomputers in order to describe coupled multiphysics phenomena with a particular focus on thermo-mechanics. This open-source library is based on several components as prerequisites:

  • the mfem (Modular Finite Element Methods) library [AAB+20],

  • the MGIS (MFront Generic Interface Support) library [HBF+20],

  • the MFront code generator.

Thanks to the features embedded within MGIS and MFront and thanks to specific developments, MFEM-MGIS adds several mechanical features compared to a pure MFEM approach.

The library tackles some peculiarities of nonlinear mechanics. In particular, the support of complex constitutive laws and the management of advanced boundary conditions. It provides a high level of abstraction based focused on the physics to be treated.

_images/mfem-mgis-illustration.png

Statement of need

The solid mechanic examples in MFEM are mostly limited to simple constitutive equations such as elasticity and hyperelasticity without internal state variables. This is insufficient to address many engineering studies and in particular complex nuclear fuel simulations.

The aim of the MFEM/MGIS project is to combine MFEM with the MFrontGenericInterfaceSupport (MGIS) project, an open-source C++ library that handles all the kinds of behaviours supported by the open-source MFront code generator.

In the field of nonlinear mechanics, this encompasses arbitrary complex behaviours that can describe damage, plasticity, and viscoplasticity in both small or finite strain analyses. Generalized behaviours such as variational approaches to fracture are supported by MFEM/MGIS.

The MGIS data structures are used to add support for partial quadrature functions to MFEM, a feature needed to store internal state variables on each material.

State of the field

Many open-source thermomechanical solvers allow handling complex mechanical behaviours. code_aster, MoFEM, CalculiX are examples of state of the art solvers which have an interface with MFront.

However, those solvers lack many features provided by MFEM that the authors found interesting to explore in the field of solid mechanics (see the above section for a detailed list). The authors also found interesting to take a platform designed from the start for high performance computing and adapt it to engineering needs and evaluate the resulting performances.

References

[AAB+20]

Robert Anderson, Julian Andrej, Andrew Barker, Jamie Bramwell, Jean-Sylvain Camier, Jakub Cerveny, Veselin Dobrev, Yohann Dudouit, Aaron Fisher, Tzanio Kolev, and et al. Mfem: a modular finite element methods library. Computers & Mathematics with Applications, Jul 2020. doi:10.1016/j.camwa.2020.06.009.

[HBM01]

Thomas Helfer, Syriac Bejaoui, and Bruno Michel. Licos, a fuel performance code for innovative fuel elements or experimental devices design. Nuclear Engineering and Design, 294:117–136, 2015-12-01. URL: http://www.sciencedirect.com/science/article/pii/S0029549315003842 (visited on 2015-11-30), doi:10.1016/j.nucengdes.2015.07.070.

[HBF+20]

Thomas Helfer, Jeremy Bleyer, Tero Frondelius, Ivan Yashchuk, Thomas Nagel, and Dmitri Naumov. The `MFrontGenericInterfaceSupport` project. Journal of Open Source Software, 5(48):2003, 2020. Publisher: The Open Journal. URL: https://doi.org/10.21105/joss.02003, doi:10.21105/joss.02003.

[MAL02]

C. Miehe, N. Apel, and M. Lambrecht. Anisotropic additive plasticity in the logarithmic strain space: modular kinematic formulation and implementation based on incremental minimization principles for standard materials. Computer Methods in Applied Mechanics and Engineering, 191(47–48):5383–5425, November 2002. URL: http://www.sciencedirect.com/science/article/pii/S0045782502004383, doi:10.1016/S0045-7825(02)00438-3.