[petsc-dev] [petsc-users] unreliable AMG in PETSc
Barry Smith
bsmith at mcs.anl.gov
Mon Oct 27 17:17:56 CDT 2014
> On Oct 27, 2014, at 4:56 PM, Matthew Knepley <knepley at gmail.com> wrote:
>
> On Mon, Oct 27, 2014 at 4:53 PM, Jed Brown <jed at jedbrown.org> wrote:
> Barry Smith <bsmith at mcs.anl.gov> writes:
> > How can we insure that that the smoother is SPD? Which are known to be. In his case it was Richardson + SSOR on a bunch of processes.
>
> The Richardson scaling cannot be too ambitious and the SSOR needs to be
> an SPD operator. I think this is true any time the forward and back
> sweep is stable, which is guaranteed for an M-matrix, for example.
Pretty sure that guy’s matrix is not an M-matrix.
>
> I'm not aware of an inexpensive way to guarantee stability/SPD smoother
> for a general matrix, and even if you could choose parameters to make it
> so, you might end up with such aggressive under-relaxation that the
> solver configuration is not useful.
>
> Focus on debuggability or automation?
>
> Definitely debuggability. It would be great if we automatically diagnose the failure of definiteness (I assume
> all these retain symmetry). Maybe we are already doing this. Then we should improve the error message
> to give the user easy options for fixing it.
Well, we did report the entire preconditioner was indefinite, but not what part of the preconditioner caused it to be indefinite.
Could run the smoother with CG for many steps and see if that reports indefiniteness. Would it, I’m not even sure of that.
We could easily add a test MatIsNonsingularM() i.e. a_ii > =0 a_ij <= 0, useful information but I don’t think it helps the user “fix” the problem.
Barry
>
> Matt
>
> --
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
More information about the petsc-dev
mailing list