ADiGator

Algorithm 984: ADiGator, a toolbox for the algorithmic differentiation of mathematical functions in MATLAB using source transformation via operator overloading. A toolbox called ADiGator is described for algorithmically differentiating mathematical functions in MATLAB. ADiGator performs source transformation via operator overloading using forward mode algorithmic differentiation and produces a file that can be evaluated to obtain the derivative of the original function at a numeric value of the input. A convenient by-product of the file generation is the sparsity pattern of the derivative function. Moreover, because both the input and output to the algorithm are source codes, the algorithm may be applied recursively to generate derivatives of any order. A key component of the algorithm is its ability to statically exploit derivative sparsity at the MATLAB operation level to improve runtime performance. The algorithm is applied to four different classes of example problems and is shown to produce runtime efficient derivative code. Due to the static nature of the approach, the algorithm is well suited and intended for use with problems requiring many repeated derivative computations


References in zbMATH (referenced in 13 articles )

Showing results 1 to 13 of 13.
Sorted by year (citations)

  1. Iavernaro, F.; Mazzia, F.; Mukhametzhanov, M. S.; Sergeyev, Ya. D.: Computation of higher order Lie derivatives on the infinity computer (2021)
  2. Agamawi, Yunus M.; Rao, Anil V.: CGPOPS: a C++ software for solving multiple-phase optimal control problems using adaptive Gaussian quadrature collocation and sparse nonlinear programming (2020)
  3. Jonasson, Kristjan; Sigurdsson, Sven; Yngvason, Hordur Freyr; Ragnarsson, Petur Orri; Melsted, Pall: Algorithm 1005: Fortran subroutines for reverse mode algorithmic differentiation of BLAS matrix operations (2020)
  4. Milz, Johannes; Ulbrich, Michael: An approximation scheme for distributionally robust nonlinear optimization (2020)
  5. Gao, Wenbo; Goldfarb, Donald: Block BFGS methods (2018)
  6. Mazzia, Francesca; Sestini, Alessandra: On a class of conjugate symplectic Hermite-Obreshkov one-step methods with continuous spline extension (2018)
  7. Moye, Matthew J.; Diekman, Casey O.: Data assimilation methods for neuronal state and parameter estimation (2018)
  8. Putkaradze, Vakhtang; Rogers, Stuart: Constraint control of nonholonomic mechanical systems (2018)
  9. Schmitt, Jeremy; Shingel, Tatiana; Leok, Melvin: Lagrangian and Hamiltonian Taylor variational integrators (2018)
  10. Srajer, Filip; Kukelova, Zuzana; Fitzgibbon, Andrew: A benchmark of selected algorithmic differentiation tools on some problems in computer vision and machine learning (2018)
  11. Weinstein, Matthew J.; Rao, Anil V.: Algorithm 984: ADiGator, a toolbox for the algorithmic differentiation of mathematical functions in MATLAB using source transformation via operator overloading (2017)
  12. Jarrett Revels, Miles Lubin, Theodore Papamarkou: Forward-Mode Automatic Differentiation in Julia (2016) arXiv
  13. Patterson, Michael A.; Weinstein, Matthew; Rao, Anil V.: An efficient overloaded method for computing derivatives of mathematical functions in MATLAB (2013)