template<typename MatrixType_>
class Eigen::IterScaling< MatrixType_ >
iterative scaling algorithm to equilibrate rows and column norms in matrices
This class can be used as a preprocessing tool to accelerate the convergence of iterative methods
This feature is useful to limit the pivoting amount during LU/ILU factorization The scaling strategy as presented here preserves the symmetry of the problem NOTE It is assumed that the matrix does not have empty row or column,
Example with key steps
SparseMatrix<double> A;
IterScaling<SparseMatrix<double> > scal;
scal.computeRef(A);
b = scal.LeftScaling().cwiseProduct(b);
x = scal.RightScaling().cwiseProduct(x);
Matrix< double, Dynamic, 1 > VectorXd
- Template Parameters
-
MatrixType_ | the type of the matrix. It should be a real square sparsematrix |
References : D. Ruiz and B. Ucar, A Symmetry Preserving Algorithm for Matrix Scaling, INRIA Research report RR-7552
- See also
- IncompleteLUT