aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/SparseExtra
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2010-06-18 11:28:30 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2010-06-18 11:28:30 +0200
commitece48a645051a9984a78a3197027c9c861a0c702 (patch)
treec52c6400b2a839f62877c168c193fc024ccf68d6 /unsupported/Eigen/SparseExtra
parent22d07ec2e3324d09c7dff36c9642f0ed74f3e994 (diff)
split the Sparse module into multiple ones, and move non stable parts to unsupported/
(see the ML for details)
Diffstat (limited to 'unsupported/Eigen/SparseExtra')
-rw-r--r--unsupported/Eigen/SparseExtra67
1 files changed, 67 insertions, 0 deletions
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 <vector>
+#include <map>
+#include <cstdlib>
+#include <cstring>
+#include <algorithm>
+
+#ifdef EIGEN_GOOGLEHASH_SUPPORT
+ #include <google/dense_hash_map>
+#endif
+
+namespace Eigen {
+
+/** \defgroup SparseExtra_Module SparseExtra module
+ *
+ * This module contains some experimental features extending the sparse module.
+ *
+ * \code
+ * #include <Eigen/SparseExtra>
+ * \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