A differentiation-enabled Fortran 95 compiler

A differentiation-enabled Fortran 95 compiler
复制标题

支持微分的 Fortran 95 编译器

DOI:
--
复制
发表时间:
2005
期刊:
TOMS
影响因子:
--
通讯作者:
J. Riehme
J. Riehme
中科院分区:
--
文献类型:
--
作者:
U. Naumann;J. Riehme

文献摘要

被引文献

相似文献

向量函数一阶导数的可用性对于大量数值算法的鲁棒性和效率至关重要。一个即将推出的新版本的差分启用NAGWare Fortran 95编译器描述,使用编程语言扩展和语义代码转换称为自动微分提供雅可比矩阵的数值程序与机器精度。我们描述了一个新的用户界面以及相关的算法细节。特别是,我们专注于源转换方法,生成局部最优的梯度代码的线性计算图中的顶点消除单分配。大量的测试表明,该方法优于目前的过载为基础的方法。各种案例研究说明了新的编译器功能的鲁棒性和方便性。
The availability of first derivatives of vector functions is crucial for the robustness and efficiency of a large number of numerical algorithms. An upcoming new version of the differentiation-enabled NAGWare Fortran 95 compiler is described that uses programming language extensions and a semantic code transformation known as automatic differentiation to provide Jacobians of numerical programs with machine accuracy. We describe a new user interface as well as the relevant algorithmic details. In particular, we focus on the source transformation approach that generates locally optimal gradient code for single assignments by vertex elimination in the linearized computational graph. Extensive tests show the superiority of this method over the current overloading-based approach. The robustness and convenience of the new compiler-feature is illustrated by various case studies.