[petsc-users] Simultaneously compute Residual+Jacobian in SNES

Barry Smith bsmith at mcs.anl.gov
Fri Dec 9 12:48:59 CST 2016


  Sorry the title in the FAQ is a bit tongue-in-check.

  http://www.mcs.anl.gov/petsc/documentation/faq.html#functionjacobian


> On Dec 9, 2016, at 12:45 PM, Derek Gaston <friedmud at gmail.com> wrote:
> 
> Is there a way to tell SNES to simultaneously compute both the residual and the Jacobian in one callback?
> 
> My code can compute both simultaneously and it will be more efficient (think FE where you can reuse the shape-functions, variables, material properties, etc. for both residual and Jacobian computation).  In addition, I also have automatic differentiation as an option which _definitely_ computes both efficiently (and actually computes residuals, by themselves, much slower).
> 
> I was thinking that I may just save off the Jacobian whenever the initial residual computation is asked for by SNES... and then just return that Jacobian when SNES asks for it.  This may be a bit dicey though as SNES can ask for residual computations at many different points during the solve.
> 
> Thanks for any help!
> 
> Derek



More information about the petsc-users mailing list