Adaptive Robust Numerical Differentiation

Version 1.6 (166 KB) von John D'Errico
Numerical derivative of an analytically supplied function, also gradient, Jacobian & Hessian
Aktualisiert 3. Dez 2014

Lizenz anzeigen

The DERIVESTsuite provides a fully adaptive numerical differentiation tool for both scalar and vector valued functions. Tools for derivatives (up to 4th order) of a scalar function are provided, as well as the gradient vector, directional derivative, Jacobian matrix, and Hessian matrix. Error estimates are provided for all tools.
DERIVEST provides a robust adaptive numerical differentiation (up to the fourth derivative) of a user supplied function, much as quad does for integration. It is semi-intelligent, trying to use that step size which minimizes its estimate of the uncertainty in the derivative.

High order methods are used, although full control is provided to the user when you want it. You can direct the order of the method to be used, the general class of difference method employed (forward, backward, or central differences), the number of terms employed in its generalized Richardson acceleration scheme, step sizes, etc.

Although you can not provide a user supplied tolerance, DERIVEST does return an estimate of its uncertainty in the final result.

For example, the derivative of exp(x), at x=1 is exp(1)==2.71828182845905. DERIVEST does quite well.

[d,err]=derivest(@(x) exp(x),1)
d =

err =

See the provided demos for many more examples.

Zitieren als

John D'Errico (2024). Adaptive Robust Numerical Differentiation (, MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R14SP1
Kompatibel mit allen Versionen
Windows macOS Linux
Mehr zu Numerical Integration and Differential Equations finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!


Version Veröffentlicht Versionshinweise

Flag as a toolbox

Repaired problem when the point to evaluate the derivative happens to be the same as the period of a periodic function.