From ece48a645051a9984a78a3197027c9c861a0c702 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Fri, 18 Jun 2010 11:28:30 +0200 Subject: split the Sparse module into multiple ones, and move non stable parts to unsupported/ (see the ML for details) --- unsupported/Eigen/SparseExtra | 67 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 unsupported/Eigen/SparseExtra (limited to 'unsupported/Eigen/SparseExtra') diff --git a/unsupported/Eigen/SparseExtra b/unsupported/Eigen/SparseExtra new file mode 100644 index 000000000..ba44a9c42 --- /dev/null +++ b/unsupported/Eigen/SparseExtra @@ -0,0 +1,67 @@ +#ifndef EIGEN_SPARSE_EXTRA_MODULE_H +#define EIGEN_SPARSE_EXTRA_MODULE_H + +#include "../Eigen/Sparse" + +#include "src/Core/util/DisableMSVCWarnings.h" + +#include +#include +#include +#include +#include + +#ifdef EIGEN_GOOGLEHASH_SUPPORT + #include +#endif + +namespace Eigen { + +/** \defgroup SparseExtra_Module SparseExtra module + * + * This module contains some experimental features extending the sparse module. + * + * \code + * #include + * \endcode + */ + +enum SparseBackend { + DefaultBackend, + Taucs, + Cholmod, + SuperLU, + UmfPack +}; + +// solver flags +enum { + CompleteFactorization = 0x0000, // the default + IncompleteFactorization = 0x0001, + MemoryEfficient = 0x0002, + + // For LLT Cholesky: + SupernodalMultifrontal = 0x0010, + SupernodalLeftLooking = 0x0020, + + // Ordering methods: + NaturalOrdering = 0x0100, // the default + MinimumDegree_AT_PLUS_A = 0x0200, + MinimumDegree_ATA = 0x0300, + ColApproxMinimumDegree = 0x0400, + Metis = 0x0500, + Scotch = 0x0600, + Chaco = 0x0700, + OrderingMask = 0x0f00 +}; + +#include "src/SparseExtra/RandomSetter.h" +#include "src/SparseExtra/SparseLLT.h" +#include "src/SparseExtra/SparseLDLT.h" +#include "src/SparseExtra/SparseLU.h" + +} // namespace Eigen + +#include "src/Core/util/EnableMSVCWarnings.h" + +#endif // EIGEN_SPARSE_EXTRA_MODULE_H -- cgit v1.2.3