Algorithmic Differentiation (AD)

Special topic offered by Prof. Naumann in Summer Term 2017 as part of MSc in Mathematical Modelling and Scientific Computing at Oxford University's Mathematical Institute

Why Take This Course?

Over recent years AD (and its adjoint mode in particular) has been gaining popularity in almost all subdomains of Computational Science, Engineering and Finance. It is a crucial ingredient of the toolbox that every computational mathematician should have access to. A growing number of top-level entry positions advertised by universities / research institutes, leading industry or tier-1 investment banks ask explicitly for expertise in AD.   


basic numerical analysis; working knowledge of some programming language


first and higher derivative models and their implementation; use of software tools for AD; outlook to advanced topics in AD


slides, example code, AD software tool dco incl. documentation

Further Reading

U. Naumann: The Art of Differentiating Computer Programs. An Introduction to Algorithmic Differentiation. SIAM (2012).


May 2, 2017

May 9, 2017

May 16, 2017 (moved to May 17)

May 23, 2017

  • code
  • solutions to exercises

May 30, 2017

  • code
  • solutions to exercises

June 6, 2017

  • code
  • solutions to exercises