<div dir="ltr"><div>Hi,<br><br></div><div>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).<br></div><div>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).<br><br>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?<br><br></div><div>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?<br><br></div><div>Thanks,<br></div><div>Sander<br></div></div>