On computational differentiation

TitleOn computational differentiation
Publication TypeJournal Article
Year of Publication1998
AuthorsTolsma JE, Barton PI
JournalComputers & Chemical Engineering
Pagination475 - 490

Numerical derivatives play an important role in many computations. In many applications, the cost associated with evaluation of numerical derivatives may be significant. Dramatic improvements in the speed of such calculations can be obtained through careful consideration of how these derivatives are computed. This paper reviews several ways in which numerical derivatives can be evaluated: hand-coding, finite difference approximations, reverse polish notation evaluation, symbolic differentiation, and automatic differentiation. It is concluded that automatic differentiation has significant advantages over all other approaches. Several ways of improving the efficiency of obtaining derivatives in an interpretive, symbolic environment are discussed. Example problems are compared to illustrate these improvements.