1// This file is part of Eigen, a lightweight C++ template library
4// This Source Code Form is subject to the terms of the Mozilla
5// Public License v. 2.0. If a copy of the MPL was not distributed
6// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
8#ifndef EIGEN_CHOLMODSUPPORT_MODULE_H
9#define EIGEN_CHOLMODSUPPORT_MODULE_H
13#include "src/Core/util/DisableStupidWarnings.h"
17/** \ingroup Support_modules
18 * \defgroup CholmodSupport_Module CholmodSupport module
20 * This module provides an interface to the Cholmod library which is part of the <a
21 * href="http://www.suitesparse.com">suitesparse</a> package. It provides the two following main factorization classes:
22 * - class CholmodSupernodalLLT: a supernodal LLT Cholesky factorization.
23 * - class CholmodDecomposition: a general L(D)LT Cholesky factorization with automatic or explicit runtime selection of
24 * the underlying factorization method (supernodal or simplicial).
26 * For the sake of completeness, this module also propose the two following classes:
27 * - class CholmodSimplicialLLT
28 * - class CholmodSimplicialLDLT
29 * Note that these classes does not bring any particular advantage compared to the built-in
30 * SimplicialLLT and SimplicialLDLT factorization classes.
33 * #include <Eigen/CholmodSupport>
36 * In order to use this module, the cholmod headers must be accessible from the include paths, and your binary must be
37 * linked to the cholmod library and its dependencies. The dependencies depend on how cholmod has been compiled. For a
38 * cmake based project, you can use our FindCholmod.cmake module to help you in this task.
42// IWYU pragma: begin_exports
43#include "src/CholmodSupport/CholmodSupport.h"
44// IWYU pragma: end_exports
46#include "src/Core/util/ReenableStupidWarnings.h"
48#endif // EIGEN_CHOLMODSUPPORT_MODULE_H