Algorithmic differentiation in Python with AlgoPy. Many programs for scientific computing in Python are based on NumPy and therefore make heavy use of numerical linear algebra (NLA) functions, vectorized operations, slicing and broadcasting. AlgoPy provides the means to compute derivatives of arbitrary order and Taylor approximations of such programs. The approach is based on a combination of univariate Taylor polynomial arithmetic and matrix calculus in the (combined) forward/reverse mode of Algorithmic Differentiation (AD). In contrast to existing AD tools, vectorized operations and NLA functions are not considered to be a sequence of scalar elementary functions. Instead, dedicated algorithms for the matrix product, matrix inverse and the Cholesky, QR, and symmetric eigenvalue decomposition are implemented in AlgoPy. We discuss the reasons for this alternative approach and explain the underlying idea. Examples illustrate how AlgoPy can be used from a user’s point of view.

References in zbMATH (referenced in 10 articles )

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

  1. Estévez Schwarz, Diana; Lamour, René: InitDAE: computation of consistent values, index determination and diagnosis of singularities of DAEs using automatic differentiation in Python (2021)
  2. Estévez Schwarz, Diana; Lamour, René: Projected explicit and implicit Taylor series methods for DAEs (2021)
  3. Peñuñuri, F.; Peón, R.; González-Sánchez, D.; Escalante Soberanis, M. A.: Dual numbers and automatic differentiation to efficiently compute velocities and accelerations (2020)
  4. Bell, Bradley M.; Kristensen, Kasper: Newton step methods for AD of an objective defined using implicit functions (2018)
  5. Birk, Lothar; McCulloch, T. Luke: Robust generation of constrained B-spline curves based on automatic differentiation and fairness optimization (2018)
  6. Estévez Schwarz, Diana; Lamour, René: A new approach for computing consistent initial values and Taylor coefficients for DAEs using projector-based constrained optimization (2018)
  7. Kulshreshtha, K.; Narayanan, S. H. K.; Bessac, J.; MacIntyre, K.: Efficient computation of derivatives for solving optimization problems in R and Python using SWIG-generated interfaces to ADOL-C (2018)
  8. Estévez Schwarz, Diana; Lamour, René: A new projector based decoupling of linear DAEs for monitoring singularities (2016)
  9. Jarrett Revels, Miles Lubin, Theodore Papamarkou: Forward-Mode Automatic Differentiation in Julia (2016) arXiv
  10. Estévez Schwarz, Diana; Lamour, René: Diagnosis of singular points of properly stated DAEs using automatic differentiation (2015)