TY - JOUR
T1 - MetaFEM
T2 - A generic FEM solver by meta-expressions
AU - Xie, Jiaxi
AU - Ehmann, Kornel
AU - Cao, Jian
N1 - Funding Information:
This work was funded by the Department of Defense Vannevar Bush Faculty Fellowship, USA N00014-19-1-2642 .
Publisher Copyright:
© 2022 Elsevier B.V.
PY - 2022/5/1
Y1 - 2022/5/1
N2 - Current multi-physics Finite Element Method (FEM) solvers are complex systems in terms of both their mathematical complexity and lines of code. This paper proposes a skeleton generic FEM solver, named MetaFEM, in total about 6,000 lines of Julia code, which translates generic input Partial Differential Equation (PDE) weak forms into corresponding GPU-accelerated simulations with a grammar similar to FEniCS or FreeFEM. Two novel approaches differentiate MetaFEM from the common solvers: (1) the FEM kernel is based on an original theory/algorithm which explicitly processes meta-expressions, as the name suggests, and (2) the symbolic engine is a rule-based Computer Algebra System (CAS), i.e., the equations are rewritten/derived according to a set of rewriting rules instead of going through completely fixed routines, supporting easy customization by developers. Example cases in thermal conduction, linear elasticity and incompressible flow are presented to demonstrate utility.
AB - Current multi-physics Finite Element Method (FEM) solvers are complex systems in terms of both their mathematical complexity and lines of code. This paper proposes a skeleton generic FEM solver, named MetaFEM, in total about 6,000 lines of Julia code, which translates generic input Partial Differential Equation (PDE) weak forms into corresponding GPU-accelerated simulations with a grammar similar to FEniCS or FreeFEM. Two novel approaches differentiate MetaFEM from the common solvers: (1) the FEM kernel is based on an original theory/algorithm which explicitly processes meta-expressions, as the name suggests, and (2) the symbolic engine is a rule-based Computer Algebra System (CAS), i.e., the equations are rewritten/derived according to a set of rewriting rules instead of going through completely fixed routines, supporting easy customization by developers. Example cases in thermal conduction, linear elasticity and incompressible flow are presented to demonstrate utility.
KW - Continuum mechanics
KW - Finite element
KW - MetaFEM
KW - Rewriting system
UR - http://www.scopus.com/inward/record.url?scp=85127773721&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85127773721&partnerID=8YFLogxK
U2 - 10.1016/j.cma.2022.114907
DO - 10.1016/j.cma.2022.114907
M3 - Article
AN - SCOPUS:85127773721
SN - 0374-2830
VL - 394
JO - Computer Methods in Applied Mechanics and Engineering
JF - Computer Methods in Applied Mechanics and Engineering
M1 - 114907
ER -