[petsc-users] [KSP] true norm residual

Barry Smith bsmith at mcs.anl.gov
Thu Jan 19 07:39:52 CST 2012


> 
> I use GMRES with MG Preconditioning and GMRES+PCSHELL as smoother. The
> PCSHELL at each level also implies a pre-solve scaling of the solution and
> rhs vectors but these are also unscaled in a post-solve step.

     You cannot safely use GMRES inside GMRES so you should always run this case with -ksp_type fgmres   You get unpredictable behavior if you use a nonlinear preconditioner inside GMRES.

    Barry

     We've debated changing the default KPS to fgmres to prevent this type of error, the problem is that is slight overkill in the case when the preconditioner is linear which is the more common case.


On Jan 19, 2012, at 6:59 AM, domenico.borzacchiello at univ-st-etienne.fr wrote:

> Hi,
> When I solve a linear system and monitor the true norm residual I got
> somethig like this (rtol is set to 1e-6) :
> 
> 
>  Residual norms for stokes_ solve.
>  0 KSP preconditioned resid norm 1.270103385648e+00 true resid norm
> 2.319288792500e+06 ||r(i)||/||b|| 1.667494921925e-01
>  1 KSP preconditioned resid norm 5.669390085343e-01 true resid norm
> 1.031308013796e+06 ||r(i)||/||b|| 7.414776812212e-02
>  2 KSP preconditioned resid norm 2.347505837595e-01 true resid norm
> 5.772588330636e+05 ||r(i)||/||b|| 4.150307524801e-02
>  3 KSP preconditioned resid norm 1.374434713779e-01 true resid norm
> 2.045693242518e+05 ||r(i)||/||b|| 1.470788417874e-02
>  4 KSP preconditioned resid norm 4.177447095627e-02 true resid norm
> 1.127811207483e+05 ||r(i)||/||b|| 8.108604100745e-03
>  5 KSP preconditioned resid norm 1.979676092561e-02 true resid norm
> 1.175236295643e+05 ||r(i)||/||b|| 8.449575410292e-03
>  6 KSP preconditioned resid norm 7.297213488366e-03 true resid norm
> 1.135209489825e+05 ||r(i)||/||b|| 8.161795399204e-03
>  7 KSP preconditioned resid norm 3.043016937820e-03 true resid norm
> 1.156795165002e+05 ||r(i)||/||b|| 8.316989542594e-03
>  8 KSP preconditioned resid norm 1.655126721698e-03 true resid norm
> 1.141320219921e+05 ||r(i)||/||b|| 8.205729606261e-03
>  9 KSP preconditioned resid norm 4.928188158108e-04 true resid norm
> 1.143795580962e+05 ||r(i)||/||b|| 8.223526665338e-03
> 10 KSP preconditioned resid norm 2.038487964289e-04 true resid norm
> 1.141943101596e+05 ||r(i)||/||b|| 8.210207927522e-03
> 11 KSP preconditioned resid norm 1.116161343513e-04 true resid norm
> 1.142236376429e+05 ||r(i)||/||b|| 8.212316480350e-03
> 
> Linear solve converged due to CONVERGED_RTOL iterations 11.
> 
> 
> I'd be thankful if I could get some clarification on a few things:
> 
> - the unpreconditioned norm doesn't converge but if I visualize my
> solution it looks ok
> 
> - the solver says that the solution has converged due to RTOL but it doesn't
>  seem that r(11)/r(0) is less than 1e-6
> 
> I use GMRES with MG Preconditioning and GMRES+PCSHELL as smoother. The
> PCSHELL at each level also implies a pre-solve scaling of the solution and
> rhs vectors but these are also unscaled in a post-solve step.
> 
> 
> thanks,
> Domenico
> 
> 



More information about the petsc-users mailing list