Accurate numerical derivatives in MATLAB

  • Authors:
  • L. F. Shampine

  • Affiliations:
  • Southern Methodist University, Dallas, TX

  • Venue:
  • ACM Transactions on Mathematical Software (TOMS)
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Complex step differentiation (CSD) is a technique for computing very accurate numerical derivatives in languages that support complex arithmetic. We describe here the development of a CSD package in MATLAB called PMAD. We have extended work done in other languages for scalars to the arrays that are fundamental to MATLAB. This extension raises questions that we have been able to resolve in a satisfactory way. Our goal has been to make it as easy as possible to compute approximate Jacobians in MATLAB that are all but exact. Although PMAD has a fast option for the expert that implements CSD as in previous work, the default is an object-oriented implementation that asks very little of the user.