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 5,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.
翻译:目前的多物理学有限元素法(FEM)解答器在数学复杂性和代码线方面都是复杂的系统。本文件提议了一个名为MetaFEM的骨架通用FEM解答器,共约5,000行Julia代码,该解答器将通用输入部分差异方程式(PDE)弱式转换成相应的GPU加速模拟器,其语法类似于FENICS或FreeFEM。两种新办法将MetaFEM与通用解答器区别开来:(1) FEM内核基于原始理论/方程式,如名称所示,明确处理元表达法;(2) 符号引擎是一种基于规则的计算机代数系统(CAS),即,这些方程式按照一套重写规则改写/改写,而不是通过完全固定的例行程序,支持开发者的简单定制。在热导、线性弹性和压缩性流中,提出了一些实例,以证明其实用性。