[petsc-users] unreliable AMG in PETSc
Barry Smith
bsmith at mcs.anl.gov
Thu Oct 23 12:57:11 CDT 2014
> On Oct 23, 2014, at 9:13 AM, Jed Brown <jed at jedbrown.org> wrote:
>
> Arne Morten Kvarving <arne.morten.kvarving at sintef.no> writes:
>
>>
>
> There are many ways to get a preconditioner that is not SPD.
It is any interesting question if there is anything one can “do” to a preconditioner to insure that it is SPD or detect if it may not be BEFORE actually running the CG with that preconditioned. As I said before I don’t know of any theory or work on this in general. (There are specific cases like when using ICC one can shift the diagonal of the matrix to insure the resulting “factor” is positive definite (we do this in PETSc) but for something complicated like a multigrid preconditioner I don’t have a clue.)
PETSc iterative solvers do not adaptively “fix themselves” when problems occur; for an industrial situation one might want them to. For example, if CG fails with indefinite matrix or preconditioned it could, in theory, switch itself automatically to GMRES. Or if the MG convergence is slow add more smoothing steps or a different smoother. We did a little research work on this a number of years ago but have never tried to package up making the solvers more robust by reconfiguring themselves in this way.
Barry
> It's no
> safer if the matrix is marked SPD. And Richardson smoothing is not
> inherently problematic; more like the relaxation paramater is easy to
> mess up.
More information about the petsc-users
mailing list