1 #ifndef EIGEN_CHOLMODSUPPORT_MODULE_H 2 #define EIGEN_CHOLMODSUPPORT_MODULE_H 3 4 #include "SparseCore" 5 6 #include "src/Core/util/DisableStupidWarnings.h" 7 8 extern "C" { 9 #include <cholmod.h> 10 } 11 12 /** \ingroup Support_modules 13 * \defgroup CholmodSupport_Module CholmodSupport module 14 * 15 * This module provides an interface to the Cholmod library which is part of the <a href="http://www.cise.ufl.edu/research/sparse/SuiteSparse/">suitesparse</a> package. 16 * It provides the two following main factorization classes: 17 * - class CholmodSupernodalLLT: a supernodal LLT Cholesky factorization. 18 * - class CholmodDecomposiiton: a general L(D)LT Cholesky factorization with automatic or explicit runtime selection of the underlying factorization method (supernodal or simplicial). 19 * 20 * For the sake of completeness, this module also propose the two following classes: 21 * - class CholmodSimplicialLLT 22 * - class CholmodSimplicialLDLT 23 * Note that these classes does not bring any particular advantage compared to the built-in 24 * SimplicialLLT and SimplicialLDLT factorization classes. 25 * 26 * \code 27 * #include <Eigen/CholmodSupport> 28 * \endcode 29 * 30 * In order to use this module, the cholmod headers must be accessible from the include paths, and your binary must be linked to the cholmod library and its dependencies. 31 * The dependencies depend on how cholmod has been compiled. 32 * For a cmake based project, you can use our FindCholmod.cmake module to help you in this task. 33 * 34 */ 35 36 #include "src/misc/Solve.h" 37 #include "src/misc/SparseSolve.h" 38 39 #include "src/CholmodSupport/CholmodSupport.h" 40 41 42 #include "src/Core/util/ReenableStupidWarnings.h" 43 44 #endif // EIGEN_CHOLMODSUPPORT_MODULE_H 45 46