mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-09-12 17:33:15 +08:00
bug #897: Update unsupported iterative solvers based on IterativeSolverBased.
This commit is contained in:
parent
87629cd639
commit
d10d6a40dd
@ -150,7 +150,7 @@ class DGMRES : public IterativeSolverBase<DGMRES<_MatrixType,_Preconditioner> >
|
|||||||
m_error = Base::m_tolerance;
|
m_error = Base::m_tolerance;
|
||||||
|
|
||||||
typename Dest::ColXpr xj(x,j);
|
typename Dest::ColXpr xj(x,j);
|
||||||
dgmres(*mp_matrix, b.col(j), xj, Base::m_preconditioner);
|
dgmres(mp_matrix, b.col(j), xj, Base::m_preconditioner);
|
||||||
}
|
}
|
||||||
m_info = failed ? NumericalIssue
|
m_info = failed ? NumericalIssue
|
||||||
: m_error <= Base::m_tolerance ? Success
|
: m_error <= Base::m_tolerance ? Success
|
||||||
|
@ -327,7 +327,7 @@ public:
|
|||||||
m_error = Base::m_tolerance;
|
m_error = Base::m_tolerance;
|
||||||
|
|
||||||
typename Dest::ColXpr xj(x,j);
|
typename Dest::ColXpr xj(x,j);
|
||||||
if(!internal::gmres(*mp_matrix, b.col(j), xj, Base::m_preconditioner, m_iterations, m_restart, m_error))
|
if(!internal::gmres(mp_matrix, b.col(j), xj, Base::m_preconditioner, m_iterations, m_restart, m_error))
|
||||||
failed = true;
|
failed = true;
|
||||||
}
|
}
|
||||||
m_info = failed ? NumericalIssue
|
m_info = failed ? NumericalIssue
|
||||||
|
@ -259,7 +259,7 @@ namespace Eigen {
|
|||||||
m_error = Base::m_tolerance;
|
m_error = Base::m_tolerance;
|
||||||
|
|
||||||
typename Dest::ColXpr xj(x,j);
|
typename Dest::ColXpr xj(x,j);
|
||||||
internal::minres(mp_matrix->template selfadjointView<UpLo>(), b.col(j), xj,
|
internal::minres(mp_matrix.template selfadjointView<UpLo>(), b.col(j), xj,
|
||||||
Base::m_preconditioner, m_iterations, m_error);
|
Base::m_preconditioner, m_iterations, m_error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user