Algorithm 755: ADOL-C: A package for the automatic differentiation of algorithms written in C/C++

被引:364
作者
Griewank, A [1 ]
Juedes, D [1 ]
Utke, J [1 ]
机构
[1] OHIO UNIV, DEPT COMP SCI, ATHENS, OH 45701 USA
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 1996年 / 22卷 / 02期
关键词
automatic differentiation; chain rule; forward mode; gradients; Hessians; overloading; reverse mode; Taylor coefficients;
D O I
10.1145/229473.229474
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The C++ package ADOL-C described here facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run-time and randomly accessed memory of the given function evaluation program. Derivative matrices are obtained by columns or rows. For solution curves defined by ordinary differential equations, special routines are provided that evaluate the Taylor coefficient vectors and their Jacobians with respect to the current state vector. The derivative calculations involve a possibly substantial (but always predictable) amount of data that are accessed strictly sequentially and are therefore automatically paged out to external files.
引用
收藏
页码:131 / 167
页数:37
相关论文
共 21 条