<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">Il giorno sab 23 ago 2025 alle ore 00:25 Zou, Ling via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov">petsc-users@mcs.anl.gov</a>> ha scritto:<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 class="msg-1048773420198565951">





<div lang="EN-US" style="overflow-wrap: break-word;">
<div class="m_-7958132393732476812WordSection1">
<p class="MsoNormal"><span style="font-size:11pt">Hi all,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Can someone please help me understand the output of the following two outputs using ‘-snes_view’?<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Option 1:<u></u><u></u></span></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812s1">SNES Object: 1 MPI process</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">type: newtonls</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">maximum iterations=15, maximum function evaluations=10000</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">tolerances: relative=1e-08, absolute=1e-50, solution=1e-08</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">total number of linear solver iterations=5</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">total number of function evaluations=14</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">norm schedule ALWAYS</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space"><span style="color:rgb(0,176,80)">  </span>
</span><span class="m_-7958132393732476812s1"><span style="color:rgb(0,176,80)">Jacobian is built using finite differences with coloring</span></span><span style="color:rgb(0,176,80)"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Option 2:<u></u><u></u></span></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812s1">SNES Object: 1 MPI process</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">type: newtonls</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">maximum iterations=50, maximum function evaluations=10000</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">tolerances: relative=1e-08, absolute=1e-50, solution=1e-08</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">total number of linear solver iterations=8</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">total number of function evaluations=17</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space">  </span><span class="m_-7958132393732476812s1">norm schedule ALWAYS</span><u></u><u></u></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space"><span style="color:rgb(0,176,80)">  </span>
</span><span class="m_-7958132393732476812s1"><span style="color:rgb(0,176,80)">Jacobian is applied matrix-free with differencing</span></span><span style="color:rgb(0,176,80)"><u></u><u></u></span></p>
<p class="m_-7958132393732476812p1"><span class="m_-7958132393732476812apple-converted-space"><span style="color:rgb(0,176,80)">  </span>
</span><span class="m_-7958132393732476812s1"><span style="color:rgb(0,176,80)">Preconditioning Jacobian is built using finite differences with coloring</span></span><span style="color:rgb(0,176,80)"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Does it mean that<u></u><u></u></span></p>
<ul style="margin-top:0in" type="disc">
<li class="m_-7958132393732476812MsoListParagraph">
<span style="font-size:11pt">Option 1 uses Newton’s method, such that J du = b is solved with J being explicitly constructed?</span></li></ul></div></div></div></blockquote><div>yes</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 class="msg-1048773420198565951"><div lang="EN-US" style="overflow-wrap: break-word;"><div class="m_-7958132393732476812WordSection1"><ul style="margin-top:0in" type="disc"><li class="m_-7958132393732476812MsoListParagraph"><span style="font-size:11pt"><u></u><u></u></span></li><li class="m_-7958132393732476812MsoListParagraph">
<span style="font-size:11pt">Option 2 uses matrix free method, such that J du = b is solved with  J v ~ (F(u + dv) – F(u)) / h when needed, e.g., in a Krylov method.</span></li></ul></div></div></div></blockquote><div><br></div><div>yes, and the preconditioner is constructed using an explicitly constructed Jacobian matrix</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 class="msg-1048773420198565951"><div lang="EN-US" style="overflow-wrap: break-word;"><div class="m_-7958132393732476812WordSection1"><ul style="margin-top:0in" type="disc"><li class="m_-7958132393732476812MsoListParagraph"><span style="font-size:11pt"><u></u><u></u></span></li></ul>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Thanks,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">-Ling<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
</div>
</div>

</div></blockquote></div><div><br clear="all"></div><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">Stefano</div></div>