diff options
Diffstat (limited to 'packages/base')
-rw-r--r-- | packages/base/CHANGELOG | 26 | ||||
-rw-r--r-- | packages/base/hmatrix.cabal | 4 | ||||
-rw-r--r-- | packages/base/src/Numeric/LinearAlgebra.hs | 16 |
3 files changed, 28 insertions, 18 deletions
diff --git a/packages/base/CHANGELOG b/packages/base/CHANGELOG index 0336a28..5b0adc1 100644 --- a/packages/base/CHANGELOG +++ b/packages/base/CHANGELOG | |||
@@ -1,24 +1,32 @@ | |||
1 | 0.17.0.0 | 1 | 0.17.0.0 |
2 | -------- | 2 | -------- |
3 | 3 | ||
4 | * improved matrix extraction (??) and rectangular matrix slices without data copy | 4 | * eigSH, chol, and other functions that work with Hermitian or symmetric matrices |
5 | now take a special "Sym" argument that can be created by means of "sym" | ||
6 | or "mTm". The unchecked versions of those functions have been removed and we | ||
7 | use "trustSym" to create the Sym type when the matrix is known to be Hermitian/symmetric. | ||
8 | |||
9 | * Improved matrix extraction (??) and rectangular matrix slices without data copy | ||
10 | |||
11 | * Basic support of Int32 and Int64 elements | ||
5 | 12 | ||
6 | * basic support of Int32 and Int64 elements | ||
7 | |||
8 | * remap, more general cond, sortIndex | 13 | * remap, more general cond, sortIndex |
9 | 14 | ||
10 | * experimental support of type safe modular arithmetic, including linear | 15 | * Experimental support of type safe modular arithmetic, including linear |
11 | systems and lu factorization | 16 | system solver and LU factorization |
12 | 17 | ||
13 | * elementary row operations and inplace matrix slice products in the ST monad | 18 | * Elementary row operations and inplace matrix slice products in the ST monad |
14 | 19 | ||
15 | * Improved development tools. | 20 | * Improved development tools. |
16 | 21 | ||
17 | * old compatibility modules removed, simpler organization of internal modules | 22 | * Old compatibility modules removed, simpler organization of internal modules |
18 | 23 | ||
19 | * unitary, pairwiseD2, tr' | 24 | * unitary, pairwiseD2, tr' |
20 | 25 | ||
21 | * ldlPacked, ldlSolve | 26 | * ldlPacked, ldlSolve for indefinite symmetric systems (apparently not faster |
27 | than the general solver based on the LU) | ||
28 | |||
29 | * LU, LDL, and QR types for these compact decompositions. | ||
22 | 30 | ||
23 | 0.16.1.0 | 31 | 0.16.1.0 |
24 | -------- | 32 | -------- |
diff --git a/packages/base/hmatrix.cabal b/packages/base/hmatrix.cabal index 7b25349..31bea3e 100644 --- a/packages/base/hmatrix.cabal +++ b/packages/base/hmatrix.cabal | |||
@@ -9,9 +9,9 @@ Homepage: https://github.com/albertoruiz/hmatrix | |||
9 | Synopsis: Numeric Linear Algebra | 9 | Synopsis: Numeric Linear Algebra |
10 | Description: Linear systems, matrix decompositions, and other numerical computations based on BLAS and LAPACK. | 10 | Description: Linear systems, matrix decompositions, and other numerical computations based on BLAS and LAPACK. |
11 | . | 11 | . |
12 | The standard interface is provided by the module "Numeric.LinearAlgebra". | 12 | Standard interface: "Numeric.LinearAlgebra". |
13 | . | 13 | . |
14 | A safer interface with statically checked dimensions is provided by "Numeric.LinearAlgebra.Static". | 14 | Safer interface with statically checked dimensions: "Numeric.LinearAlgebra.Static". |
15 | . | 15 | . |
16 | Code examples: <http://dis.um.es/~alberto/hmatrix/hmatrix.html> | 16 | Code examples: <http://dis.um.es/~alberto/hmatrix/hmatrix.html> |
17 | 17 | ||
diff --git a/packages/base/src/Numeric/LinearAlgebra.hs b/packages/base/src/Numeric/LinearAlgebra.hs index a1c0158..ea54932 100644 --- a/packages/base/src/Numeric/LinearAlgebra.hs +++ b/packages/base/src/Numeric/LinearAlgebra.hs | |||
@@ -35,8 +35,9 @@ module Numeric.LinearAlgebra ( | |||
35 | 35 | ||
36 | -- * Autoconformable dimensions | 36 | -- * Autoconformable dimensions |
37 | -- | | 37 | -- | |
38 | -- In arithmetic operations single-element vectors and matrices | 38 | -- In most operations, single-element vectors and matrices |
39 | -- (created from numeric literals or using 'scalar') automatically | 39 | -- (created from numeric literals or using 'scalar'), and matrices |
40 | -- with just one row or column, automatically | ||
40 | -- expand to match the dimensions of the other operand: | 41 | -- expand to match the dimensions of the other operand: |
41 | -- | 42 | -- |
42 | -- >>> 5 + 2*ident 3 :: Matrix Double | 43 | -- >>> 5 + 2*ident 3 :: Matrix Double |
@@ -45,11 +46,12 @@ module Numeric.LinearAlgebra ( | |||
45 | -- , 5.0, 7.0, 5.0 | 46 | -- , 5.0, 7.0, 5.0 |
46 | -- , 5.0, 5.0, 7.0 ] | 47 | -- , 5.0, 5.0, 7.0 ] |
47 | -- | 48 | -- |
48 | -- >>> matrix 3 [1..9] + matrix 1 [10,20,30] | 49 | -- >>> (4><3) [1..] + row [10,20,30] |
49 | -- (3><3) | 50 | -- (4><3) |
50 | -- [ 11.0, 12.0, 13.0 | 51 | -- [ 11.0, 22.0, 33.0 |
51 | -- , 24.0, 25.0, 26.0 | 52 | -- , 14.0, 25.0, 36.0 |
52 | -- , 37.0, 38.0, 39.0 ] | 53 | -- , 17.0, 28.0, 39.0 |
54 | -- , 20.0, 31.0, 42.0 ] | ||
53 | -- | 55 | -- |
54 | 56 | ||
55 | -- * Products | 57 | -- * Products |