[petsc-users] [petsc-3.2] LSQR new convergence test

Hong Zhang hzhang at mcs.anl.gov
Tue Sep 20 09:35:03 CDT 2011


Alexander:
I'm not sure these two runs use the same tolerance.
The output of petsc-3.2 gives more details about the solver used.
Try a smaller -ksp_rtol, e.g., '-ksp_rtol 1.e-12', which likely allows
more KSP iterations
and produce better final result.
You may also use preconditioner to improve convergence.

Hong

> In petsc31 I had:

>  0 KSP Residual norm 9.386670021557e-17
> ...
>  95 KSP Residual norm 9.341367317075e-18
> Linear solve converged due to CONVERGED_RTOL iterations 95

>  tolerances:  relative=0.1, absolute=1e-50, divergence=10000
>  left preconditioning
>  using PRECONDITIONED norm type for convergence test
> PC Object:
>  type: none
>  linear system matrix = precond matrix:
>  Matrix Object:
>    type=shell, rows=19584, cols=19584
>
> relative residual norm =    0.9951737192872134E-01
>
> Now, with petsc32 I have:
>
>  0 KSP Residual norm 9.386670021557e-17
>  1 KSP Residual norm 8.258308650175e-17
> Linear solve converged due to CONVERGED_RTOL_NORMAL iterations 1
> KSP Object: 12 MPI processes
>  type: lsqr
>  maximum iterations=200, initial guess is zero
>  tolerances:  relative=0.1, absolute=1e-50, divergence=10000
>  left preconditioning
>  using UNPRECONDITIONED norm type for convergence test
> PC Object: 12 MPI processes
>  type: none
>  linear system matrix = precond matrix:
>  Matrix Object:   12 MPI processes
>    type: shell
>    rows=19584, cols=19584
> relative residual norm =    0.8797910900468064E+00
>
> So I found new convergence test here which sets CONVERGED_RTOL_NORMAL:
> http://www.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/KSP/KSPLSQRDefaultConverged.html
>
> The question is, how to interpret this new test and make it works properly
> for me?
> Thanks in advance.
>
> Regards,
> Alexander
>


More information about the petsc-users mailing list