1 | #ifndef EIGEN_ITERATIVELINEARSOLVERS_MODULE_H |
---|
2 | #define EIGEN_ITERATIVELINEARSOLVERS_MODULE_H |
---|
3 | |
---|
4 | #include "SparseCore" |
---|
5 | #include "OrderingMethods" |
---|
6 | |
---|
7 | #include "src/Core/util/DisableStupidWarnings.h" |
---|
8 | |
---|
9 | /** \ingroup Sparse_modules |
---|
10 | * \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module |
---|
11 | * |
---|
12 | * 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. |
---|
13 | * Those solvers are accessible via the following classes: |
---|
14 | * - ConjugateGradient for selfadjoint (hermitian) matrices, |
---|
15 | * - BiCGSTAB for general square matrices. |
---|
16 | * |
---|
17 | * These iterative solvers are associated with some preconditioners: |
---|
18 | * - IdentityPreconditioner - not really useful |
---|
19 | * - DiagonalPreconditioner - also called JAcobi preconditioner, work very well on diagonal dominant matrices. |
---|
20 | * - IncompleteILUT - incomplete LU factorization with dual thresholding |
---|
21 | * |
---|
22 | * Such problems can also be solved using the direct sparse decomposition modules: SparseCholesky, CholmodSupport, UmfPackSupport, SuperLUSupport. |
---|
23 | * |
---|
24 | * \code |
---|
25 | * #include <Eigen/IterativeLinearSolvers> |
---|
26 | * \endcode |
---|
27 | */ |
---|
28 | |
---|
29 | #include "src/misc/Solve.h" |
---|
30 | #include "src/misc/SparseSolve.h" |
---|
31 | |
---|
32 | #include "src/IterativeLinearSolvers/IterativeSolverBase.h" |
---|
33 | #include "src/IterativeLinearSolvers/BasicPreconditioners.h" |
---|
34 | #include "src/IterativeLinearSolvers/ConjugateGradient.h" |
---|
35 | #include "src/IterativeLinearSolvers/BiCGSTAB.h" |
---|
36 | #include "src/IterativeLinearSolvers/IncompleteLUT.h" |
---|
37 | |
---|
38 | #include "src/Core/util/ReenableStupidWarnings.h" |
---|
39 | |
---|
40 | #endif // EIGEN_ITERATIVELINEARSOLVERS_MODULE_H |
---|