高层瞬态有限元程序伴随式的自动推导
数学软件
2013-10-17 v2
摘要
在本文中,我们展示了一种推导有限元模型离散伴随式和切线性模型的新技术。该技术比标准算法微分技术显著更高效且更自动化。该方法依赖于前向问题的高层符号表示。与直接在 Fortran 或 C++ 中开发模型不同,高层系统允许开发者以接近数学符号的方式表达待求解的变分问题。因此,这些系统具有一个关键优势:由于问题的数学结构得以保留,它们更易于进行自动化分析和操作。此处引入的框架实现于一个名为 dolfin-adjoint 的免费软件包中,该软件包基于 FEniCS 项目。我们的自动伴随式推导方法依赖于对模型时间结构的运行时注解,并利用 FEniCS 有限元形式编译器自动生成导出模型的底层代码。该方法仅需对一大类前向模型(包括复杂的时变非线性模型)进行微不足道的修改。伴随模型自动采用最优检查点方案以减轻非线性模型的存储需求,无需任何用户管理或干预。此外,切线性模型和伴随模型均天然支持并行工作,无需对 MPI 调用进行微分或解析 OpenMP 指令。该方法的通用性、适用性和效率已通过来自广泛科学应用的示例得到证明。
引用
@article{arxiv.1204.5577,
title = {Automated derivation of the adjoint of high-level transient finite element programs},
author = {Patrick E. Farrell and David A. Ham and Simon F. Funke and Marie E. Rognes},
journal= {arXiv preprint arXiv:1204.5577},
year = {2013}
}