GMRES and PC_RIGHT

Lisandro Dalcin dalcinl at gmail.com
Mon Jun 8 16:32:37 CDT 2009


On Mon, Jun 8, 2009 at 5:52 PM, Barry Smith<bsmith at mcs.anl.gov> 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 ?


>>
>> On Mon, Jun 8, 2009 at 4:27 PM, Jed Brown<jed at 59a2.org> wrote:
>>>
>>> Barry Smith wrote:
>>>
>>>>   The FGMRES code was written for right preconditioning (but the FGMRES
>>>> algorithm itself does not support left preconditioning.)
>>>
>>> LGMRES has both so that's another option.
>>>
>>> Jed
>>>
>>>
>>
>>
>>
>> --
>> 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
>
>



-- 
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