mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-03-07 18:27:40 +08:00
* 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
25 lines
565 B
Plaintext
25 lines
565 B
Plaintext
#ifndef EIGEN_SPARSE_MODULE_H
|
|
#define EIGEN_SPARSE_MODULE_H
|
|
|
|
#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
|
|
|
|
#endif // EIGEN_SPARSE_MODULE_H
|