<div dir="ltr"><div><div>The solver goes on for some timesteps, then it gets hung up in step 10. The output is as follows:<br><br>  28 SNES Function norm 7.825649542035e-06 <br>      0 KSP preconditioned resid norm 5.335581451751e+00 true resid norm 7.825649542035e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 3.875747966342e-13 true resid norm 3.082821236889e-15 ||r(i)||/||b|| 3.939380648635e-10<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   29 SNES Function norm 7.825641650401e-06 <br>      0 KSP preconditioned resid norm 5.335568660325e+00 true resid norm 7.825641650401e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 1.169064646930e-13 true resid norm 2.949237553452e-15 ||r(i)||/||b|| 3.768684646199e-10<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   30 SNES Function norm 7.825633758775e-06 <br>      0 KSP preconditioned resid norm 5.335575714181e+00 true resid norm 7.825633758775e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 3.626528075820e-13 true resid norm 7.454935467844e-16 ||r(i)||/||b|| 9.526302530432e-11<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   31 SNES Function norm 7.825625867144e-06 <br>      0 KSP preconditioned resid norm 5.335574289757e+00 true resid norm 7.825625867144e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 1.220021201426e-13 true resid norm 6.140701297052e-16 ||r(i)||/||b|| 7.846913973787e-11<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   32 SNES Function norm 7.825617975525e-06 <br>      0 KSP preconditioned resid norm 5.335556211708e+00 true resid norm 7.825617975525e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 3.238615954344e-14 true resid norm 1.639170816829e-15 ||r(i)||/||b|| 2.094621564655e-10<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   33 SNES Function norm 7.825610083913e-06 <br>      0 KSP preconditioned resid norm 5.335545135100e+00 true resid norm 7.825610083913e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 8.328043430360e-14 true resid norm 7.902728010647e-16 ||r(i)||/||b|| 1.009854557780e-10<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   34 SNES Function norm 7.825609294752e-06 <br>      0 KSP preconditioned resid norm 5.335519330054e+00 true resid norm 7.825609294752e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 1.176339150741e-13 true resid norm 2.137240765649e-15 ||r(i)||/||b|| 2.731085446703e-10<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   35 SNES Function norm 7.825608505592e-06 <br>      0 KSP preconditioned resid norm 5.335552250936e+00 true resid norm 7.825608505592e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 2.388837462586e-13 true resid norm 3.899327292367e-16 ||r(i)||/||b|| 4.982778386601e-11<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   36 SNES Function norm 7.825607716432e-06 <br>      0 KSP preconditioned resid norm 1.017554264638e-01 true resid norm 7.825607716432e-06 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 2.758703070887e-14 true resid norm 1.990491888342e-16 ||r(i)||/||b|| 2.543562059932e-11<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   37 SNES Function norm 3.815837655573e-08 <br>      0 KSP preconditioned resid norm 7.197730150406e+00 true resid norm 3.815837655573e-08 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 7.114599045039e-12 true resid norm 4.763264085142e-16 ||r(i)||/||b|| 1.248287929175e-08<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   38 SNES Function norm 3.790245121284e-08 <br>      0 KSP preconditioned resid norm 7.127517791828e+00 true resid norm 3.790245121284e-08 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 2.500976336448e-11 true resid norm 1.692661771456e-15 ||r(i)||/||b|| 4.465837214461e-08<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>   39 SNES Function norm 3.758101652998e-08 <br>      0 KSP preconditioned resid norm 1.931834799209e-02 true resid norm 3.758101652998e-08 ||r(i)||/||b|| 1.000000000000e+00<br>      1 KSP preconditioned resid norm 5.958979968059e-16 true resid norm 2.588244438237e-18 ||r(i)||/||b|| 6.887105983875e-11<br>    Linear solve converged due to CONVERGED_RTOL iterations 1<br>  Nonlinear solve did not converge due to DIVERGED_FUNCTION_COUNT iterations 39<br>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------<br>[0]PETSC ERROR:   <br>[0]PETSC ERROR: TSStep has failed due to DIVERGED_NONLINEAR_SOLVE, increase -ts_max_snes_failures or make negative to attempt recovery<br>[0]PETSC ERROR: See <a href="http://www.mcs.anl.gov/petsc/documentation/faq.html">http://www.mcs.anl.gov/petsc/documentation/faq.html</a> for trouble shooting.<br>[0]PETSC ERROR: Petsc Development GIT revision: v3.7.5-3342-gb122798  GIT Date: 2017-03-22 17:42:51 -0500<br>[0]PETSC ERROR: ./miniFEM on a arch-linux2-c-debug named iket127138 by hartig Wed Jul  5 18:09:53 2017<br>[0]PETSC ERROR: Configure options PETSC_ARCH=arch-linux2-c-debug --with-cc=mpigcc --with-cxx=mpicxx --with-fc=mpif90 --download-ml --download-parmetis --download-metis --download-hypre --download-mumps --download-scalapack<br>[0]PETSC ERROR: #1 TSStep() line 3818 in /home/hartig/petsc/src/ts/interface/ts.c<br>[0]PETSC ERROR: #2 TSSolve() line 4054 in /home/hartig/petsc/src/ts/interface/ts.c<br>[0]PETSC ERROR: #3 main() line 1829 in /home/hartig/Nextcloud/Dissertation/Code/Debugging/miniFEM.c<br>[0]PETSC ERROR: PETSc Option Table entries:<br>[0]PETSC ERROR: -def_petscspace_order 2<br>[0]PETSC ERROR: -eplast_petscspace_order 2<br>[0]PETSC ERROR: -ksp_converged_reason<br>[0]PETSC ERROR: -ksp_monitor_true_residual<br>[0]PETSC ERROR: -pc_type lu<br>[0]PETSC ERROR: -plast<br>[0]PETSC ERROR: -snes_converged_reason<br>[0]PETSC ERROR: -snes_fd<br>[0]PETSC ERROR: -snes_monitor<br>[0]PETSC ERROR: -snes_type newtonls<br>[0]PETSC ERROR: -ts_monitor<br>[0]PETSC ERROR: -vel_petscspace_order 2<br>[0]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint@mcs.anl.gov----------<br><br></div><div><br></div>Thanks,<br></div>Max<br><div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-06-30 17:14 GMT+02:00 Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
   What is the output from<br>
<br>
    -snes_monitor -ksp_monitor_true_residual -pc_type lu -ksp_converged_reason -snes_converged_reason<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
> On Jun 30, 2017, at 3:45 AM, Maximilian Hartig <<a href="mailto:imilian.hartig@gmail.com">imilian.hartig@gmail.com</a>> wrote:<br>
><br>
> Hello,<br>
><br>
> I’m trying to implement plasticity and have problems getting the Petsc SNES to converge. To check if my residual formulation is correct I tried running with -snes_fd for an easy example as the Petsc FAQ suggest. I cannot seem to get the solver to converge at any cost.<br>
> I already tried to impose bounds on the solution and moved to vinewtonrsls as a nonlinear solver. I checked and rechecked my residuals but I do not find an error there. I now have the suspicion that the -snes_fd option is not made for handling residuals who’s first derivatives are not continuous (e.g. have an “if” condition in them for the plasticity/ flow-condition). Can you confirm my suspicion? And is there another way to test my residual formulation separate from my hand-coded jacobian?<br>
><br>
><br>
> Thanks,<br>
> Max<br>
<br>
</div></div></blockquote></div><br></div>