packages feed

l-bfgs-b-0.1.0.1: l-bfgs-b.cabal

Name:                l-bfgs-b
Version:             0.1.0.1
Synopsis:            Bindings to L-BFGS-B, Fortran code for limited-memory quasi-Newton bound-constrained optimization
Homepage:            http://nonempty.org/software/haskell-l-bfgs-b
License:             BSD3
License-file:        LICENSE
Author:              Gard Spreemann
Maintainer:          Gard Spreemann <gspreemann@gmail.com>
Copyright:           2013-2014 Gard Spreemann
Category:            Math
Build-type:          Simple
Cabal-version:       >=1.4
Description:         Bindings to L-BFGS-B, Fortran code for limited-memory quasi-Newton bound-constrained optimization.
                     .
		     L-BFGS-B is a Fortran library for limited-memory quasi-Newton bound-constrained optimization written
		     by Ciyou Zhu, Richard Byrd, Jorge Nocedal and Jose Luis Morales. More information can be found on its
		     homepage <http://users.eecs.northwestern.edu/~nocedal/lbfgsb.html>, or in [1].
                     .
                     The L-BFGS-B Fortran code is not included in this package, as I consider it a dependency. This package expects to
		     be able to link against version 3.0 of the L-BFGS-B code, as built by a relatively recent version of gfortran.
                     Instructions on how to build L-BFGS-B as a shared library
                     can be found at <http://nonempty.org/software/haskell-l-bfgs-b>.
		     .
                     The functions provided in this package wrap FFI calls in 'unsafePerformIO', which among other things means that
                     the called L-BFGS-B code should not output anything. The relevant @iprint@ flag is thus set negative to suppress
                     output as specified in the L-BFGS-B code. However, there are two places in said code where the flag is ignored
                     and output still occurs. If it bothers you that code exposed as pure prints things, see 
                     <http://nonempty.org/software/haskell-l-bfgs-b> for information on a simple patch for L-BFGS-B. The SciPy project
                     has described the same behavior in <https://github.com/scipy/scipy/issues/2261>.
                     .
                     The code assumes that your Haskell compiler's Doubles are IEEE-754 doubles.
                     .
		     Example on usage can be found in the included @examples@ directiory.
                     .
                     The current version has only been lightly tested, and should not be trusted for serious work. Feedback is appreciated.
                     .
                     Changes in version 0.1.0.1:
                     .
                     * Check some function arguments for sanity and cause a runtime error otherwise.
                     .
                     * Add note above on double representation.
                     .
                     * Added TODO below.
                     .
                     Changes in version 0.1:
                     .
		     * There has only been cursory testing, so do not trust these bindings yet.
		     .
                     * Initial release.
		     .
                     TODO:
                     .
                     * Be more generic with regards to vector types?
                     . 
		     .
		     \[1] R. H. Byrd, P. Lu and J. Nocedal. A Limited Memory Algorithm for Bound Constrained Optimization, (1995), SIAM Journal on Scientific and Statistical Computing , 16, 5, pp. 1190-1208.

Library
  Exposed-modules:         Numeric.LBFGSB,
                           Numeric.LBFGSB.Convenience,
                           Numeric.LBFGSB.Result
  Other-modules:         
  hs-source-dirs:          src
  Build-depends:           base >= 4 && <5, vector
  c-sources:               
  cc-options:              
  extra-libraries:         lbfgsb
  include-dirs: