Re: [eigen] cppduals - dual number implementation with Eigen specializations

[ Thread Index | Date Index | More Archives ]

Have you compared against naive complex step derivatives : ?  For first derivatives, CSD are trivial to apply, and doesn't require any additional machinations.  I think that would serve as a nice benchmark.

On Tue, Dec 3, 2019, 8:36 AM Michael Tesch <tesch1@xxxxxxxxx> wrote:

I've written (yet another!) Dual Number implementation for automatic differentiation.  It is meant to be used as the value-type in Eigen matrices, and has templates for vectorization (shockingly) similar to (and based on) Eigen's complex-type vectorizations.  It is quite fast for first-order forward diff, and imho pretty easy to use.  There are also SSE/SSE3/AVX vectorizations for std::complex<dual< float | double >> types.

The library is here: , and there's a small paper in JOSS too:

I hope this could be useful for someone and would be glad for any feedback, improvements, etc.

It would be interesting to compare this approach to others, by hand-wavey arguments I believe it should ultimately be faster in certain cases.


Mail converted by MHonArc 2.6.19+