Efficient operator overloading AD for solving nonlinear PDEs
Faculty of Sciences. Mathematics and Computer Science
Berlin :Springer, 2002
3rd International Conference on Automatic Differentiation, June, 2000, Côte d'Azur, France
By employing automatic differentiation (AD), solvers for nonlinear systems of PDEs can be developed which relieve the user from the extra work of linearising a nonlinear PDE system and at the same time improve performance. This is achieved by extending common AD techniques using operator overloading to take advantage of the fact that in a FEM/FD/FV framework, a limited number of functions and their partial derivatives with respect to the unknowns have to be evaluated many times. The extension is implemented in C++ for both forward and reverse modes, and compared to hand coded evaluation of derivatives and two state-of-the-art AD implementations, ADIC  and ADOL-C [242, 243]. An application is discussed which dramatically reduces the cost of solver development.