mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
sparse module: add preliminary support for direct sparse LU solver
using SuperLU. Calling SuperLU was very painful, but it was worth it, it seems to be damn fast !
This commit is contained in:
@@ -247,7 +247,7 @@ class SparseMatrix
|
||||
typedef typename ei_cleantype<OtherCopy>::type _OtherCopy;
|
||||
|
||||
resize(other.rows(), other.cols());
|
||||
Map<VectorXi>(m_outerIndex,outerSize()).setZero();
|
||||
Eigen::Map<VectorXi>(m_outerIndex,outerSize()).setZero();
|
||||
// pass 1
|
||||
// FIXME the above copy could be merged with that pass
|
||||
for (int j=0; j<otherCopy.outerSize(); ++j)
|
||||
@@ -317,6 +317,11 @@ class SparseMatrix
|
||||
cholmod_sparse asCholmodMatrix();
|
||||
#endif
|
||||
|
||||
#ifdef EIGEN_SUPERLU_SUPPORT
|
||||
static SparseMatrix Map(SluMatrix& sluMatrix);
|
||||
SluMatrix asSluMatrix();
|
||||
#endif
|
||||
|
||||
/** Destructor */
|
||||
inline ~SparseMatrix()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user