3 unstable releases

0.4.1 Nov 15, 2019
0.4.0 Sep 7, 2019
0.3.0 Aug 6, 2019

#1178 in Math

31 downloads per month

BSD-2-Clause and LGPL-3.0

79KB
2K SLoC

Dynamic Automatic Differentiation in Rust

A pedagogical attempt at auto-differentiation. This is based on the autograd package and other variations of it as well as literature references (eg: The Art of Differentiating Computer Programs, An Introduction to Algorithmic Differentiation – Uwe Naumann).

Work in progress..

Note:

  • currently depends on Rust nightly

Support:

  • forward mode
  • reverse mode
  • a composition thereof for higher-order derivatives.

Todo:

  • Extend from scalar to multidimensional entities, with Ricci calculus for manipulating tensors and doing derivatives
  • more ops and tests (see src/core.rs)

Plots:

drawing drawing

Dependencies

~2MB
~42K SLoC