1*bf2c3715SXin Li// This file is part of Eigen, a lightweight C++ template library 2*bf2c3715SXin Li// for linear algebra. 3*bf2c3715SXin Li// 4*bf2c3715SXin Li// This Source Code Form is subject to the terms of the Mozilla 5*bf2c3715SXin Li// Public License v. 2.0. If a copy of the MPL was not distributed 6*bf2c3715SXin Li// with this file, You can obtain one at http://mozilla.org/MPL/2.0/. 7*bf2c3715SXin Li 8*bf2c3715SXin Li#ifndef EIGEN_CHOLESKY_MODULE_H 9*bf2c3715SXin Li#define EIGEN_CHOLESKY_MODULE_H 10*bf2c3715SXin Li 11*bf2c3715SXin Li#include "Core" 12*bf2c3715SXin Li#include "Jacobi" 13*bf2c3715SXin Li 14*bf2c3715SXin Li#include "src/Core/util/DisableStupidWarnings.h" 15*bf2c3715SXin Li 16*bf2c3715SXin Li/** \defgroup Cholesky_Module Cholesky module 17*bf2c3715SXin Li * 18*bf2c3715SXin Li * 19*bf2c3715SXin Li * 20*bf2c3715SXin Li * This module provides two variants of the Cholesky decomposition for selfadjoint (hermitian) matrices. 21*bf2c3715SXin Li * Those decompositions are also accessible via the following methods: 22*bf2c3715SXin Li * - MatrixBase::llt() 23*bf2c3715SXin Li * - MatrixBase::ldlt() 24*bf2c3715SXin Li * - SelfAdjointView::llt() 25*bf2c3715SXin Li * - SelfAdjointView::ldlt() 26*bf2c3715SXin Li * 27*bf2c3715SXin Li * \code 28*bf2c3715SXin Li * #include <Eigen/Cholesky> 29*bf2c3715SXin Li * \endcode 30*bf2c3715SXin Li */ 31*bf2c3715SXin Li 32*bf2c3715SXin Li#include "src/Cholesky/LLT.h" 33*bf2c3715SXin Li#include "src/Cholesky/LDLT.h" 34*bf2c3715SXin Li#ifdef EIGEN_USE_LAPACKE 35*bf2c3715SXin Li#ifdef EIGEN_USE_MKL 36*bf2c3715SXin Li#include "mkl_lapacke.h" 37*bf2c3715SXin Li#else 38*bf2c3715SXin Li#include "src/misc/lapacke.h" 39*bf2c3715SXin Li#endif 40*bf2c3715SXin Li#include "src/Cholesky/LLT_LAPACKE.h" 41*bf2c3715SXin Li#endif 42*bf2c3715SXin Li 43*bf2c3715SXin Li#include "src/Core/util/ReenableStupidWarnings.h" 44*bf2c3715SXin Li 45*bf2c3715SXin Li#endif // EIGEN_CHOLESKY_MODULE_H 46