<div dir="ltr"><div dir="ltr"><div>Yes, it returns:</div><div><br></div><div>Linear m_fieldsplit_0_ solve converged due to CONVERGED_RTOL iterations 3</div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jul 19, 2019 at 9:20 AM Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Fri, Jul 19, 2019 at 11:14 AM Michael Wick via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi PETSc team:</div><div><br></div><div>I am a bit confused by the output of converged reason. I set the relative tolerance to be 10^{-3}. In my run, I get the monitor true residual to be as follows.<br></div></div></blockquote><div><br></div><div>Can you run with -ksp_converged_reason?</div><div><br></div><div> Thanks,</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>0 KSP preconditioned resid norm 5.402205955230e-11 true resid norm 9.999870838355e-01 ||r(i)||/||b|| 1.000000000000e+00<br> 1 KSP preconditioned resid norm 2.240069771831e-12 true resid norm 2.329743436488e-01 ||r(i)||/||b|| 2.329773528226e-01<br> 2 KSP preconditioned resid norm 3.394412665922e-13 true resid norm 7.296473323081e-02 ||r(i)||/||b|| 7.296567566748e-02<br> 3 KSP preconditioned resid norm 4.936386334724e-14 true resid norm 1.313944571812e-02 ||r(i)||/||b|| 1.313961543155e-02</div><div><br></div><div>And the converged reason is solve converged due to CONVERGED_RTOL iterations 3. The relative error is quite far from the prescribed tolerance. Is there something I should know about the stopping criteria?<br></div><div><br></div><div>The ks_view output is</div><div>Linear m_fieldsplit_0_ solve converged due to CONVERGED_RTOL iterations 3<br>KSP Object:(m_fieldsplit_0_) 24 MPI processes<br> type: gmres<br> GMRES: restart=100, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement<br> GMRES: happy breakdown tolerance 1e-30<br> maximum iterations=100, initial guess is zero<br> tolerances: relative=0.001, absolute=1e-50, divergence=10000<br> left preconditioning<br> using PRECONDITIONED norm type for convergence test<br>PC Object:(m_fieldsplit_0_) 24 MPI processes<br> type: hypre<br> HYPRE BoomerAMG preconditioning<br> HYPRE BoomerAMG: Cycle type V<br> HYPRE BoomerAMG: Maximum number of levels 25<br> HYPRE BoomerAMG: Maximum number of iterations PER hypre call 1<br> HYPRE BoomerAMG: Convergence tolerance PER hypre call 0<br> HYPRE BoomerAMG: Threshold for strong coupling 0.25<br> HYPRE BoomerAMG: Interpolation truncation factor 0<br> HYPRE BoomerAMG: Interpolation: max elements per row 0<br> HYPRE BoomerAMG: Number of levels of aggressive coarsening 0<br> HYPRE BoomerAMG: Number of paths for aggressive coarsening 1<br> HYPRE BoomerAMG: Maximum row sums 0.9<br> HYPRE BoomerAMG: Sweeps down 1<br> HYPRE BoomerAMG: Sweeps up 1<br> HYPRE BoomerAMG: Sweeps on coarse 1<br> HYPRE BoomerAMG: Relax down symmetric-SOR/Jacobi<br> HYPRE BoomerAMG: Relax up symmetric-SOR/Jacobi<br> HYPRE BoomerAMG: Relax on coarse Gaussian-elimination<br> HYPRE BoomerAMG: Relax weight (all) 1<br> HYPRE BoomerAMG: Outer relax weight (all) 1<br> HYPRE BoomerAMG: Using CF-relaxation<br> HYPRE BoomerAMG: Measure type local<br> HYPRE BoomerAMG: Coarsen type HMIS<br> HYPRE BoomerAMG: Interpolation type ext+i<br> linear system matrix = precond matrix:<br> Mat Object: (m_fieldsplit_0_) 24 MPI processes<br> type: mpiaij<br> rows=115812, cols=115812<br> total: nonzeros=1.34986e+06, allocated nonzeros=1.34986e+06<br> total number of mallocs used during MatSetValues calls =0<br> not using I-node (on process 0) routines</div><div><br></div><div><br></div><div>Thanks,</div><div><br></div><div>Mike<br></div><div><br></div><div><br></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail-m_-5890453106785760367gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>
</blockquote></div></div>