Lecture / Tutorial: Introduction to Algorithmic Differentiation
Contents
- Welcome
- Derivative code by overloading
- univariate scalar differentiable programs
- motivation. essential calculus. finite differences
- first derivative code
- second and higher derivative code
- multivariate vector-valued differentiable programs
- motivation. essential calculus. finite differences
- first-order tangent code
- second- and higher-order tangent code
- first-order adjoint
- second- and higher-order adjoint
- Exploitation of sparsity
- Derivative code by hand
- tangent code
- adjoint straight-line code
- adjoint intra- and interprocedural code
- Derivative code by automatic source transformation
- overview and lexical analysis
- syntax analysis
- attribute grammars and syntax-directed translation