bindings-levmar: A binding to the C levmar (Levenberg-Marquardt) library

[ ffi, library, numerical ] [ Propose Tags ]

The Levenberg-Marquardt algorithm is an iterative technique that finds a local minimum of a function that is expressed as the sum of squares of nonlinear functions. It has become a standard technique for nonlinear least-squares problems and can be thought of as a combination of steepest descent and the Gauss-Newton method. When the current solution is far from the correct one, the algorithm behaves like a steepest descent method: slow, but guaranteed to converge. When the current solution is close to the correct solution, it becomes a Gauss-Newton method.

Both unconstrained and constrained (under linear equations and box constraints) Levenberg-Marquardt variants are included. All functions have Double and Float variants.


Note that the included C library is lightly patched to make it pure. This way the functions can be used inside unsafePerformIO.

A note regarding the license:

All files EXCEPT those in the levmar-2.4 directory fall under the BSD3 license. The levmar C library, which is bundled with this binding, falls under the GPL. If you build a program which is linked with this binding then it is also linked with levmar. This means such a program can only by distributed under the terms of the GPL.

Versions [faq] 0.1,, 0.1.1,,, 1.0,,, 1.1,,,,,
Dependencies base (>=3 && <4.2) [details]
License LicenseRef-OtherLicense
Copyright (c) 2009 Roel van Dijk & Bas van Dijk
Author Roel van Dijk & Bas van Dijk
Category numerical
Source repo head: darcs get
Uploaded by BasVanDijk at 2009-09-09T14:42:40Z
Distributions NixOS:
Downloads 10652 total (60 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-12-31 [all 7 reports]


  • Bindings
    • Bindings.LevMar
      • Bindings.LevMar.CurryFriendly


Maintainer's Corner

For package maintainers and hackage trustees