On Mon, 17 Sep 2012, Vikram Garg wrote:
1) Do we have any automatic differentiation capabilities in libMesh
(apart from numerical jacobians) ? Also, is there some good
automatic differentiation software that someone can recommend ?
You're welcome to use my AD tools. Do you have svn access to
pecos/utilities/dualnumber? That's got the latest version, but I
think there's been a public release of a nearly-up-to-date version
along with MASA:
https://red.ices.utexas.edu/projects/software/wiki/MASA
The main advantage with those basic tools (dualnumber.h and
sparsearray.h) is simplicity; two ~500 line headers gives you
arbitrary levels of mixed partial derivatives of arbitrary
dimensionality. There are some more advanced headers in there for
sparse vectors and tensors if you want to trade higher efficiency for
greater debugging difficulty.
Long-term I'd like to add AD support to FEMSystem, but I haven't
figured out the best architecture yet. To do maximally fancy
compile-time things with sparse data types you want your physics
functions to be templated around their input arguments, but to do the
usual FEMSystem tricks we use virtual functions, and templated virtual
functions don't exist.
---
Roy
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel