mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-15 07:10:37 +08:00
20 lines
726 B
Plaintext
20 lines
726 B
Plaintext
|
|
||
|
namespace Eigen {
|
||
|
|
||
|
/**
|
||
|
|
||
|
\eigenManualPage MatrixfreeSolverExample Matrix-free solvers
|
||
|
|
||
|
Iterative solvers such as ConjugateGradient and BiCGSTAB can be used in a matrix free context. To this end, user must provide a wrapper class inheriting EigenBase<> and implementing the following methods:
|
||
|
- Index rows() and Index cols(): returns number of rows and columns respectively
|
||
|
- operator* with and %Eigen dense column vector (its actual implementation goes in a specialization of the internal::generic_product_impl class)
|
||
|
|
||
|
Eigen::internal::traits<> must also be specialized for the wrapper type.
|
||
|
|
||
|
Here is a complete example wrapping a Eigen::SparseMatrix:
|
||
|
\include matrixfree_cg.cpp
|
||
|
Output: \verbinclude matrixfree_cg.out
|
||
|
|
||
|
*/
|
||
|
|
||
|
}
|