Changelog for hmatrix-

If this renders badly as markdown, see the plain text version

* general pinvTol and improved pinv

* One-dimensional minimization

* Doubly-adaptive quadrature for difficult integrands

* Data.Packed.Foreign (additional FFI helpers)

* NFData instance of Matrix

* Unidimensional root finding

* In Numeric.LinearAlgebra.Util:
  pairwise2D, rowOuters, null1, null1sym, size, unitary, mt, (¦), (?), (¿)

* diagBlock

* meanCov moved to Container

* In Numeric.LinearAlgebra.Util:
  convolution: corr, conv, corr2, conv2, separable, corrMin
  kronecker: vec, vech, dup, vtrans

* integration over infinite intervals

* msadams and msbdf methods for ode

* Numeric.LinearAlgebra.Util

* (<\>) extended to multiple right-hand sides

* orth

* tests moved to new package hmatrix-tests

* geigSH' (symmetric generalized eigensystem)

* mapVectorWithIndex

* exported Mul

* mapMatrixWithIndex{,M,M_}

* flag -fvector default = True

* invlndet (inverse and log of determinant)

* step, cond

* find

* assoc, accum

* Module reorganization

* Support for Float and Complex Float elements (excluding LAPACK computations)

* Binary instances for Vector and Matrix

* optimiseMult

* mapVectorM, mapVectorWithIndexM, unzipVectorWith, and related functions.

* diagRect admits diagonal vectors of any length without producing an error,
  and takes an additional argument for the off-diagonal elements.

* different signatures in some functions

* flag -fvector to optionally use Data.Vector.Storable.Vector

without any conversion.

* Simpler module structure.

* toBlocks, toBlocksEvery

* cholSolve, mbCholSH

* GSL Nonlinear Least-Squares fitting using Levenberg-Marquardt.

* GSL special functions moved to separate package hmatrix-special.

* Added offset of Vector, allowing fast, noncopy subVector (slice).

Vector is now identical to Roman Leshchinskiy's Data.Vector.Storable.Vector, so we can convert from/to them in O(1).

* Removed Data.Packed.Convert, see examples/vector.hs

* odeSolve

* Matrix arithmetic automatically replicates matrix with single row/column

* latexFormat, dispcf

* fromRows/fromColumns now automatically expand vectors of dim 1
  to match the common dimension.
  fromBlocks also replicates single row/column matrices.
  Previously all dimensions had to be exactly the same.

* display utilities: dispf, disps, vecdisp

* scalar

* minimizeV, minimizeVD, using Vector instead of lists.

* runBenchmarks

* singularValues, fullSVD, thinSVD, compactSVD, leftSV, rightSV
  and complete interface to [d|z]gesdd.
  Algorithms based on the SVD of large matrices can now be
  significantly faster.

* eigenvalues, eigenvaluesSH

* linearSolveLS, rq

* ranksv

* buildVector/buildMatrix

* removed NFData instances

* added randomVector, gaussianSample, uniformSample, meanCov

* added rankSVD, nullspaceSVD

* rank, nullspacePrec, and economy svd defined in terms of ranksvd.

* economy svd now admits zero rank matrices and return a "degenerate
  rank 1" decomposition with zero singular value.

* added NFData instances for Matrix and Vector.

* liftVector, liftVector2 replaced by mapVector, zipVector.