Home | History | Annotate | Download | only in SparseLU

Lines Matching refs:Index

37     typedef _Index Index;
38 typedef Matrix<Index,Dynamic,1> IndexVector;
45 MappedSuperNodalMatrix(Index m, Index n, ScalarVector& nzval, IndexVector& nzval_colptr, IndexVector& rowind,
61 void setInfos(Index m, Index n, ScalarVector& nzval, IndexVector& nzval_colptr, IndexVector& rowind,
78 Index rows() { return m_row; }
83 Index cols() { return m_col; }
99 Index* colIndexPtr()
104 const Index* colIndexPtr() const
112 Index* rowIndex() { return m_rowind; }
114 const Index* rowIndex() const
122 Index* rowIndexPtr() { return m_rowind_colptr; }
124 const Index* rowIndexPtr() const
132 Index* colToSup() { return m_col_to_sup; }
134 const Index* colToSup() const
141 Index* supToCol() { return m_sup_to_col; }
143 const Index* supToCol() const
151 Index nsuper() const
164 Index m_row; // Number of rows
165 Index m_col; // Number of columns
166 Index m_nsuper; // Number of supernodes
168 Index* m_nzval_colptr; //nzval_colptr[j] Stores the location in nzval[] which starts column j
169 Index* m_rowind; // Array of compressed row indices of rectangular supernodes
170 Index* m_rowind_colptr; //rowind_colptr[j] stores the location in rowind[] which starts column j
171 Index* m_col_to_sup; // col_to_sup[j] is the supernode number to which column j belongs
172 Index* m_sup_to_col; //sup_to_col[s] points to the starting column of the s-th supernode
181 template<typename Scalar, typename Index>
182 class MappedSuperNodalMatrix<Scalar,Index>::InnerIterator
185 InnerIterator(const MappedSuperNodalMatrix& mat, Index outer)
205 inline Index index() const { return m_matrix.rowIndex()[m_idrow]; }
206 inline Index row() const { return index(); }
207 inline Index col() const { return m_outer; }
209 inline Index supIndex() const { return m_supno; }
219 const Index m_outer; // Current column
220 const Index m_supno; // Current SuperNode number
221 Index m_idval; // Index to browse the values in the current column
222 const Index m_startidval; // Start of the column value
223 const Index m_endidval; // End of the column value
224 Index m_idrow; // Index to browse the row indices
225 Index m_endidrow; // End index of row indices of the current column
232 template<typename Scalar, typename Index>
234 void MappedSuperNodalMatrix<Scalar,Index>::solveInPlace( MatrixBase<Dest>&X) const
236 Index n = X.rows();
237 Index nrhs = X.cols();
241 for (Index k = 0; k <= nsuper(); k ++)
243 Index fsupc = supToCol()[k]; // First column of the current supernode
244 Index istart = rowIndexPtr()[fsupc]; // Pointer index to the subscript of the current column
245 Index nsupr = rowIndexPtr()[fsupc+1] - istart; // Number of rows in the current supernode
246 Index nsupc = supToCol()[k+1] - fsupc; // Number of columns in the current supernode
247 Index nrow = nsupr - nsupc; // Number of rows in the non-diagonal part of the supernode
248 Index irow; //Current index row
252 for (Index j = 0; j < nrhs; j++)
266 Index luptr = colIndexPtr()[fsupc];
267 Index lda = colIndexPtr()[fsupc+1] - luptr;
279 for (Index j = 0; j < nrhs; j++)
281 Index iptr = istart + nsupc;
282 for (Index i = 0; i < nrow; i++)