<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Jul 2, 2018 at 4:54 AM Carles Bona-Casas <<a href="mailto:carles.bona@uib.es">carles.bona@uib.es</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div>Dear all,<br><br></div>I have been running a code with the option -snes_linesearch_type cp using petsc 3.7.6. <br><br></div>I have updated my code to use petsc 3.9.1. If I run a simulation with the updated code and the option -snes_linesearch_type cp included, I obtain the same behaviour in the solution for a while, but then it suddenly stops converging for no apparent reason.<br><br></div>If I run the same example with both petsc versions without using -snes_linesearch_type cp then I obtain exactly the same behaviour.<br><br></div>My code currently runs quite faster with that option activated. Is there some default behaviour regarding -snes_linesearch_type cp that has been changed from petsc 3.7 to petsc 3.9?<br><br></div><div>I attach my 3 outputs. With petsc 3.7.6 and cp option activated. With petsc 3.9.1 and cp option activated (not converging). And without cp option activated (only one file, same result with both petsc versions).<br><br></div><div>I am also open to suggestions of different solvers that could work better than using -snes_linesearch_type cp.</div></div></div></blockquote><div><br></div><div>The first real difference between the files occurs here:</div><div><br></div><div>




<span></span>





<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">254,265c254,907</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< Linear solve converged due to CONVERGED_RTOL iterations 7</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo"><<span class="gmail-Apple-converted-space">  </span>FirstNewton = 0</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< Linear solve converged due to CONVERGED_RTOL iterations 7</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo"><<span class="gmail-Apple-converted-space">  </span>FirstNewton = 0</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< <span class="gmail-Apple-converted-space">    </span>4 SNES Function norm 1.219642897375e-06</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< NORM2F: 1.219643e-06 NORM2F/NORM2F0: 1.366681e-07</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< NORM2dof0: 7.904453e-07 NORM2dof0/NORM2dof00: 8.857402e-08</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< NORM2dof1: 5.299586e-07 NORM2dof1/NORM2dof10: 2.277562e-04</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< NORM2dof2: 7.627955e-07 NORM2dof2/NORM2dof20: 3.462714e-04</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< NORM2dof3: 3.457406e-09 NORM2dof3/NORM2dof30: 4.131767e-01</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< isolid: 0 NORM2S: 1.174284e-13 NORM2S/NORM2S0: 1.630586e-04</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">< <span class="gmail-Apple-converted-space">  </span>Nonlinear solve converged due to CONVERGED_FNORM_RELATIVE iterations 4</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">---</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">    </span>4 SNES Function norm 1.411908637477e-05</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2F: 1.411909e-05 NORM2F/NORM2F0: 1.582126e-06</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof0: 7.713374e-06 NORM2dof0/NORM2dof00: 8.643286e-07</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof1: 5.780273e-06 NORM2dof1/NORM2dof10: 2.484143e-03</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof2: 1.031702e-05 NORM2dof2/NORM2dof20: 4.683416e-03</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof3: 4.547591e-09 NORM2dof3/NORM2dof30: 5.434590e-01</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> isolid: 0 NORM2S: 1.069509e-12 NORM2S/NORM2S0: 1.485097e-03</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>0 KSP Residual norm 1.411908637477e-05</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>1 KSP Residual norm 1.147024084989e-05</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>2 KSP Residual norm 1.642505389042e-06</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>3 KSP Residual norm 9.393394019526e-08</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>4 KSP Residual norm 3.802608124054e-08</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">      </span>5 KSP Residual norm 3.488335294398e-09</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">    </span>Linear solve converged due to CONVERGED_ATOL iterations 5</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> <span class="gmail-Apple-converted-space">    </span>5 SNES Function norm 1.411908637477e-05</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2F: 1.411909e-05 NORM2F/NORM2F0: 1.582126e-06</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof0: 7.713374e-06 NORM2dof0/NORM2dof00: 8.643286e-07</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof1: 5.780273e-06 NORM2dof1/NORM2dof10: 2.484143e-03</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof2: 1.031702e-05 NORM2dof2/NORM2dof20: 4.683416e-03</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> NORM2dof3: 4.547591e-09 NORM2dof3/NORM2dof30: 5.434590e-01</p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo">> isolid: 0 NORM2S: 1.069509e-12 NORM2S/NORM2S0: 1.485097e-03</p>


<br></div><div>As you can see, something is being solved in 3.7.6 that is absent in 3.9.2:</div><div><br></div><div><p class="gmail-p1" style="font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;margin:0px">< Linear solve converged due to CONVERGED_RTOL iterations 7</p><p class="gmail-p1" style="font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;margin:0px"><<span class="gmail-Apple-converted-space"> <span> </span></span>FirstNewton = 0</p><p class="gmail-p1" style="font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;margin:0px">< Linear solve converged due to CONVERGED_RTOL iterations 7</p><p class="gmail-p1" style="font-variant-numeric:normal;font-variant-east-asian:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;margin:0px"><<span class="gmail-Apple-converted-space"> <span> </span></span>FirstNewton = 0</p><br class="gmail-Apple-interchange-newline">Where does the 'FirstNewton' output come from in your code? Maybe this is a clue. I would</div><div>get in the debugger, and follow the control flow after SNES iterate 3.</div><div><br></div><div>Finally, are you sure that CP line search is being used in 3.9.2? I cannot see the -snes_view</div><div>output. Maybe you want -snes_view_pre?</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Many thanks,<br><br></div>Carles<br></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><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.caam.rice.edu/~mk51/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div>