diff options
Diffstat (limited to 'lib/Numeric/HMatrix.hs')
-rw-r--r-- | lib/Numeric/HMatrix.hs | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/lib/Numeric/HMatrix.hs b/lib/Numeric/HMatrix.hs new file mode 100644 index 0000000..8e0b4a2 --- /dev/null +++ b/lib/Numeric/HMatrix.hs | |||
@@ -0,0 +1,117 @@ | |||
1 | ----------------------------------------------------------------------------- | ||
2 | {- | | ||
3 | Module : Numeric.HMatrix | ||
4 | Copyright : (c) Alberto Ruiz 2006-14 | ||
5 | License : GPL | ||
6 | |||
7 | Maintainer : Alberto Ruiz | ||
8 | Stability : provisional | ||
9 | |||
10 | This module reexports the most common Linear Algebra functions. | ||
11 | |||
12 | -} | ||
13 | ----------------------------------------------------------------------------- | ||
14 | module Numeric.HMatrix ( | ||
15 | |||
16 | -- * Basic types and data processing | ||
17 | module Numeric.HMatrix.Data, | ||
18 | |||
19 | -- | The standard numeric classes are defined elementwise. | ||
20 | -- | ||
21 | -- >>> fromList [1,2,3] * fromList [3,0,-2 :: Double] | ||
22 | -- fromList [3.0,0.0,-6.0] | ||
23 | -- | ||
24 | -- In arithmetic operations single-element vectors and matrices automatically | ||
25 | -- expand to match the dimensions of the other operand. | ||
26 | -- | ||
27 | -- >>> 2 * ident 3 | ||
28 | -- 2 * ident 3 :: Matrix Double | ||
29 | -- (3><3) | ||
30 | -- [ 2.0, 0.0, 0.0 | ||
31 | -- , 0.0, 2.0, 0.0 | ||
32 | -- , 0.0, 0.0, 2.0 ] | ||
33 | -- | ||
34 | |||
35 | -- * Products | ||
36 | (<>), (ยท), outer, kronecker, cross, | ||
37 | optimiseMult, scale, | ||
38 | sumElements, prodElements, absSum, | ||
39 | |||
40 | -- * Linear Systems | ||
41 | (<\>), | ||
42 | linearSolve, | ||
43 | linearSolveLS, | ||
44 | linearSolveSVD, | ||
45 | luSolve, | ||
46 | cholSolve, | ||
47 | |||
48 | -- * Inverse and pseudoinverse | ||
49 | inv, pinv, pinvTol, | ||
50 | |||
51 | -- * Determinant and rank | ||
52 | rcond, rank, ranksv, | ||
53 | det, invlndet, | ||
54 | |||
55 | -- * Singular value decomposition | ||
56 | svd, | ||
57 | fullSVD, | ||
58 | thinSVD, | ||
59 | compactSVD, | ||
60 | singularValues, | ||
61 | leftSV, rightSV, | ||
62 | |||
63 | -- * Eigensystems | ||
64 | eig, eigSH, eigSH', | ||
65 | eigenvalues, eigenvaluesSH, eigenvaluesSH', | ||
66 | geigSH', | ||
67 | |||
68 | -- * QR | ||
69 | qr, rq, | ||
70 | |||
71 | -- * Cholesky | ||
72 | chol, cholSH, mbCholSH, | ||
73 | |||
74 | -- * Hessenberg | ||
75 | hess, | ||
76 | |||
77 | -- * Schur | ||
78 | schur, | ||
79 | |||
80 | -- * LU | ||
81 | lu, luPacked, | ||
82 | |||
83 | -- * Matrix functions | ||
84 | expm, | ||
85 | sqrtm, | ||
86 | matFunc, | ||
87 | |||
88 | -- * Nullspace | ||
89 | nullspacePrec, | ||
90 | nullVector, | ||
91 | nullspaceSVD, | ||
92 | null1, null1sym, | ||
93 | |||
94 | orth, | ||
95 | |||
96 | -- * Norms | ||
97 | norm1, norm2, normInf, | ||
98 | |||
99 | -- * Correlation and Convolution | ||
100 | corr, conv, corrMin, corr2, conv2, | ||
101 | |||
102 | -- * Random arrays | ||
103 | rand, randn, RandDist(..), randomVector, gaussianSample, uniformSample, | ||
104 | |||
105 | -- * Misc | ||
106 | meanCov, peps, relativeError, haussholder | ||
107 | ) where | ||
108 | |||
109 | import Numeric.HMatrix.Data | ||
110 | |||
111 | import Numeric.Matrix() | ||
112 | import Numeric.Vector() | ||
113 | import Numeric.Container | ||
114 | import Numeric.LinearAlgebra.Algorithms | ||
115 | import Numeric.LinearAlgebra.Util | ||
116 | |||
117 | |||