Merged in f5soh/librepilot/update_credits (pull request #529)
[librepilot.git] / ground / gcs / src / libs / eigen / Eigen / IterativeLinearSolvers
blob957d5750b2cd6f9a429c7140335487a4d8b87b25
1 // This file is part of Eigen, a lightweight C++ template library
2 // for linear algebra.
3 //
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_ITERATIVELINEARSOLVERS_MODULE_H
9 #define EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
11 #include "SparseCore"
12 #include "OrderingMethods"
14 #include "src/Core/util/DisableStupidWarnings.h"
16 /** 
17   * \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module
18   *
19   * This module currently provides iterative methods to solve problems of the form \c A \c x = \c b, where \c A is a squared matrix, usually very large and sparse.
20   * Those solvers are accessible via the following classes:
21   *  - ConjugateGradient for selfadjoint (hermitian) matrices,
22   *  - LeastSquaresConjugateGradient for rectangular least-square problems,
23   *  - BiCGSTAB for general square matrices.
24   *
25   * These iterative solvers are associated with some preconditioners:
26   *  - IdentityPreconditioner - not really useful
27   *  - DiagonalPreconditioner - also called Jacobi preconditioner, work very well on diagonal dominant matrices.
28   *  - IncompleteLUT - incomplete LU factorization with dual thresholding
29   *
30   * Such problems can also be solved using the direct sparse decomposition modules: SparseCholesky, CholmodSupport, UmfPackSupport, SuperLUSupport.
31   *
32     \code
33     #include <Eigen/IterativeLinearSolvers>
34     \endcode
35   */
37 #include "src/IterativeLinearSolvers/SolveWithGuess.h"
38 #include "src/IterativeLinearSolvers/IterativeSolverBase.h"
39 #include "src/IterativeLinearSolvers/BasicPreconditioners.h"
40 #include "src/IterativeLinearSolvers/ConjugateGradient.h"
41 #include "src/IterativeLinearSolvers/LeastSquareConjugateGradient.h"
42 #include "src/IterativeLinearSolvers/BiCGSTAB.h"
43 #include "src/IterativeLinearSolvers/IncompleteLUT.h"
44 #include "src/IterativeLinearSolvers/IncompleteCholesky.h"
46 #include "src/Core/util/ReenableStupidWarnings.h"
48 #endif // EIGEN_ITERATIVELINEARSOLVERS_MODULE_H