@hackage lapack0.5.2

Numerical Linear Algebra using LAPACK

This is a high-level interface to LAPACK. It provides solvers for simultaneous linear equations, linear least-squares problems, eigenvalue and singular value problems for matrices with certain kinds of structures.

Features:

  • Based on comfort-array: Allows to precisely express one-column or one-row matrices, as well as dense, square, triangular, banded, symmetric, Hermitian, banded Hermitian, blocked and LU or QR decomposed matrices.

  • Support all data types that are supported by LAPACK, i.e. Float, Double, Complex Float, Complex Double

  • No need for c2hs, hsc, Template Haskell or C helper functions

  • Dependency only on BLAS and LAPACK, no GSL

  • Works with matrices and vectors with zero dimensions. This one is tricky and still leads to surprises since different LAPACK implementations consider different situations as corner cases.

  • No automatic (and dangerous) implicit expansion of singleton vectors or matrices. Instead there are special operators for scaling of vectors and matrices.

  • Separate formatting operator (##): Works better for tuples of matrices and vectors than show. Show is used for code one-liners that can be copied back into Haskell modules. Support for nice formatting in HyperHaskell.

See also: hmatrix.

For examples see the Example modules and the packages sum-pyramid, wuerfelschlange, magico, linear-circuit, resistor-cube.