@Article{Weinstein:2015:STO, author = "Matthew J. Weinstein and Anil V. Rao", title = "A Source Transformation via Operator Overloading Method for the Automatic Differentiation of Mathematical Functions in {MATLAB}", journal = "{ACM} Transactions on Mathematical Software", volume = "42", number = "1", accepted = "20 September 2014", upcoming = "true", abstract = " A source transformation via operator overloading method is presented for computing derivatives of mathematical functions defined by MATLAB computer programs. The transformed derivative code that results from the method of this paper computes a sparse representation of the derivative of the function defined in the original code. As in all source transformation automatic differentiation techniques, an important feature of the method is that any flow control in the original function code is preserved in the derivative code. Furthermore, the resulting derivative code relies solely upon the native MATLAB library. The method is useful in applications where it is required to repeatedly evaluate the derivative of the original function. The approach is demonstrated on several examples and is found to be highly efficient when compared with well known MATLAB automatic differentiation programs. ", }