Publication: Algorithmic differentiation in Python with AlgoPy
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About

Algorithmic differentiation in Python with AlgoPy

- Article in a journal -
 

Author(s)
Sebastian F. Walter , Lutz Lehmann

Published in
Journal of Computational Science

Year
2013

Abstract
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.

AD Tools
AlgoPy

BibTeX
@ARTICLE{
         Walter2013Adi,
       title = "Algorithmic differentiation in {P}ython with {AlgoPy}",
       journal = "Journal of Computational Science",
       volume = "4",
       number = "5",
       pages = "334--344",
       year = "2013",
       issn = "1877-7503",
       doi = "http://dx.doi.org/10.1016/j.jocs.2011.10.007",
       url = "http://www.sciencedirect.com/science/article/pii/S1877750311001013",
       author = "Sebastian F. Walter and Lutz Lehmann",
       abstract = "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.",
       ad_tools = "AlgoPy"
}


back
  

Contact:
autodiff.org
Username:
Password:
(lost password)