6.1
7 Matrices and Linear Algebra
Performance Warning: Matrix values are arrays, as exported by math/array. The same performance warning applies: operations are currently 25-50 times slower in untyped Racket than in Typed Racket, due to the overhead of checking higher-order contracts. We are working on it.
For now, if you need speed, use the typed/racket language.
(require math/matrix) | package: math-lib |
Like all of math, math/matrix is a work in progress.
Most of the basic algorithms are implemented, but some are still in planning.
Possibly the most useful unimplemented algorithms are
LUP decomposition (currently, LU decomposition is implemented, in matrix-lu)
matrix-solve for triangular matrices
Singular value decomposition (SVD)
Eigendecomposition
Decomposition-based solvers
Pseudoinverse and least-squares solving
All of these are planned for the next Racket release, as well as fast flonum-specific matrix
operations and LAPACK integration.