[petsc-users] Seeking Clarification on SNES Solver Behavior

Rene Chenard rene.chenard at me.com
Mon Oct 23 18:16:06 CDT 2023


Hi!

We have recently noticed some inconsistencies in the behavior of the SNES solver when using different solver types, and we would greatly appreciate your insights in resolving this matter.

While working with SNESSolve in parallel, we have encountered a discrepancy in the behavior of the evaluation functions for the ComputeFunction and the JacobianFunction. Specifically, there seems to be an inconsistency in whether Vec x receives automatic updates to its ghosts or if manual updates are required (with calls to VecGhostUpdateBegin/End).

For instance, when using the ngmres solver, the ghosts of Vec x are adequately updated. However, when employing the nrichardson solver, it appears that manual updates to the ghosts are necessary.

It's important to note that we do not utilize the DM object in our implementation, as we have developed our own solution to manage models and discretization.

To better understand the root cause of this behavior, we kindly request your assistance in determining if we may be overlooking something in our implementation, or if there are inherent inconsistencies in the SNES solver itself.

Your expertise in this matter would be invaluable to us, and we thank you in advance for your consideration and support.

Warm regards,

—René Chenard
Research Professional at Université Laval
rene.chenard.1 at ulaval.ca


More information about the petsc-users mailing list