set the default number of iteration to the size of the problem

This commit is contained in:
Gael Guennebaud
2011-12-27 16:38:05 +01:00
parent 15ea999f84
commit bdee0c9baa
3 changed files with 14 additions and 11 deletions

View File

@@ -111,8 +111,8 @@ struct traits<ConjugateGradient<_MatrixType,_UpLo,_Preconditioner> >
* \tparam _Preconditioner the type of the preconditioner. Default is DiagonalPreconditioner
*
* The maximal number of iterations and tolerance value can be controlled via the setMaxIterations()
* and setTolerance() methods. The default are 1000 max iterations and NumTraits<Scalar>::epsilon()
* for the tolerance.
* and setTolerance() methods. The defaults are the size of the problem for the maximal number of iterations
* and NumTraits<Scalar>::epsilon() for the tolerance.
*
* This class can be used as the direct solver classes. Here is a typical usage example:
* \code
@@ -206,12 +206,12 @@ public:
template<typename Rhs,typename Dest>
void _solveWithGuess(const Rhs& b, Dest& x) const
{
m_iterations = Base::m_maxIterations;
m_iterations = Base::maxIterations();
m_error = Base::m_tolerance;
for(int j=0; j<b.cols(); ++j)
{
m_iterations = Base::m_maxIterations;
m_iterations = Base::maxIterations();
m_error = Base::m_tolerance;
typename Dest::ColXpr xj(x,j);