高级瞬态有限元程序伴随项的自动推导
Automated derivation of the adjoint of high-level transient finite element programs
摘要:
在本文中,我们展示了一种新的技术,推导出离散的伴随和切线线性模型的有限元模型。该技术是显着更有效和自动化比标准的算法微分技术。该方法依赖于一个高层次的符号表示的前向问题。与直接在Fortran或C++中开发模型相反,高级系统允许开发人员以近似数学的符号来表达要解决的变分问题。因此,这些系统有一个关键的优势:由于保留了问题的数学结构,它们更适合自动分析和操作。这里介绍的框架是在一个免费提供的软件包命名为dolfin-adjoint,基于FEniCS项目。我们的自动伴随推导方法依赖于模型时间结构的运行时注释,并使用FEniCS有限元形式编译器自动生成推导模型的低级代码。该方法只需要对一大类前向模型(包括复杂的时变非线性模型)进行微小的改变。伴随模型自动采用最佳检查点方案来减轻非线性模型的存储需求,而无需任何用户管理或干预。此外,切线线性模型和伴随模型自然地并行工作,而不需要通过调用MPI或解析OpenMP指令来区分。的一般性,适用性和效率的方法证明了从广泛的科学应用的例子。
英文摘要:
In this paper we demonstrate a new technique for deriving discrete adjoint and tangent linear models of finite element models. The technique is significantly more efficient and automatic than standard algorithmic differentiation techniques. The approach relies on a high-level symbolic representation of the forward problem. In contrast to developing a model directly in Fortran or C++, high-level systems allow the developer to express the variational problems to be solved in near-mathematical notation. As such, these systems have a key advantage: since the mathematical structure of the problem is preserved, they are more amenable to automated analysis and manipulation. The framework introduced here is implemented in a freely available software package named dolfin-adjoint, based on the FEniCS Project. Our approach to automated adjoint derivation relies on run-time annotation of the temporal structure of the model, and employs the FEniCS finite element form compiler to automatically generate the low-level code for the derived models. The approach requires only trivial changes to a large class of forward models, including complicated time-dependent nonlinear models. The adjoint model automatically employs optimal checkpointing schemes to mitigate storage requirements for nonlinear models, without any user management or intervention. Furthermore, both the tangent linear and adjoint models naturally work in parallel, without any need to differentiate through calls to MPI or to parse OpenMP directives. The generality, applicability and efficiency of the approach are demonstrated with examples from a wide range of scientific applications.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。