diff --git a/unsupported/Eigen/src/IterativeSolvers/BiCGSTAB.h b/unsupported/Eigen/src/IterativeSolvers/BiCGSTAB.h index d04158bb6..ee2ab128d 100644 --- a/unsupported/Eigen/src/IterativeSolvers/BiCGSTAB.h +++ b/unsupported/Eigen/src/IterativeSolvers/BiCGSTAB.h @@ -45,7 +45,7 @@ void bicgstab(const MatrixType& mat, const Rhs& rhs, Dest& x, using std::abs; typedef typename Dest::RealScalar RealScalar; typedef typename Dest::Scalar Scalar; - typedef Dest VectorType; + typedef Matrix VectorType; RealScalar tol = tol_error; int maxIters = iters; @@ -217,11 +217,15 @@ public: /** \internal */ template void _solve(const Rhs& b, Dest& x) const - { - m_iterations = Base::m_maxIterations; - m_error = Base::m_tolerance; - - internal::bicgstab(*mp_matrix, b, x, Base::m_preconditioner, m_iterations, m_error); + { + for(int j=0; j