mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-21 07:19:46 +08:00
45 lines
1.7 KiB
Plaintext
45 lines
1.7 KiB
Plaintext
#ifndef EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
|
|
#define EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
|
|
|
|
#include "SparseCore"
|
|
#include "OrderingMethods"
|
|
|
|
#include "src/Core/util/DisableStupidWarnings.h"
|
|
|
|
/**
|
|
* \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module
|
|
*
|
|
* 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.
|
|
* Those solvers are accessible via the following classes:
|
|
* - ConjugateGradient for selfadjoint (hermitian) matrices,
|
|
* - BiCGSTAB for general square matrices.
|
|
*
|
|
* These iterative solvers are associated with some preconditioners:
|
|
* - IdentityPreconditioner - not really useful
|
|
* - DiagonalPreconditioner - also called JAcobi preconditioner, work very well on diagonal dominant matrices.
|
|
* - IncompleteILUT - incomplete LU factorization with dual thresholding
|
|
*
|
|
* Such problems can also be solved using the direct sparse decomposition modules: SparseCholesky, CholmodSupport, UmfPackSupport, SuperLUSupport.
|
|
*
|
|
* \code
|
|
* #include <Eigen/IterativeLinearSolvers>
|
|
* \endcode
|
|
*/
|
|
|
|
#ifndef EIGEN_TEST_EVALUATORS
|
|
#include "src/misc/Solve.h"
|
|
#include "src/misc/SparseSolve.h"
|
|
#else
|
|
#include "src/IterativeLinearSolvers/SolveWithGuess.h"
|
|
#endif
|
|
|
|
#include "src/IterativeLinearSolvers/IterativeSolverBase.h"
|
|
#include "src/IterativeLinearSolvers/BasicPreconditioners.h"
|
|
#include "src/IterativeLinearSolvers/ConjugateGradient.h"
|
|
#include "src/IterativeLinearSolvers/BiCGSTAB.h"
|
|
#include "src/IterativeLinearSolvers/IncompleteLUT.h"
|
|
|
|
#include "src/Core/util/ReenableStupidWarnings.h"
|
|
|
|
#endif // EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
|