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:
Gael Guennebaud
2008-10-19 15:26:28 +00:00
parent 6be0131774
commit ecc6c43dba
5 changed files with 562 additions and 6 deletions

View File

@@ -29,6 +29,27 @@
#endif
#ifdef EIGEN_SUPERLU_SUPPORT
typedef int int_t;
#include "superlu/slu_Cnames.h"
#include "superlu/supermatrix.h"
#include "superlu/slu_util.h"
namespace SuperLU_S {
#include "superlu/slu_sdefs.h"
}
namespace SuperLU_D {
#include "superlu/slu_ddefs.h"
}
namespace SuperLU_C {
#include "superlu/slu_cdefs.h"
}
namespace SuperLU_Z {
#include "superlu/slu_zdefs.h"
}
namespace Eigen { struct SluMatrix; }
#endif
namespace Eigen {
#include "src/Sparse/SparseUtil.h"
@@ -54,6 +75,10 @@ namespace Eigen {
# include "src/Sparse/TaucsSupport.h"
#endif
#ifdef EIGEN_SUPERLU_SUPPORT
# include "src/Sparse/SuperLUSupport.h"
#endif
} // namespace Eigen
#endif // EIGEN_SPARSE_MODULE_H