<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Thanks for the suggestions Geoff and Dave. Using G(x) = F(x) - b(x) = 0, will required redefinition of the Jacobian correct? If I understand correctly, the Jacobian is the derivative of F(x) with respect to x. Since we are redefining F(x) to G(x), it would
be necessary to change the Jacobian from dF(x)/dx to dF(x)/dx - db(x)/dx, correct? </p>
<p><br>
</p>
<p>Also, I noticed when I implemented G(x) = F(x) - b = 0 (where b is constant) the method seems less robust when using newton's method with a line search, at least for one particular problem, the line search (using default settings) diverges (converged reason
= -6), but using a trust region newton method or a quasi-newton method it converges to the answer.</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Oxberry, Geoffrey Malcolm <oxberry1@llnl.gov><br>
<b>Sent:</b> Monday, August 8, 2016 4:20:27 PM<br>
<b>To:</b> Neiferd, David John<br>
<b>Cc:</b> petsc-users@mcs.anl.gov<br>
<b>Subject:</b> Re: [petsc-users] How to solve nonlinear F(x) = b(x)?</font>
<div> </div>
</div>
<div>David,
<div class=""><br class="">
</div>
<div class="">What about solving G(x) = F(x) - b(x) = 0?</div>
<div class=""><br class="">
</div>
<div class="">Geoff</div>
<div class=""><br class="">
<div>
<blockquote type="cite" class="">
<div class="">On Aug 8, 2016, at 1:12 PM, Neiferd, David John <<a href="mailto:david.neiferd@wright.edu" class="">david.neiferd@wright.edu</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div id="divtagdefaultwrapper" style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-size: 12pt; background-color: rgb(255, 255, 255); font-family: Calibri, Arial, Helvetica, sans-serif;" class="">
Hello all,
<div class=""><br class="">
</div>
<div class="">I've been searching through the PETSc documentation to try to find how to solve a nonlinear system where the right hand side (b) varies as a function of the state variables (x). According to the PETSc documentation, SNES solves the equations
F(x) = b where b is a constant vector. What would I do to solve F(x) = b(x)? An example of this would be a nonlinear thermoelastic structure where as the structure deforms the direction of the loads generated by the thermal expansion changes as well. Any
insight into how to implement this is appreciated.</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</body>
</html>