dvda: Efficient automatic differentiation and code generation

[ bsd3, deprecated, library, math, numerical ] [ Propose Tags ] [ Report a vulnerability ]
Deprecated in favor of dynobud

dvda == DVDA Verifiably Differentiates Algorithmically

This library provides a symbolic scalar type Dvda.Expr which is manipulated mathematically through its Num/Fractional/Floating instances.

Automatic differentiation can be performed with Dvda.AD. Expressions can be turned into computational graphs (FunGraphs) using toFunGraph. This uses unsafe reification for performance reasons, and explicit common subexpression elimination using hashing can be performed using Dvda.CSE

FunGraphs can be converted to C code and MATLAB mex functions. In the future there will be JIT compilation so you can call these functions efficiently from Haskell.

Pretty graphviz plots!

To get started check out the source for Dvda.Examples

Flags

Automatic Flags
NameDescriptionDefault
stresstest

Build a profilable hard executable

Disabled
test

Build test program.

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.2.0, 0.2.1, 0.2.2, 0.3, 0.3.0.1, 0.3.1, 0.3.2, 0.3.2.1, 0.4
Dependencies base (>=4 && <5), containers (>=0.5), hashable (>=1.2), hashtables (>=1.1.0), mtl, unordered-containers (>=0.2), vector (>=0.10) [details]
License BSD-3-Clause
Copyright (c) 2011 - 2012 Greg Horn (c) 2009 Andy Gill
Author Greg Horn
Maintainer gregmainland@gmail.edu
Category Numerical, Math
Source repo head: git clone git://github.com/ghorn/dvda.git
Uploaded by GregHorn at 2014-04-05T18:24:46Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 8106 total (34 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]