The lifex library version 2.0
Michele Bucelli
TL;DR
lifex addresses scalable finite element simulations of multiphysics and multiscale problems. The 2.0 release introduces non-matching mesh data transfer via radial basis function interpolation, faster point localization with R-tree based DoF locators, and expanded support for 1D/2D and mixed-dimensional problems, along with a streamlined checkpointing and IO system. It also extends core features to cardiac-related modules and provides new examples (e.g., InterfaceCoupling2D3D, ExampleRBFInterpolation) to demonstrate the workflow and scalability. Overall, these updates enhance usability, robustness, and performance for large-scale multiphysics simulations and heterogeneous domain coupling.
Abstract
This article presents updates to lifex [Africa, SoftwareX (2022)], a C++ library for high-performance finite element simulations of multiphysics, multiscale and multidomain problems. In this release, we introduce an additional intergrid transfer method for non-matching multiphysics coupling on the same domain, significantly optimize nearest-neighbor point searches and interface coupling utilities, extend the support for 2D and mixed-dimensional problems, and provide improved facilities for input/output and simulation serialization and restart. These advancements also propagate to the previously released modules of lifex specifically designed for cardiac modeling and simulation, namely lifex-fiber [Africa et al., BMC Bioinformatics (2023)], lifex-ep [Africa et al., BMC Bioinformatics (2023)] and lifex-cfd [Africa et al., Computer Physics Communications (2024)]. The changes introduced in this release aim at consolidating lifex's position as a valuable and versatile tool for the simulation of multiphysics systems.
