<div dir="ltr"><span style="font-family:Arial,Helvetica,sans-serif;font-size:13px">Hello, </span><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">I am developing my own nonlinear solver, which aims to solve simulations from MOOSE. Communication with moose is done via SNES interface. </div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">I am obtaining Jacobian and residual in following way: </div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><div style="margin:0px;padding:0px;border:0px">           SNESComputeFunction(snes, X, R);   </div><div style="margin:0px;padding:0px;border:0px">       </div><div style="margin:0px;padding:0px;border:0px">          SNESSetJacobian(snes, jac, jac, SNESComputeJacobianDefault, NULL); </div></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">          SNESComputeJacobian(snes, X, jac,  jac); <br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">Unfortunately, by this setting it takes incredible amount of time to obtain Jacobian.</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">Taking closer look at perf log, it seems that difference between mine and MOOSE solver is, that my executioner calls compute_residual() function ridiculously many times. </div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">I have no idea, what could be causing such a behavior.  </div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">Do you have any suggestions, how to set up interface properly? or which change is needed for obtaining more-less same performance as MOOSE executioner? </div><div><br></div><div><br></div><div>many thanks, </div><div>alena </div></div>