Concepedia

TLDR

ADOL‑C is a C++ package that enables efficient evaluation of first and higher derivatives of vector functions defined in C/C++ programs, callable from any language linked with C. It computes derivative matrices by columns or rows, provides specialized routines for ODE solution curves to evaluate Taylor coefficient vectors and Jacobians, and accesses data sequentially so that large calculations are automatically paged to external files. The resulting derivative routines can be invoked from C/C++, Fortran, or other linked languages, delivering accurate derivative vectors with negligible truncation error and only a modest increase in runtime.

Abstract

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. 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.

References

YearCitations

Page 1