Readme File | Software | Documentation Abstract If you need to calculate derivatives of complicated functions and find yourself either taking finite differences or writing the derivatives algebraically and then translating the expressions into source code, you may want to consider using automatic differentiation (AD). AD exploits the classic theorems of differential calculus to propagate information about derivatives through arithmetic operations. In this way, derivatives of a function can be calculated using the same program that calculates the function itself. Because no approximations are made, derivatives are calculated with machine accuracy, avoiding the errors inherent in finite differences, an especially important consideration when higher order derivatives are required. MXYZPTLK is a library of C++ classes -- or "objects" -- for performing automatic differentiation. Originally written at Fermilab in 1989, with a "User's Guide" provided in 1990, it has undergone refinements and improvements over the last six years. It was originally announced outside Fermilab in Automatic Differentiation of Algorithms: Theory, Implementation, and Application (SIAM Press, 1991) and has been used in a variety of contexts. Send questions or comments to mxyzptlk_support@fnal.gov.
|