Publication: An Efficient Overloaded Implementation of Forward Mode Automatic Differentiation in MATLAB
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About
Impress

An Efficient Overloaded Implementation of Forward Mode Automatic Differentiation in MATLAB

- Article in a journal -
 

Author(s)
Shaun A. Forth

Published in
ACM Transactions on Mathematical Software

Year
2006

Abstract
The Mad package described here facilitates the evaluation of first derivatives of multi-dimensional functions that are defined by computer codes written in MATLAB. The underlying algorithm is the well-known forward mode of automatic differentiation implemented via operator overloading on variables of the class fmad. The main distinguishing feature of this MATLAB implementation is the separation of the linear combination of derivative vectors into a separate derivative vector class derivvec. This allows for the straightforward performance optimisation of the overall package. Additionally by internally using a matrix (two-dimensional) representation of arbitrary dimension directional derivatives we may utilise MATLAB's sparse matrix class to propagate sparse directional derivatives for MATLAB code which uses arbitrary dimension arrays. On several examples the package is shown to be more efficient than Verma's ADMAT package.

AD Tools
TOMLAB /MAD

BibTeX
@ARTICLE{
         Forth2006AEO,
       author = "Shaun A. Forth",
       title = "An Efficient Overloaded Implementation of Forward Mode Automatic Differentiation in
         {MATLAB}",
       journal = "{ACM} Transactions on Mathematical Software",
       volume = "32",
       number = "2",
       pages = "195--222",
       year = "2006",
       URL = "http://doi.acm.org/10.1145/1141885.1141888",
       abstract = "The {\sc Mad} package described here facilitates the evaluation of first
         derivatives of multi-dimensional functions that are defined by computer codes written in MATLAB. The
         underlying algorithm is the well-known forward mode of automatic differentiation implemented via
         operator overloading on variables of the class {\tt fmad}. The main distinguishing feature of
         this MATLAB implementation is the separation of the linear combination of derivative vectors into a
         separate derivative vector class {\tt derivvec}. This allows for the straightforward
         performance optimisation of the overall package. Additionally by internally using a matrix
         (two-dimensional) representation of arbitrary dimension directional derivatives we may utilise
         MATLAB's sparse matrix class to propagate sparse directional derivatives for MATLAB code which
         uses arbitrary dimension arrays. On several examples the package is shown to be more efficient than
         Verma's ADMAT package.",
       month = "jun",
       ad_tools = "TOMLAB /MAD"
}


back
  

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