The dvda package

[Tags: bsd3, library]

DVDA Verifiably Differentiates Algorithmically

This library provides a symbolic type `Dvda.Expr` which is manipulated mathematically through its Num\/Fractional\/Floating instances. Expr can be a scalar, vector, or matrix. Binary operations (adding\/multiplying\/etc) are all elementwise.

Matrix/vector/scalar compatability is enforced at compile time

Efficient derivatives can be computed. Internally reverse automatic differentiation is performed including efficient common subexpression elimination.

Function graphs can be JIT compiled into efficienty functions using "buildHSFunction". This is the intended way to use this library.

Pretty graphviz plots!

If the runtime JIT stuff works in terminal ghci but not emacs haskell-mode, you may need to add `(setenv "PATH" (concatenate 'string (getenv "PATH") ":/usr/local/bin"))` to your .emacs file

To get started look in `Dvda.Examples` or CompileTest.hs in the github repo


Properties

Versions0.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
Dependenciesbase (==4.*), containers (==0.4.*), deepseq (==1.3.*), directory (==1.1.*), fgl (==5.4.*), graphviz (==2999.12.*), hashable (==1.1.*), mtl (==2.0.*), plugins (==1.5.*), process (==1.1.*), repa (==3.1.*), text (==0.11.*), transformers (==0.2.*), unordered-containers (==0.2.*), vector (==0.9.*)
LicenseBSD3
AuthorGreg Horn
Maintainergregmainland@gmail.edu
StabilityExperimental
CategoryMath
Source repositoryhead: git clone git://github.com/ghorn/dvda.git
Upload dateSun May 27 04:45:00 UTC 2012
Uploaded byGregHorn
Downloads678 total (61 in last 30 days)

Modules

Flags

NameDescriptionDefault
stresstestBuild a profilable hard executableDisabled

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

Downloads

Maintainers' corner

For package maintainers and hackage trustees