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 thanshow
.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
.
Modules
lapack-0.5.2
- Numeric
- LAPACK
- Example
- Numeric.LAPACK.Format
- Linear
- Numeric.LAPACK.Matrix
- Numeric.LAPACK.Matrix.Array
- Numeric.LAPACK.Matrix.Banded
- Numeric.LAPACK.Matrix.BandedHermitian
- Numeric.LAPACK.Matrix.BandedHermitianPositiveDefinite
- Numeric.LAPACK.Matrix.Block
- Numeric.LAPACK.Matrix.Diagonal
- Numeric.LAPACK.Matrix.Extent
- Numeric.LAPACK.Matrix.Full
- Numeric.LAPACK.Matrix.Function
- Numeric.LAPACK.Matrix.Hermitian
- Numeric.LAPACK.Matrix.HermitianPositiveDefinite
- Numeric.LAPACK.Matrix.Layout
- Numeric.LAPACK.Matrix.Permutation
- Numeric.LAPACK.Matrix.Quadratic
- Numeric.LAPACK.Matrix.Shape
- Numeric.LAPACK.Matrix.Special
- Numeric.LAPACK.Matrix.Square
- Numeric.LAPACK.Matrix.Superscript
- Numeric.LAPACK.Matrix.Symmetric
- Numeric.LAPACK.Matrix.Triangular
- Numeric.LAPACK.Matrix.Type
- Numeric.LAPACK.Orthogonal
- Numeric.LAPACK.Output
- Numeric.LAPACK.Permutation
- Numeric.LAPACK.Scalar
- Numeric.LAPACK.Shape
- Numeric.LAPACK.Singular
- Numeric.LAPACK.Vector
- LAPACK