[petsc-users] Termination criteria for solving linear system

Barry Smith bsmith at mcs.anl.gov
Tue Feb 2 11:22:23 CST 2010


On Feb 2, 2010, at 6:55 AM, Jed Brown wrote:

> On Tue, 02 Feb 2010 13:41:23 +0100, Thomas Witkowski <thomas.witkowski at tu-dresden.de 
> > wrote:
>> Hallo Markus,
>>
>> I just want to reduce the precision of the solution of the system of
>> linear equations! To do this it is not required (and in my  
>> simulations
>> also not possible) to reduce the number of degrees of freedom. It  
>> is a
>> question of how to define the solver parameters to cancel the  
>> solution
>> process at the right moment.
>
> First, run with -ksp_monitor_true_residual
>
> This shows both preconditioned and unpreconditioned residuals.  There
> are two commonly used tolerances, relative and absolute.  If your
> problem is well-scaled, the relative tolerance is the one that is most
> likely to terminate the iteration.  Run with -ksp_converged_reason to
> see why it converged.  With this information, you can decide which
> tolerance to use (e.g. -ksp_rtol 1e-3 -ksp_atol 1e-6).  Also, some  
> KSPs
> support different norm types, you can set these with -ksp_norm_type.

    Specifically for the BiCG in PETSc you can use -ksp_norm_type  
unpreconditioned and it will use the unpreconditioned residual norm  
for the convergence test.

    Barry

> Jed



More information about the petsc-users mailing list