Semiautomatic complex-step differentiation of real-valued functions

1 vue (au cours des 30 derniers jours)
Mark Shore
Mark Shore le 14 Fév 2012
Modifié(e) : Matt J le 13 Oct 2013
I found the linked technical article interesting but don't have the mathematical background to determine how useful it may really be. I'm not affiliated with the author but would like to raise it for comments.
MATLAB code and demos can be found at http://software.seg.org/2009/0001/index.html
Because this is academic software there are the usual style issues and a minor bug in a utility program (on line 24 of pMat.m num2str(dec) should read num2str(ndec)). Also, without the Statistics Toolbox several instances of normrnd(a,b,size(x)) must be replaced with the equivalent a + b*randn(size(x)).
  1 commentaire
Mark Shore
Mark Shore le 15 Fév 2012
I do realize this is a non-standard type of question for this forum and am just putting it out there on the off-chance a MATLAB forum member may have some pre-existing knowledge of and interest in the subject.

Connectez-vous pour commenter.

Réponses (1)

Andrew Newell
Andrew Newell le 15 Fév 2012
There is another implementation in MATLAB File Exchange that compares this method to others. Complex step derivatives are astonishing and cool, but no more accurate than automatic differentiation. My favorite package for numerical derivatives is John D'Errico's Adaptive robust numerical differentiation: it includes functions for gradient and Hessian.
  1 commentaire
Mark Shore
Mark Shore le 15 Fév 2012
Andrew, I do have John's DERIVEST suite of tools (among his other invaluable contributions). I hadn't thought of comparing the relative capabilities, performance and outputs, but that's a very good idea and I'll give it a try.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by