diff options
author | Gael Guennebaud <g.gael@free.fr> | 2014-07-31 16:43:19 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2014-07-31 16:43:19 +0200 |
commit | d79516660c1f42ae0719ed353614d0977bd40153 (patch) | |
tree | d158a0704f2e0f020b08f2497c818515ce15ef1e /unsupported/Eigen/src/SparseExtra | |
parent | ba694ce8cff79521850eee3285606589925880a5 (diff) |
Make loadMarket use the sparse-matrix index type, thus enabling loading huge matrices.
Diffstat (limited to 'unsupported/Eigen/src/SparseExtra')
-rw-r--r-- | unsupported/Eigen/src/SparseExtra/MarketIO.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/unsupported/Eigen/src/SparseExtra/MarketIO.h b/unsupported/Eigen/src/SparseExtra/MarketIO.h index 1c40d3f7c..25ff4228d 100644 --- a/unsupported/Eigen/src/SparseExtra/MarketIO.h +++ b/unsupported/Eigen/src/SparseExtra/MarketIO.h @@ -133,6 +133,7 @@ template<typename SparseMatrixType> bool loadMarket(SparseMatrixType& mat, const std::string& filename) { typedef typename SparseMatrixType::Scalar Scalar; + typedef typename SparseMatrixType::Index Index; std::ifstream input(filename.c_str(),std::ios::in); if(!input) return false; @@ -142,11 +143,11 @@ bool loadMarket(SparseMatrixType& mat, const std::string& filename) bool readsizes = false; - typedef Triplet<Scalar,int> T; + typedef Triplet<Scalar,Index> T; std::vector<T> elements; - int M(-1), N(-1), NNZ(-1); - int count = 0; + Index M(-1), N(-1), NNZ(-1); + Index count = 0; while(input.getline(buffer, maxBuffersize)) { // skip comments @@ -169,7 +170,7 @@ bool loadMarket(SparseMatrixType& mat, const std::string& filename) } else { - int i(-1), j(-1); + Index i(-1), j(-1); Scalar value; if( internal::GetMarketLine(line, M, N, i, j, value) ) { |