| #ifndef EIGEN_SPARSE_EXTRA_MODULE_H |
| #define EIGEN_SPARSE_EXTRA_MODULE_H |
| |
| #include "../../Eigen/Sparse" |
| |
| #include "../../Eigen/src/Core/util/DisableStupidWarnings.h" |
| |
| #include <vector> |
| #include <map> |
| #include <cstdlib> |
| #include <cstring> |
| #include <algorithm> |
| |
| #ifdef EIGEN_GOOGLEHASH_SUPPORT |
| #include <google/dense_hash_map> |
| #endif |
| |
| namespace Eigen { |
| |
| /** \ingroup Unsupported_modules |
| * \defgroup SparseExtra_Module SparseExtra module |
| * |
| * This module contains some experimental features extending the sparse module. |
| * |
| * \code |
| * #include <Eigen/SparseExtra> |
| * \endcode |
| */ |
| |
| struct DefaultBackend {}; |
| |
| |
| // 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 "../../Eigen/src/misc/Solve.h" |
| |
| #include "src/SparseExtra/RandomSetter.h" |
| #include "src/SparseExtra/Solve.h" |
| #include "src/SparseExtra/Amd.h" |
| #include "src/SparseExtra/SimplicialCholesky.h" |
| |
| #include "src/SparseExtra/SparseLLT.h" |
| #include "src/SparseExtra/SparseLDLTLegacy.h" |
| #include "src/SparseExtra/SparseLU.h" |
| |
| } // namespace Eigen |
| |
| #include "../../Eigen/src/Core/util/ReenableStupidWarnings.h" |
| |
| #endif // EIGEN_SPARSE_EXTRA_MODULE_H |