Algorithmic differentiation of a complex C++ code with underlying libraries. Algorithmic differentiation (AD) is a mathematical concept which evolved over the last decades to a very robust and well understood tool for computation of derivatives. It can be applied to mathematical algorithms, codes for numerical simulation, and whenever derivatives are needed. In this paper we report on the algorithmic differentiation of the discontinuous Galerkin solver padge, a large and complex code written in C++ with underlying external libraries. The reports on successful application of AD to large scale codes are rare in literature and up to now this is not state of the art. Most of the codes, which are differentiated nowadays, are written in C or Fortran. The padge code was differentiated with the operator overloading tool dco/c++ in forward as well as reverse mode. The differentiated code is validated and runs in the expected time margins of AD
Keywords for this software
References in zbMATH (referenced in 3 articles )
Showing results 1 to 3 of 3.
- Hück, Alexander; Bischof, Christian; Sagebaum, Max; Gauger, Nicolas R.; Jurgelucks, Benjamin; Larour, Eric; Perez, Gilberto: A usability case study of algorithmic differentiation tools on the ISSM ice sheet model (2018)
- Jurgelucks, Benjamin; Claes, Leander; Walther, Andrea; Henning, Bernd: Optimization of triple-ring electrodes on piezoceramic transducers using algorithmic differentiation (2018)
- Papoutsis-Kiachagias, E. M.; Giannakoglou, K. C.: Continuous adjoint methods for turbulent flows, applied to shape and topology optimization: industrial applications (2016)