[petsc-users] Understanding 'snes' object

Zou, Ling lzou at anl.gov
Sat Aug 23 09:03:31 CDT 2025


Thank you both Jed and Stefano.
Then, somehow, I may have introduced inconsistence in my code, because I expected they have exactly the same behavior.

Best,
-Ling

From: Stefano Zampini <stefano.zampini at gmail.com>
Date: Friday, August 22, 2025 at 4:42 PM
To: Zou, Ling <lzou at anl.gov>
Cc: PETSc <petsc-users at mcs.anl.gov>
Subject: Re: [petsc-users] Understanding 'snes' object
Il giorno sab 23 ago 2025 alle ore 00: 25 Zou, Ling via petsc-users <petsc-users@ mcs. anl. gov> ha scritto: Hi all, Can someone please help me understand the output of the following two outputs using ‘-snes_view’? Option 1: SNES Object: 1
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.

ZjQcmQRYFpfptBannerEnd


Il giorno sab 23 ago 2025 alle ore 00:25 Zou, Ling via petsc-users <petsc-users at mcs.anl.gov<mailto:petsc-users at mcs.anl.gov>> ha scritto:
Hi all,

Can someone please help me understand the output of the following two outputs using ‘-snes_view’?

Option 1:

SNES Object: 1 MPI process

  type: newtonls

  maximum iterations=15, maximum function evaluations=10000

  tolerances: relative=1e-08, absolute=1e-50, solution=1e-08

  total number of linear solver iterations=5

  total number of function evaluations=14

  norm schedule ALWAYS

  Jacobian is built using finite differences with coloring

Option 2:

SNES Object: 1 MPI process

  type: newtonls

  maximum iterations=50, maximum function evaluations=10000

  tolerances: relative=1e-08, absolute=1e-50, solution=1e-08

  total number of linear solver iterations=8

  total number of function evaluations=17

  norm schedule ALWAYS

  Jacobian is applied matrix-free with differencing

  Preconditioning Jacobian is built using finite differences with coloring


Does it mean that

  *   Option 1 uses Newton’s method, such that J du = b is solved with J being explicitly constructed?
yes


  *
  *   Option 2 uses matrix free method, such that J du = b is solved with  J v ~ (F(u + dv) – F(u)) / h when needed, e.g., in a Krylov method.

yes, and the preconditioner is constructed using an explicitly constructed Jacobian matrix


  *

Thanks,
-Ling




--
Stefano
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20250823/eeb878a4/attachment-0001.html>


More information about the petsc-users mailing list