The dvda package

[Tags: bsd3, library]

dvda == 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 safety 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 efficient 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.*), directory (==1.1.*), fgl (==5.4.*), graphviz (==2999.12.*), hashable (==1.1.*), hmatrix (==0.14.*), mtl (==2.0.*), repa (==3.2.*), unordered-containers (==0.2.*)
LicenseBSD3
AuthorGreg Horn
Maintainergregmainland@gmail.edu
StabilityExperimental
CategoryNumerical, Math
Source repositoryhead: git clone git://github.com/ghorn/dvda.git
Upload dateSun Jul 15 12:37:28 UTC 2012
Uploaded byGregHorn
Downloads602 total (53 in last 30 days)

Modules

Flags

NameDescriptionDefault
stresstestBuild a profilable hard executableDisabled
testBuild test program.Disabled

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