
There are several possibilities, some of them are listed on http://en.wikipedia.org/wiki/Automatic_differentiation
== pycppad http://www.seanet.com/~bradbell/pycppad/index.xml pycppad is a wrapper of the C++ library CppAD ( http://www.coin-or.org/CppAD/ )
the wrapper can do up to second order derivatives very efficiently in the so-called reverse mode of AD requires boost::python
== pyadolc http://github.com/b45ch1/pyadolc which is a wrapper for the C++ library ADOL-C ( http://www.math.tu-dresden.de/~adol-c/ )
this can do abritrary degree of derivatives and works quite well with numpy, i.e. you can work with numpy arrays also quite efficient in the so-called reverse mode of AD requires boost::python
== ScientificPython http://dirac.cnrs-orleans.fr/ScientificPython/ScientificPythonManual/ can provide first order derivatives. But as far as I understand only first order derivatives of functions f: R -> R and only in the usually not so efficient forward mode of AD
pure python
== Algopy http://github.com/b45ch1/algopy/tree/master pure python, arbitrary derivatives in forward and reverse mode still quite experimental. Offers also the possibility to differentiate functions that make heavy use of matrix operations.
== sympy this is not automatic differentiation but symbolic differentiation but is sometimes useful
hope that helps, Sebastian
On Wed, Mar 11, 2009 at 4:13 AM, Osman osman@fuse.net wrote:
Hi,
I just saw this python package : PyDX which may answer your needs. The original URL is not working, but the svn location exists.
http://gr.anu.edu.au/svn/people/sdburton/pydx/doc/user-guide.html
svn co http://gr.anu.edu.au/svn/people/sdburton/pydx
br -osman
Numpy-discussion mailing list Numpy-discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion