[petsc-users] how to check state of form residual of snes, for solving ksp or line search?

Barry Smith bsmith at petsc.dev
Wed Feb 14 21:35:42 CST 2024


  Use SNESSetUpdate() to provide a callback function that gets called by SNES automatically immediately before each linear solve. Inside your callback use SNESGetFunction(snes,f,NULL,NULL); to access the last computed value of your function, from this you can update your global variable.

Barry


> On Feb 14, 2024, at 4:28 PM, Yi Hu <y.hu at mpie.de> wrote:
> 
> Dear PETSc team,
> 
> I am using a newtonls snes solver. I know that form residual is invoked at several locations of the algorithm, first evaluated for the rhs of ksp solver, then several times for obtaining the optimal step of line search.
> 
> In my problem I have a global variable that is updated every time when form residual is called, which is not desired in the context of netwonls. Basically, it should be only evaluated for the purpose of rhs of ksp (and not in line search). So is it possible to know in which context my form residual is used for? Then I can just skip my line of updating global variable depending on this condition. If not possible, could you suggest a workaround? Or do I need to design a customized line search routine?
> 
> Thanks for your help.
> 
> Best regards,
> 
> Yi
> 
> 
> 
> -------------------------------------------------
> Stay up to date and follow us on LinkedIn, Twitter and YouTube.
> 
> Max-Planck-Institut für Eisenforschung GmbH
> Max-Planck-Straße 1
> D-40237 Düsseldorf
> Handelsregister B 2533 Amtsgericht Düsseldorf
> Geschäftsführung
> Prof. Dr. Gerhard Dehm
> Prof. Dr. Jörg Neugebauer
> Prof. Dr. Dierk Raabe
> Dr. Kai de Weldige
> Ust.-Id.-Nr.: DE 11 93 58 514 Steuernummer: 105 5891 1000
> 
> 
> Please consider that invitations and e-mails of our institute are only valid if they end with …@mpie.de. If you are not sure of the validity please contact rco at mpie.de
> 
> Bitte beachten Sie, dass Einladungen zu Veranstaltungen und E-Mails
> aus unserem Haus nur mit der Endung …@mpie.de gültig sind. In Zweifelsfällen wenden Sie sich bitte an rco at mpie.de
> -------------------------------------------------
> 



More information about the petsc-users mailing list