Getting Started with ADOL-C

The C++ package ADOL-C described in this paper facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The numerical values of derivative vectors are obtained free of truncation errors at mostly a small multiple of the run time and a fix small multiple random access memory required by the given function evaluation program. Derivative matrices are obtained by columns, by rows or in sparse format. This tutorial describes the source code modification required for the application of ADOL-C, the most frequently used drivers to evaluate derivatives and some recent developments.

[1]  Johannes P. Schlöder,et al.  An efficient multiple shooting based reduced SQP strategy for large-scale dynamic process optimization: Part II: Software aspects and applications , 2003, Comput. Chem. Eng..

[2]  Martin Bücker,et al.  Automatic differentiation : applications, theory, and implementations , 2006 .

[3]  Alex Pothen,et al.  What Color Is Your Jacobian? Graph Coloring for Computing Derivatives , 2005, SIAM Rev..

[4]  Andreas Griewank,et al.  Algorithm 799: revolve: an implementation of checkpointing for the reverse or adjoint mode of computational differentiation , 2000, TOMS.

[5]  Andreas Griewank,et al.  Evaluating higher derivative tensors by forward propagation of univariate Taylor series , 2000, Math. Comput..

[6]  Andreas Griewank,et al.  Evaluating derivatives - principles and techniques of algorithmic differentiation, Second Edition , 2000, Frontiers in applied mathematics.

[7]  Alex Pothen,et al.  New Acyclic and Star Coloring Algorithms with Application to Computing Hessians , 2007, SIAM J. Sci. Comput..

[8]  B. Christianson Reverse accumulation and attractive fixed points , 1994 .

[9]  Philipp Stumm,et al.  New Algorithms for Optimal Online Checkpointing , 2010, SIAM J. Sci. Comput..

[10]  Michael B. Steer,et al.  Streamlined Circuit Device Model Development with fREEDAR® ãnd ADOL-C , 2006 .

[11]  Qiqi Wang,et al.  Minimal Repetition Dynamic Checkpointing Algorithm for Unsteady Adjoint Calculation , 2009, SIAM J. Sci. Comput..