packages feed

bindings-levmar 0.2.0.1 → 1.0

raw patch · 4 files changed

+208/−172 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Bindings.LevMar: c'dlevmar_R2 :: LevMarR2 CDouble
+ Bindings.LevMar: c'dlevmar_R2 :: LevMarR2 Double
- Bindings.LevMar: c'dlevmar_bc_der :: LevMarBCDer CDouble
+ Bindings.LevMar: c'dlevmar_bc_der :: LevMarBCDer Double
- Bindings.LevMar: c'dlevmar_bc_dif :: LevMarBCDif CDouble
+ Bindings.LevMar: c'dlevmar_bc_dif :: LevMarBCDif Double
- Bindings.LevMar: c'dlevmar_blec_der :: LevMarBLecDer CDouble
+ Bindings.LevMar: c'dlevmar_blec_der :: LevMarBLecDer Double
- Bindings.LevMar: c'dlevmar_blec_dif :: LevMarBLecDif CDouble
+ Bindings.LevMar: c'dlevmar_blec_dif :: LevMarBLecDif Double
- Bindings.LevMar: c'dlevmar_chkjac :: LevMarChkJac CDouble
+ Bindings.LevMar: c'dlevmar_chkjac :: LevMarChkJac Double
- Bindings.LevMar: c'dlevmar_corcoef :: LevMarCorCoef CDouble
+ Bindings.LevMar: c'dlevmar_corcoef :: LevMarCorCoef Double
- Bindings.LevMar: c'dlevmar_der :: LevMarDer CDouble
+ Bindings.LevMar: c'dlevmar_der :: LevMarDer Double
- Bindings.LevMar: c'dlevmar_dif :: LevMarDif CDouble
+ Bindings.LevMar: c'dlevmar_dif :: LevMarDif Double
- Bindings.LevMar: c'dlevmar_lec_der :: LevMarLecDer CDouble
+ Bindings.LevMar: c'dlevmar_lec_der :: LevMarLecDer Double
- Bindings.LevMar: c'dlevmar_lec_dif :: LevMarLecDif CDouble
+ Bindings.LevMar: c'dlevmar_lec_dif :: LevMarLecDif Double
- Bindings.LevMar: c'dlevmar_stddev :: LevMarStddev CDouble
+ Bindings.LevMar: c'dlevmar_stddev :: LevMarStddev Double
- Bindings.LevMar: c'slevmar_R2 :: LevMarR2 CFloat
+ Bindings.LevMar: c'slevmar_R2 :: LevMarR2 Float
- Bindings.LevMar: c'slevmar_bc_der :: LevMarBCDer CFloat
+ Bindings.LevMar: c'slevmar_bc_der :: LevMarBCDer Float
- Bindings.LevMar: c'slevmar_bc_dif :: LevMarBCDif CFloat
+ Bindings.LevMar: c'slevmar_bc_dif :: LevMarBCDif Float
- Bindings.LevMar: c'slevmar_blec_der :: LevMarBLecDer CFloat
+ Bindings.LevMar: c'slevmar_blec_der :: LevMarBLecDer Float
- Bindings.LevMar: c'slevmar_blec_dif :: LevMarBLecDif CFloat
+ Bindings.LevMar: c'slevmar_blec_dif :: LevMarBLecDif Float
- Bindings.LevMar: c'slevmar_chkjac :: LevMarChkJac CFloat
+ Bindings.LevMar: c'slevmar_chkjac :: LevMarChkJac Float
- Bindings.LevMar: c'slevmar_corcoef :: LevMarCorCoef CFloat
+ Bindings.LevMar: c'slevmar_corcoef :: LevMarCorCoef Float
- Bindings.LevMar: c'slevmar_der :: LevMarDer CFloat
+ Bindings.LevMar: c'slevmar_der :: LevMarDer Float
- Bindings.LevMar: c'slevmar_dif :: LevMarDif CFloat
+ Bindings.LevMar: c'slevmar_dif :: LevMarDif Float
- Bindings.LevMar: c'slevmar_lec_der :: LevMarLecDer CFloat
+ Bindings.LevMar: c'slevmar_lec_der :: LevMarLecDer Float
- Bindings.LevMar: c'slevmar_lec_dif :: LevMarLecDif CFloat
+ Bindings.LevMar: c'slevmar_lec_dif :: LevMarLecDif Float
- Bindings.LevMar: c'slevmar_stddev :: LevMarStddev CFloat
+ Bindings.LevMar: c'slevmar_stddev :: LevMarStddev Float
- Bindings.LevMar: type BestFitParameterIx = CInt
+ Bindings.LevMar: type BestFitParameterIx = Int
- Bindings.LevMar: type LevMarBCDer cr = FunPtr (Model cr) -> FunPtr (Jacobian cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> LowerBounds cr -> UpperBounds cr -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarBCDer r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> LowerBounds r -> UpperBounds r -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarBCDif cr = FunPtr (Model cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> LowerBounds cr -> UpperBounds cr -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarBCDif r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> LowerBounds r -> UpperBounds r -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarBLecDer cr = FunPtr (Model cr) -> FunPtr (Jacobian cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> LowerBounds cr -> UpperBounds cr -> ConstraintsMatrix cr -> ConstraintsVector cr -> NrOfConstraints -> Weights cr -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarBLecDer r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> LowerBounds r -> UpperBounds r -> ConstraintsMatrix r -> ConstraintsVector r -> NrOfConstraints -> Weights r -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarBLecDif cr = FunPtr (Model cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> LowerBounds cr -> UpperBounds cr -> ConstraintsMatrix cr -> ConstraintsVector cr -> NrOfConstraints -> Weights cr -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarBLecDif r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> LowerBounds r -> UpperBounds r -> ConstraintsMatrix r -> ConstraintsVector r -> NrOfConstraints -> Weights r -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarChkJac cr = FunPtr (Model cr) -> FunPtr (Jacobian cr) -> Parameters cr -> NrOfParameters -> NrOfMeasurements -> AData -> Errors cr -> IO ()
+ Bindings.LevMar: type LevMarChkJac r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> NrOfParameters -> NrOfMeasurements -> AData -> Errors r -> IO ()
- Bindings.LevMar: type LevMarCorCoef cr = Covar cr -> NrOfParameters -> BestFitParameterIx -> BestFitParameterIx -> IO cr
+ Bindings.LevMar: type LevMarCorCoef r = Covar r -> NrOfParameters -> BestFitParameterIx -> BestFitParameterIx -> IO r
- Bindings.LevMar: type LevMarDer cr = FunPtr (Model cr) -> FunPtr (Jacobian cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarDer r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarDif cr = FunPtr (Model cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarDif r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarLecDer cr = FunPtr (Model cr) -> FunPtr (Jacobian cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> ConstraintsMatrix cr -> ConstraintsVector cr -> NrOfConstraints -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarLecDer r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> ConstraintsMatrix r -> ConstraintsVector r -> NrOfConstraints -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarLecDif cr = FunPtr (Model cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> ConstraintsMatrix cr -> ConstraintsVector cr -> NrOfConstraints -> MaxIterations -> Options cr -> Info cr -> Work cr -> Covar cr -> AData -> IO CInt
+ Bindings.LevMar: type LevMarLecDif r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> ConstraintsMatrix r -> ConstraintsVector r -> NrOfConstraints -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- Bindings.LevMar: type LevMarR2 cr = FunPtr (Model cr) -> Parameters cr -> Measurements cr -> NrOfParameters -> NrOfMeasurements -> AData -> Result cr -> IO CInt
+ Bindings.LevMar: type LevMarR2 r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> AData -> Result r -> IO Int
- Bindings.LevMar: type LevMarStddev cr = Covar cr -> NrOfParameters -> BestFitParameterIx -> IO cr
+ Bindings.LevMar: type LevMarStddev r = Covar r -> NrOfParameters -> BestFitParameterIx -> IO r
- Bindings.LevMar: type MaxIterations = CInt
+ Bindings.LevMar: type MaxIterations = Int
- Bindings.LevMar: type NrOfConstraints = CInt
+ Bindings.LevMar: type NrOfConstraints = Int
- Bindings.LevMar: type NrOfMeasurements = CInt
+ Bindings.LevMar: type NrOfMeasurements = Int
- Bindings.LevMar: type NrOfParameters = CInt
+ Bindings.LevMar: type NrOfParameters = Int

Files

Bindings/LevMar.hsc view
@@ -6,7 +6,7 @@ -------------------------------------------------------------------------------- -- | -- Module      :  Bindings.LevMar--- Copyright   :  (c) 2009 Roel van Dijk & Bas van Dijk+-- Copyright   :  (c) 2009-2010 Roel van Dijk & Bas van Dijk -- License     :  BSD-style (see the file LICENSE) -- -- Maintainer  :  vandijk.roel@gmail.com, v.dijk.bas@gmail.com@@ -127,15 +127,15 @@ -- Imports -------------------------------------------------------------------------------- -import Prelude           ( Num, Fractional )+import Prelude           ( Num, Fractional, Double, Float )  #if __GLASGOW_HASKELL__ < 700 import Prelude           ( negate, fromInteger, fromRational ) #endif +import Data.Int          ( Int ) import System.IO         ( IO )-import Data.Char         ( String )-import Foreign.C.Types   ( CInt, CFloat, CDouble )+import Prelude           ( String ) import Foreign.Ptr       ( Ptr, FunPtr, freeHaskellFunPtr ) import Control.Exception ( bracket ) @@ -202,10 +202,10 @@ type Work              = Ptr type Covar             = Ptr type AData             = Ptr ()-type NrOfParameters    = CInt-type NrOfMeasurements  = CInt-type NrOfConstraints   = CInt-type MaxIterations     = CInt+type NrOfParameters    = Int+type NrOfMeasurements  = Int+type NrOfConstraints   = Int+type MaxIterations     = Int   --------------------------------------------------------------------------------@@ -238,157 +238,157 @@ -- Types of the Levenberg-Marquardt algorithms. -------------------------------------------------------------------------------- -type LevMarDer cr =  FunPtr (Model cr)-                  -> FunPtr (Jacobian cr)-                  -> Parameters cr-                  -> Measurements cr-                  -> NrOfParameters-                  -> NrOfMeasurements-                  -> MaxIterations-                  -> Options cr-                  -> Info cr-                  -> Work cr-                  -> Covar cr-                  -> AData-                  -> IO CInt+type LevMarDer r =  FunPtr (Model r)+                 -> FunPtr (Jacobian r)+                 -> Parameters r+                 -> Measurements r+                 -> NrOfParameters+                 -> NrOfMeasurements+                 -> MaxIterations+                 -> Options r+                 -> Info r+                 -> Work r+                 -> Covar r+                 -> AData+                 -> IO Int -type LevMarDif cr =  FunPtr (Model cr)-                  -> Parameters cr-                  -> Measurements cr-                  -> NrOfParameters-                  -> NrOfMeasurements-                  -> MaxIterations-                  -> Options cr-                  -> Info cr-                  -> Work cr-                  -> Covar cr-                  -> AData-                  -> IO CInt+type LevMarDif r =  FunPtr (Model r)+                 -> Parameters r+                 -> Measurements r+                 -> NrOfParameters+                 -> NrOfMeasurements+                 -> MaxIterations+                 -> Options r+                 -> Info r+                 -> Work r+                 -> Covar r+                 -> AData+                 -> IO Int -type LevMarBCDer cr =  FunPtr (Model cr)-                    -> FunPtr (Jacobian cr)-                    -> Parameters cr-                    -> Measurements cr+type LevMarBCDer r =  FunPtr (Model r)+                   -> FunPtr (Jacobian r)+                   -> Parameters r+                   -> Measurements r+                   -> NrOfParameters+                   -> NrOfMeasurements+                   -> LowerBounds r+                   -> UpperBounds r+                   -> MaxIterations+                   -> Options r+                   -> Info r+                   -> Work r+                   -> Covar r+                   -> AData+                   -> IO Int++type LevMarBCDif r =  FunPtr (Model r)+                   -> Parameters r+                   -> Measurements r+                   -> NrOfParameters+                   -> NrOfMeasurements+                   -> LowerBounds r+                   -> UpperBounds r+                   -> MaxIterations+                   -> Options r+                   -> Info r+                   -> Work r+                   -> Covar r+                   -> AData+                   -> IO Int++type LevMarLecDer r =  FunPtr (Model r)+                    -> FunPtr (Jacobian r)+                    -> Parameters r+                    -> Measurements r                     -> NrOfParameters                     -> NrOfMeasurements-                    -> LowerBounds cr-                    -> UpperBounds cr+                    -> ConstraintsMatrix r+                    -> ConstraintsVector r+                    -> NrOfConstraints                     -> MaxIterations-                    -> Options cr-                    -> Info cr-                    -> Work cr-                    -> Covar cr+                    -> Options r+                    -> Info r+                    -> Work r+                    -> Covar r                     -> AData-                    -> IO CInt+                    -> IO Int -type LevMarBCDif cr =  FunPtr (Model cr)-                    -> Parameters cr-                    -> Measurements cr+type LevMarLecDif r =  FunPtr (Model r)+                    -> Parameters r+                    -> Measurements r                     -> NrOfParameters                     -> NrOfMeasurements-                    -> LowerBounds cr-                    -> UpperBounds cr+                    -> ConstraintsMatrix r+                    -> ConstraintsVector r+                    -> NrOfConstraints                     -> MaxIterations-                    -> Options cr-                    -> Info cr-                    -> Work cr-                    -> Covar cr+                    -> Options r+                    -> Info r+                    -> Work r+                    -> Covar r                     -> AData-                    -> IO CInt+                    -> IO Int -type LevMarLecDer cr =  FunPtr (Model cr)-                     -> FunPtr (Jacobian cr)-                     -> Parameters cr-                     -> Measurements cr+type LevMarBLecDer r =  FunPtr (Model r)+                     -> FunPtr (Jacobian r)+                     -> Parameters r+                     -> Measurements r                      -> NrOfParameters                      -> NrOfMeasurements-                     -> ConstraintsMatrix cr-                     -> ConstraintsVector cr+                     -> LowerBounds r+                     -> UpperBounds r+                     -> ConstraintsMatrix r+                     -> ConstraintsVector r                      -> NrOfConstraints+                     -> Weights r                      -> MaxIterations-                     -> Options cr-                     -> Info cr-                     -> Work cr-                     -> Covar cr+                     -> Options r+                     -> Info r+                     -> Work r+                     -> Covar r                      -> AData-                     -> IO CInt+                     -> IO Int -type LevMarLecDif cr =  FunPtr (Model cr)-                     -> Parameters cr-                     -> Measurements cr+type LevMarBLecDif r =  FunPtr (Model r)+                     -> Parameters r+                     -> Measurements r                      -> NrOfParameters                      -> NrOfMeasurements-                     -> ConstraintsMatrix cr-                     -> ConstraintsVector cr+                     -> LowerBounds r+                     -> UpperBounds r+                     -> ConstraintsMatrix r+                     -> ConstraintsVector r                      -> NrOfConstraints+                     -> Weights r                      -> MaxIterations-                     -> Options cr-                     -> Info cr-                     -> Work cr-                     -> Covar cr+                     -> Options r+                     -> Info r+                     -> Work r+                     -> Covar r                      -> AData-                     -> IO CInt--type LevMarBLecDer cr =  FunPtr (Model cr)-                      -> FunPtr (Jacobian cr)-                      -> Parameters cr-                      -> Measurements cr-                      -> NrOfParameters-                      -> NrOfMeasurements-                      -> LowerBounds cr-                      -> UpperBounds cr-                      -> ConstraintsMatrix cr-                      -> ConstraintsVector cr-                      -> NrOfConstraints-                      -> Weights cr-                      -> MaxIterations-                      -> Options cr-                      -> Info cr-                      -> Work cr-                      -> Covar cr-                      -> AData-                      -> IO CInt--type LevMarBLecDif cr =  FunPtr (Model cr)-                      -> Parameters cr-                      -> Measurements cr-                      -> NrOfParameters-                      -> NrOfMeasurements-                      -> LowerBounds cr-                      -> UpperBounds cr-                      -> ConstraintsMatrix cr-                      -> ConstraintsVector cr-                      -> NrOfConstraints-                      -> Weights cr-                      -> MaxIterations-                      -> Options cr-                      -> Info cr-                      -> Work cr-                      -> Covar cr-                      -> AData-                      -> IO CInt+                     -> IO Int   -------------------------------------------------------------------------------- -- Levenberg-Marquardt algorithms. -------------------------------------------------------------------------------- -#ccall slevmar_der      , LevMarDer     CFloat-#ccall dlevmar_der      , LevMarDer     CDouble-#ccall slevmar_dif      , LevMarDif     CFloat-#ccall dlevmar_dif      , LevMarDif     CDouble-#ccall slevmar_bc_der   , LevMarBCDer   CFloat-#ccall dlevmar_bc_der   , LevMarBCDer   CDouble-#ccall slevmar_bc_dif   , LevMarBCDif   CFloat-#ccall dlevmar_bc_dif   , LevMarBCDif   CDouble-#ccall slevmar_lec_der  , LevMarLecDer  CFloat-#ccall dlevmar_lec_der  , LevMarLecDer  CDouble-#ccall slevmar_lec_dif  , LevMarLecDif  CFloat-#ccall dlevmar_lec_dif  , LevMarLecDif  CDouble-#ccall slevmar_blec_der , LevMarBLecDer CFloat-#ccall dlevmar_blec_der , LevMarBLecDer CDouble-#ccall slevmar_blec_dif , LevMarBLecDif CFloat-#ccall dlevmar_blec_dif , LevMarBLecDif CDouble+#ccall slevmar_der      , LevMarDer     Float+#ccall dlevmar_der      , LevMarDer     Double+#ccall slevmar_dif      , LevMarDif     Float+#ccall dlevmar_dif      , LevMarDif     Double+#ccall slevmar_bc_der   , LevMarBCDer   Float+#ccall dlevmar_bc_der   , LevMarBCDer   Double+#ccall slevmar_bc_dif   , LevMarBCDif   Float+#ccall dlevmar_bc_dif   , LevMarBCDif   Double+#ccall slevmar_lec_der  , LevMarLecDer  Float+#ccall dlevmar_lec_der  , LevMarLecDer  Double+#ccall slevmar_lec_dif  , LevMarLecDif  Float+#ccall dlevmar_lec_dif  , LevMarLecDif  Double+#ccall slevmar_blec_der , LevMarBLecDer Float+#ccall dlevmar_blec_der , LevMarBLecDer Double+#ccall slevmar_blec_dif , LevMarBLecDif Float+#ccall dlevmar_blec_dif , LevMarBLecDif Double   --------------------------------------------------------------------------------@@ -397,56 +397,56 @@  type Errors = Ptr -type LevMarChkJac cr =  FunPtr (Model cr)-                     -> FunPtr (Jacobian cr)-                     -> Parameters cr-                     -> NrOfParameters-                     -> NrOfMeasurements-                     -> AData-                     -> Errors cr-                     -> IO ()+type LevMarChkJac r =  FunPtr (Model r)+                    -> FunPtr (Jacobian r)+                    -> Parameters r+                    -> NrOfParameters+                    -> NrOfMeasurements+                    -> AData+                    -> Errors r+                    -> IO () -#ccall dlevmar_chkjac , LevMarChkJac CDouble-#ccall slevmar_chkjac , LevMarChkJac CFloat+#ccall dlevmar_chkjac , LevMarChkJac Double+#ccall slevmar_chkjac , LevMarChkJac Float   -------------------------------------------------------------------------------- -- Utils -------------------------------------------------------------------------------- -type BestFitParameterIx = CInt+type BestFitParameterIx = Int  -- | Standard deviation.-type LevMarStddev cr =  Covar cr-                     -> NrOfParameters-                     -> BestFitParameterIx-                     -> IO cr+type LevMarStddev r =  Covar r+                    -> NrOfParameters+                    -> BestFitParameterIx+                    -> IO r  -- | Pearson's correlation coefficient for best-fit parameters.-type LevMarCorCoef cr =  Covar cr-                      -> NrOfParameters-                      -> BestFitParameterIx-                      -> BestFitParameterIx-                      -> IO cr+type LevMarCorCoef r =  Covar r+                     -> NrOfParameters+                     -> BestFitParameterIx+                     -> BestFitParameterIx+                     -> IO r  -- | Coefficient of determination (R2).-type LevMarR2 cr =  FunPtr (Model cr)-                 -> Parameters cr-                 -> Measurements cr-                 -> NrOfParameters-                 -> NrOfMeasurements-                 -> AData-                 -> Result cr-                 -> IO CInt+type LevMarR2 r =  FunPtr (Model r)+                -> Parameters r+                -> Measurements r+                -> NrOfParameters+                -> NrOfMeasurements+                -> AData+                -> Result r+                -> IO Int  type Result = Ptr -#ccall dlevmar_stddev  , LevMarStddev  CDouble-#ccall slevmar_stddev  , LevMarStddev  CFloat-#ccall dlevmar_corcoef , LevMarCorCoef CDouble-#ccall slevmar_corcoef , LevMarCorCoef CFloat-#ccall dlevmar_R2      , LevMarR2      CDouble-#ccall slevmar_R2      , LevMarR2      CFloat+#ccall dlevmar_stddev  , LevMarStddev  Double+#ccall slevmar_stddev  , LevMarStddev  Float+#ccall dlevmar_corcoef , LevMarCorCoef Double+#ccall slevmar_corcoef , LevMarCorCoef Float+#ccall dlevmar_R2      , LevMarR2      Double+#ccall slevmar_R2      , LevMarR2      Float   -- The End ---------------------------------------------------------------------
LICENSE view
@@ -5,7 +5,7 @@ the GPL as detailed in levmar-2.4/LICENSE. The copyright of these files belong to Manolis Lourakis. -Copyright (c) 2009 Roel van Dijk, Bas van Dijk+Copyright (c) 2009-2010 Roel van Dijk, Bas van Dijk  All rights reserved. 
+ README.markdown view
@@ -0,0 +1,31 @@+Low level Haskell bindings to the [C levmar (Levenberg-Marquardt)+library](http://www.ics.forth.gr/~lourakis/levmar/)++See the [levmar](http://hackage.haskell.org/package/levmar) package+for a high-level wrapper around this package.++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`.++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.
bindings-levmar.cabal view
@@ -1,16 +1,21 @@ name:          bindings-levmar-version:       0.2.0.1+version:       1.0 cabal-version: >= 1.6 build-type:    Simple stability:     experimental author:        Roel van Dijk & Bas van Dijk maintainer:    vandijk.roel@gmail.com, v.dijk.bas@gmail.com-copyright:     (c) 2009 Roel van Dijk & Bas van Dijk+copyright:     (c) 2009-2010 Roel van Dijk & Bas van Dijk license:       OtherLicense license-file:  LICENSE+homepage:      https://github.com/basvandijk/bindings-levmar/+bug-reports:   https://github.com/basvandijk/bindings-levmar/issues category:      Numerical, FFI synopsis:      Low level bindings to the C levmar (Levenberg-Marquardt) library-description:   The Levenberg-Marquardt algorithm is an iterative+description:   See the @levmar@ package for a high-level wrapper+               around this package.+               .+               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@@ -43,7 +48,7 @@                program can only by distributed under the terms of the                GPL. -extra-source-files: LICENSE+extra-source-files: README.markdown                   , levmar-2.4/LICENSE                   , levmar-2.4/*.h                   , levmar-2.4/*.c@@ -67,8 +72,8 @@   default:     False  source-repository head-  type: darcs-  location: http://code.haskell.org/bindings-levmar+  type: git+  location: git://github.com/basvandijk/bindings-levmar.git  library   build-depends: base         >= 3     && < 4.4@@ -92,7 +97,7 @@     else       extra-libraries: mkl_intel   else-    extra-libraries: lapack+    extra-libraries: lapack blas    if flag(accelerate)     frameworks: Accelerate