Stability | Experimental |
---|---|
Maintainer | vandijk.roel@gmail.com, v.dijk.bas@gmail.com |
A low level binding to the C levmar (Levenberg-Marquardt) library.
For documentation see: http://www.ics.forth.gr/~lourakis/levmar/
- c'LM_VERSION :: String
- c'LM_OPTS_SZ :: Num a => a
- c'LM_INFO_SZ :: Num a => a
- c'LM_ERROR :: Num a => a
- c'LM_ERROR_LAPACK_ERROR :: Num a => a
- c'LM_ERROR_NO_JACOBIAN :: Num a => a
- c'LM_ERROR_NO_BOX_CONSTRAINTS :: Num a => a
- c'LM_ERROR_FAILED_BOX_CHECK :: Num a => a
- c'LM_ERROR_MEMORY_ALLOCATION_FAILURE :: Num a => a
- c'LM_ERROR_CONSTRAINT_MATRIX_ROWS_GT_COLS :: Num a => a
- c'LM_ERROR_CONSTRAINT_MATRIX_NOT_FULL_ROW_RANK :: Num a => a
- c'LM_ERROR_TOO_FEW_MEASUREMENTS :: Num a => a
- c'LM_ERROR_SINGULAR_MATRIX :: Num a => a
- c'LM_ERROR_SUM_OF_SQUARES_NOT_FINITE :: Num a => a
- c'LM_INIT_MU :: Fractional a => a
- c'LM_STOP_THRESH :: Fractional a => a
- c'LM_DIFF_DELTA :: Fractional a => a
- type Parameters = Ptr
- type Measurements = Ptr
- type Options = Ptr
- type LowerBounds = Ptr
- type UpperBounds = Ptr
- type ConstraintsMatrix = Ptr
- type ConstraintsVector = Ptr
- type Weights = Ptr
- type Info = Ptr
- type Work = Ptr
- type Covar = Ptr
- type AData = Ptr ()
- type NrOfParameters = Int
- type NrOfMeasurements = Int
- type NrOfConstraints = Int
- type MaxIterations = Int
- type Model r = Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> AData -> IO ()
- type Jacobian a = Model a
- withModel :: Model a -> (FunPtr (Model a) -> IO b) -> IO b
- withJacobian :: Jacobian a -> (FunPtr (Jacobian a) -> IO b) -> IO b
- 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 r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- 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 -> ConstraintsMatrix r -> ConstraintsVector r -> NrOfConstraints -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO Int
- 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
- 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
- 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
- c'dlevmar_der :: LevMarDer Double
- c'slevmar_der :: LevMarDer Float
- c'dlevmar_dif :: LevMarDif Double
- c'slevmar_dif :: LevMarDif Float
- c'dlevmar_bc_der :: LevMarBCDer Double
- c'slevmar_bc_der :: LevMarBCDer Float
- c'dlevmar_bc_dif :: LevMarBCDif Double
- c'slevmar_bc_dif :: LevMarBCDif Float
- c'dlevmar_lec_der :: LevMarLecDer Double
- c'slevmar_lec_der :: LevMarLecDer Float
- c'dlevmar_lec_dif :: LevMarLecDif Double
- c'slevmar_lec_dif :: LevMarLecDif Float
- c'dlevmar_blec_der :: LevMarBLecDer Double
- c'slevmar_blec_der :: LevMarBLecDer Float
- c'dlevmar_blec_dif :: LevMarBLecDif Double
- c'slevmar_blec_dif :: LevMarBLecDif Float
- type Errors = Ptr
- type LevMarChkJac r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> NrOfParameters -> NrOfMeasurements -> AData -> Errors r -> IO ()
- c'dlevmar_chkjac :: LevMarChkJac Double
- c'slevmar_chkjac :: LevMarChkJac Float
- type BestFitParameterIx = Int
- type LevMarStddev r = Covar r -> NrOfParameters -> BestFitParameterIx -> IO r
- type LevMarCorCoef r = Covar r -> NrOfParameters -> BestFitParameterIx -> BestFitParameterIx -> IO r
- type LevMarR2 r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> AData -> Result r -> IO Int
- type Result = Ptr
- c'dlevmar_stddev :: LevMarStddev Double
- c'slevmar_stddev :: LevMarStddev Float
- c'dlevmar_corcoef :: LevMarCorCoef Double
- c'slevmar_corcoef :: LevMarCorCoef Float
- c'dlevmar_R2 :: LevMarR2 Double
- c'slevmar_R2 :: LevMarR2 Float
Documentation
The version of the C levmar library.
Maximum sizes of arrays.
c'LM_OPTS_SZ :: Num a => aSource
The maximum size of the options array.
c'LM_INFO_SZ :: Num a => aSource
The size of the info array.
Errors.
c'LM_ERROR :: Num a => aSource
c'LM_ERROR_LAPACK_ERROR :: Num a => aSource
c'LM_ERROR_NO_JACOBIAN :: Num a => aSource
c'LM_ERROR_NO_BOX_CONSTRAINTS :: Num a => aSource
c'LM_ERROR_FAILED_BOX_CHECK :: Num a => aSource
c'LM_ERROR_TOO_FEW_MEASUREMENTS :: Num a => aSource
c'LM_ERROR_SINGULAR_MATRIX :: Num a => aSource
Default values for minimization options.
c'LM_INIT_MU :: Fractional a => aSource
c'LM_STOP_THRESH :: Fractional a => aSource
c'LM_DIFF_DELTA :: Fractional a => aSource
Handy type synonyms
type Parameters = PtrSource
type Measurements = PtrSource
type LowerBounds = PtrSource
type UpperBounds = PtrSource
type ConstraintsMatrix = PtrSource
type ConstraintsVector = PtrSource
type NrOfParameters = IntSource
type NrOfMeasurements = IntSource
type NrOfConstraints = IntSource
type MaxIterations = IntSource
Model & Jacobian.
type Model r = Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> AData -> IO ()Source
Functional relation describing measurements.
Types of the Levenberg-Marquardt algorithms.
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 IntSource
type LevMarDif r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> MaxIterations -> Options r -> Info r -> Work r -> Covar r -> AData -> IO IntSource
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 IntSource
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 IntSource
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 IntSource
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 IntSource
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 IntSource
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 IntSource
Levenberg-Marquardt algorithms.
Jacobian verification
type LevMarChkJac r = FunPtr (Model r) -> FunPtr (Jacobian r) -> Parameters r -> NrOfParameters -> NrOfMeasurements -> AData -> Errors r -> IO ()Source
Utils
type BestFitParameterIx = IntSource
type LevMarStddev r = Covar r -> NrOfParameters -> BestFitParameterIx -> IO rSource
Standard deviation.
type LevMarCorCoef r = Covar r -> NrOfParameters -> BestFitParameterIx -> BestFitParameterIx -> IO rSource
Pearson's correlation coefficient for best-fit parameters.
type LevMarR2 r = FunPtr (Model r) -> Parameters r -> Measurements r -> NrOfParameters -> NrOfMeasurements -> AData -> Result r -> IO IntSource
Coefficient of determination (R2).