Matrix is:module
Simple matrix operation for low-dimensional primitives.
This module corresponds to chapter 4 (Matrix Manipulation) of the GLU
specs.
Matrix datatype and operations.
Every provided example has been tested. Run cabal test for
further tests.
Routines and abstractions for Matrices and basic linear algebra over
fields or rings.
We stick to simple Int indices. Although advanced indices would be
nice e.g. for matrices with sub-matrices, this is not easily
implemented since arrays do only support a lower and an upper bound
but no additional parameters.
ToDo: - Matrix inverse, determinant (see htam:Matrix)
No description available in the introspection data.
A
PangoMatrix specifies a transformation between user-space
and device coordinates.
The transformation is given by
x_device = x_user * matrix->xx + y_user * matrix->xy + matrix->x0;
y_device = x_user * matrix->yx + y_user * matrix->yy + matrix->y0;
Since: 1.6
Algorithms operating on matrices.
These functions should give performance comparable with nested loop C
implementations.
If you care deeply about runtime performance then you may be better
off using a binding to LAPACK, such as hvector.
Basic matrix operations.
There isn't a widely used matrix package for Haskell yet, so we
implement the necessary minimum here.
Read and write matrices as ASCII text files.
The file format is like:
MATRIX -- header
100 100 -- width and height
1.23 1.56 1.23 ... -- data, separated by whitespace
....
A structure capable of holding a 4x4 matrix.
The contents of the
Matrix structure are private and should
never be accessed directly.
attoparsec-based parser and serializer for the NIST
MatrixMarket format [1]. The parser logic originally appeared in
accelerate-examples and it is reused here (courtesy of
T.McDonell and the
accelerate developers) with some
amendments.
References :
- https://math.nist.gov/MatrixMarket/
Matrices of order 3 and efficient multiplication algorithms.
compatibility with previous version, to be removed