diff options
author | Gael Guennebaud <g.gael@free.fr> | 2008-06-26 23:22:26 +0000 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2008-06-26 23:22:26 +0000 |
commit | e5d301dc961ddfaba6e38c497904b2aee378a7cc (patch) | |
tree | 04630bcb26c851447f470d576a98140d6390f278 /Eigen/Sparse | |
parent | c5bd1703cb05f60a00f948a222e3d61eaf7ab5ad (diff) |
various work on the Sparse module:
* added some glue to Eigen/Core (SparseBit, ei_eval, Matrix)
* add two new sparse matrix types:
HashMatrix: based on std::map (for random writes)
LinkedVectorMatrix: array of linked vectors
(for outer coherent writes, e.g. to transpose a matrix)
* add a SparseSetter class to easily set/update any kind of matrices, e.g.:
{ SparseSetter<MatrixType,RandomAccessPattern> wrapper(mymatrix);
for (...) wrapper->coeffRef(rand(),rand()) = rand(); }
* automatic shallow copy for RValue
* and a lot of mess !
plus:
* remove the remaining ArrayBit related stuff
* don't use alloca in product for very large memory allocation
Diffstat (limited to 'Eigen/Sparse')
-rw-r--r-- | Eigen/Sparse | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Eigen/Sparse b/Eigen/Sparse index 6a5eaf6a0..962660cbb 100644 --- a/Eigen/Sparse +++ b/Eigen/Sparse @@ -4,12 +4,20 @@ #include "Core" #include <vector> #include <map> +#include <stdlib.h> +#include <string.h> namespace Eigen { +#include "src/Sparse/SparseUtil.h" +#include "src/Sparse/SparseMatrixBase.h" +#include "src/Sparse/SparseProduct.h" #include "src/Sparse/SparseArray.h" #include "src/Sparse/SparseMatrix.h" +#include "src/Sparse/HashMatrix.h" +#include "src/Sparse/LinkedVectorMatrix.h" #include "src/Sparse/CoreIterators.h" +#include "src/Sparse/SparseSetter.h" } // namespace Eigen |