[petsc-dev] KSP convergence test based on error on residual
Barry Smith
bsmith at mcs.anl.gov
Sat Jul 16 22:30:39 CDT 2011
On Jul 16, 2011, at 4:17 PM, Jed Brown wrote:
> On Sat, Jul 16, 2011 at 16:11, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> Jed,
>
> I just remembered something I should have said when we talked about the rewrite of the KSPSPECEST stuff.
>
> If one has the bound on the smallest eigenvalue of the (preconditioned) operator then ones convergence test can take that into account and know that the 2-norm of the error of the linear solver (as opposed to the 2 norm of the residual) is less than some tolerance. Of course the KSPSPECEST can give us this information, even though Mark doesn't believe it is accurate enough :-), with enough iterations it can be.
>
> I would expect it to become a good approximation when the KSP has converged on the low-frequency modes. I think Mark's objection is that a few iterations are usually nowhere near actually converging, so you can only use the estimate in a meaningful way to estimate the high end of the spectrum.
>
> So ideally we'd have options that allowed convergence tests to use the estimate of the error norm instead of just the residual norm.
>
> How would you suggest handling restarts?
Restarts (at least my understanding) ruin the approximation and start all over again (perhaps there is some way to handle this). Regardless if one is solving two or more linear systems with the same (over very similar) matrices one could get the good estimate during the first solve (over solving if needed with a higher restart to get the good eigenvalue estimate) and then use that estimate for the later solvers, which don't need to be over solves.
I just brought this up to see if we can fit this into the same framework needed for the estimates used for Chebychev.
Barry
More information about the petsc-dev
mailing list