Lisandro Dalcin dalcinl at
Wed Jun 10 16:11:53 CDT 2009

On Mon, Jun 8, 2009 at 6:35 PM, Barry Smith<bsmith at> wrote:
> On Jun 8, 2009, at 4:32 PM, Lisandro Dalcin wrote:
>> On Mon, Jun 8, 2009 at 5:52 PM, Barry Smith<bsmith at> wrote:
>>> On Jun 8, 2009, at 3:46 PM, Lisandro Dalcin wrote:
>>>> Well, all you say that GMRES is not coded for right PC's, however,
>>>> after reviewing (in a hurry) the code for GMRES, it seems to handle
>>>> right preconditioner. Moreover, I've just tested solving (with SNES) a
>>>> steady lid-driven cavity flow in 2d with linear quads using SUPG/PSPG,
>>>> default tolerances, default restart, no diag-scaling, starting with
>>>> zero nonlinear guess ...
>>>  Does nonzero initial guess work properly?
>> I've not tested it, but it seems that KSPInitialResidual (called
>> inside KSPSolve_GMRES) handles this well. Moreover, the GMRES restart
>> itself depends on proper handling of nonzero initial guesses :-)
>>>> in short, using -ksp_right_pc and just
>>>> changing -ksp_type to gmres/fgmres, and ALL the SNES iterates (up to 3
>>>> nonlinear its) and GMRES|FGMRES iterates (64, 169, 177 linear its) are
>>>> almost the same (except the last four digits using default KSP
>>>> monitor).
>>>> Sorry for the insistence, but ...  Am I missing something? Do any of
>>>> you remember exactly what part of GMRES had problems with right
>>>> preconditioning?
>>>  Sadly, no I do not remember the exact issue with right preconditioner; I
>>> was thinking it was more or less completely broken.
>> I'll do a bit more of testing, mainly regarding nonzero initial
>> guesses and diagonal scaling. If the outcome of this is that all is
>> working ... Do you agree about considering this a regression (from
>> 2.3.3) and pushing a fix in release-3.0.0 ?
>   Fine with me.

OK, I've confirmed that all work as expected using a nonzero initial
guess. Then I re-enabled right preconditioner in GMRES, pushed it to
release-3.0.0, and merged in petsc-dev.

Lisandro Dalcín
Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
PTLC - Güemes 3450, (3000) Santa Fe, Argentina
Tel/Fax: +54-(0)342-451.1594

More information about the petsc-dev mailing list