AD<double>are included as part of CppAD.
AD<Base>operations can be recorded and stored in an AD function object object. This object can then be used to evaluate function values and arbitrary order derivatives, and sparsity patterns of derivative values using the
ADFunobject. Easy to user drivers that compute the entire Jacobian and a specific Hessian are included.
ADFunobject can be converted into an object that evaluates derivatives using the type
AD<Base>; see base2ad . This enables one to record new functions that are expressed using derivatives of other functions.