tolerance

Yongcheng Zhou yongcheng.zhou at gmail.com
Fri Apr 17 00:58:56 CDT 2009


Hi there,

I am wondering what is the real tolerance for stopping the Krylov
iteations. In solving my nonlinear problem I have to call
KSP solvers multiple time.  my tolerance setting is
   KSPSetTolerances(ksp,1.e-5,1.e-5,PETSC_DEFAULT,200);

 After several calls I found that the linear solver does not do
anything, as shown by the convergence history:

 35 KSP preconditioned resid norm 8.570481231422e-05 true resid norm
7.256019920381e+01 ||Ae||/||Ax|| 1.008233844002e-01
 36 KSP preconditioned resid norm 5.210695852340e-06 true resid norm
7.448290646301e+00 ||Ae||/||Ax|| 1.034950123066e-02
  0 KSP preconditioned resid norm 5.210622961414e-06 true resid norm
7.448436220158e+00 ||Ae||/||Ax|| 1.000000000000e+00
  0 KSP preconditioned resid norm 5.210622961414e-06 true resid norm
7.448436220158e+00 ||Ae||/||Ax|| 1.000000000000e+00
  0 KSP preconditioned resid norm 5.210622961414e-06 true resid norm
7.448436220158e+00 ||Ae||/||Ax|| 1.000000000000e+00

where in the last three calls the KSP simply refused to do any
interation. Is there any way I can force the KSP to check the
convergence according to true resid or Ae/Ax  rather than the
preconditoned resid?

Thanks!

Rocky


More information about the petsc-users mailing list