2015-10-26 11:46:05 +01:00
|
|
|
// This file is part of Eigen, a lightweight C++ template library
|
|
|
|
// for linear algebra.
|
|
|
|
//
|
|
|
|
// This Source Code Form is subject to the terms of the Mozilla
|
|
|
|
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
|
|
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
|
2010-06-18 11:28:30 +02:00
|
|
|
#ifndef EIGEN_CHOLMODSUPPORT_MODULE_H
|
|
|
|
#define EIGEN_CHOLMODSUPPORT_MODULE_H
|
|
|
|
|
2011-11-12 14:11:27 +01:00
|
|
|
#include "SparseCore"
|
2010-06-18 11:28:30 +02:00
|
|
|
|
2011-11-16 09:27:38 +01:00
|
|
|
#include "src/Core/util/DisableStupidWarnings.h"
|
2010-06-18 11:28:30 +02:00
|
|
|
|
2010-09-15 15:24:21 +02:00
|
|
|
#include <cholmod.h>
|
2010-06-18 11:28:30 +02:00
|
|
|
|
2011-11-28 16:36:37 +01:00
|
|
|
/** \ingroup Support_modules
|
2011-11-12 14:11:27 +01:00
|
|
|
* \defgroup CholmodSupport_Module CholmodSupport module
|
2010-06-18 11:28:30 +02:00
|
|
|
*
|
2016-01-27 22:48:40 +01:00
|
|
|
* This module provides an interface to the Cholmod library which is part of the <a
|
2012-06-04 13:24:41 +02:00
|
|
|
* href="http://www.suitesparse.com">suitesparse</a> package. It provides the two following main factorization classes:
|
|
|
|
* - class CholmodSupernodalLLT: a supernodal LLT Cholesky factorization.
|
2022-11-08 23:49:56 +00:00
|
|
|
* - class CholmodDecomposition: a general L(D)LT Cholesky factorization with automatic or explicit runtime selection of
|
|
|
|
* the underlying factorization method (supernodal or simplicial).
|
2012-06-04 13:24:41 +02:00
|
|
|
*
|
|
|
|
* For the sake of completeness, this module also propose the two following classes:
|
|
|
|
* - class CholmodSimplicialLLT
|
|
|
|
* - class CholmodSimplicialLDLT
|
|
|
|
* Note that these classes does not bring any particular advantage compared to the built-in
|
|
|
|
* SimplicialLLT and SimplicialLDLT factorization classes.
|
2010-06-18 11:28:30 +02:00
|
|
|
*
|
|
|
|
* \code
|
|
|
|
* #include <Eigen/CholmodSupport>
|
|
|
|
* \endcode
|
2012-06-21 10:51:22 +02:00
|
|
|
*
|
|
|
|
* 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. The dependencies depend on how cholmod has been compiled. For a
|
|
|
|
* cmake based project, you can use our FindCholmod.cmake module to help you in this task.
|
|
|
|
*
|
2010-06-18 11:28:30 +02:00
|
|
|
*/
|
|
|
|
|
2023-02-08 17:40:31 +00:00
|
|
|
// IWYU pragma: begin_exports
|
2011-11-12 14:11:27 +01:00
|
|
|
#include "src/CholmodSupport/CholmodSupport.h"
|
2023-02-08 17:40:31 +00:00
|
|
|
// IWYU pragma: end_exports
|
2010-06-18 11:28:30 +02:00
|
|
|
|
2011-11-16 09:27:38 +01:00
|
|
|
#include "src/Core/util/ReenableStupidWarnings.h"
|
2010-06-18 11:28:30 +02:00
|
|
|
|
|
|
|
#endif // EIGEN_CHOLMODSUPPORT_MODULE_H
|