<div dir="ltr"><div class="gmail_default" style="font-size:small">Hi Matt,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Thanks for speedy reply.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It seems effective in SNES. </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I'm curious about how it works in iterative solver. </div><div class="gmail_default" style="font-size:small">Let's say I'm using CG with BJACOBI for modified newton, if I Set lag as 5, does that mean the ilu decomposition for pc is stored and reused for the next 4 iterations? Will this setting help to reduce the iteration number of ksp solver?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Also, I'm wondering how to set the same option for just linear KSP solver since I have coded the modified newton framework manually.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Thanks </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Jinlei</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Aug 18, 2016 at 10:28 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="">On Thu, Aug 18, 2016 at 9:22 PM, Jinlei Shen <span dir="ltr"><<a href="mailto:jshen25@jhu.edu" target="_blank">jshen25@jhu.edu</a>></span> wrote:<br><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 style="font-size:small">​Hi,</div><div style="font-size:small"><br></div><div style="font-size:small">I'm trying to implement modified newton method to solve the nonlinear finite element using petsc.</div><div style="font-size:small"><br></div><div style="font-size:small">As well known,  the advantage of modified newton is the Jacobian matrix is always same during the iteration, which means once the J is factorized at the first iteration, we can store the factors and avoid the factorization for next iteration if we use direct solver, e.g. super_lu. Therefore, the option FACTORED in SUPER_LU is quite useful.</div><div style="font-size:small"><br></div><div style="font-size:small">However, it looks like the option FACTORED is not available in SUPER_LU_DIST in petsc. I tried, and it shows 'unknown option'.<br></div><div style="font-size:small"><br></div><div style="font-size:small">Is there alternative way to use the same idea of FACTORED in petsc for super_lu?</div><div style="font-size:small"><br></div><div style="font-size:small">Also, I'm wondering whether iterative solver in PETSC is also able to apply the same strategy.</div><div style="font-size:small"><br></div><div style="font-size:small">In other words, in the problem where Jacobian is constant, only residue and solution vectors need to be updated, is there any way to take advantage of such same Jacobian pattern to expedite the computation using iterative solver? </div><div style="font-size:small"><br></div><div style="font-size:small">Thank you</div><div style="font-size:small"><br></div><div style="font-size:small">BTW, though using modified newton will increase the iteration number, however, in the case which is much more expensive to factorize the jacobian, more iterations will probably be worthwhile.</div></div></blockquote><div><br></div></span><div>You can use</div><div><br></div><div>  <a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/SNESSetLagJacobian.html" target="_blank">http://www.mcs.anl.gov/<wbr>petsc/petsc-current/docs/<wbr>manualpages/SNES/<wbr>SNESSetLagJacobian.html</a></div><div>  <a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/SNESSetLagPreconditioner.html#SNESSetLagPreconditioner" target="_blank">http://www.mcs.anl.gov/<wbr>petsc/petsc-current/docs/<wbr>manualpages/SNES/<wbr>SNESSetLagPreconditioner.html#<wbr>SNESSetLagPreconditioner</a></div><div><br></div><div>to get fine-grained control over this without writing any code.</div><div><br></div><div>   Matt</div><div><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 style="font-size:small">Bests,</div><div style="font-size:small">Jinlei</div></div><span class="HOEnZb"><font color="#888888">
</font></span></blockquote></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div data-smartmail="gmail_signature">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>
</font></span></div></div>
</blockquote></div><br></div>