[petsc-users] PetscDSSetJacobianPreconditioner causing DIVERGED_LINE_SEARCH for multi-field problem

Sander Arens Sander.Arens at UGent.be
Wed Mar 2 05:13:30 CST 2016


Hi,

I'm trying to set a mass matrix preconditioner for the Schur complement of
an incompressible finite elasticity problem. I tried using the command
PetscDSSetJacobianPreconditioner(prob, 1, 1, g0_pre_mass_pp, NULL, NULL,
NULL) (field 1 is the Lagrange multiplier field).
However, this causes a DIVERGED_LINE_SEARCH due to to Nan or Inf in the
function evaluation after Newton iteration 1. (Btw, I'm using the next
branch).

Is this because I didn't use PetscDSSetJacobianPreconditioner for the other
blocks (which uses the Jacobian itself for preconditioning)? If so, how can
I tell Petsc to use the Jacobian for those blocks?

I guess when using PetscDSSetJacobianPreconditioner the preconditioner is
recomputed at every Newton step, so for a constant mass matrix this might
not be ideal. How can I avoid recomputing this at every Newton iteration?

Thanks,
Sander
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160302/dbdf6d2f/attachment.html>


More information about the petsc-users mailing list