Hi Matt, thank you for your response!

The most likely thing is that the nullspace is slightly wrong, or the 
convergence test is not accounting for the nullspace somehow.

However, since so many equations are inactive, I would consider projecting the 
problem. I might either

1) Select a subset of the mesh to phrase the problem on. In you use DMPlex, you 
could use DMPlexFilter().

I’am using a DMSwarm mesh so I can’t use this function.

2) Use a constraint to get a subsystem for Newton using SNESVI. The SNESVIRS 
will project the linear system onto a subspace without the constraints.

I assume you meant SNESVINEWTONRSLS (former SNESVI). I’ve been digging on this 
approach. However,I don’t think this fits my problem since I can not define the 
list of active nodes using upper and lower limits like in:

<https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!cj7qNAh93kq-C0vTUW85LoKCBqZJa3dpHaCBjrEo7kqQlyaWw5U6ek5pEUU9RQxE1WercDZ97FMnOdUitk4NiA$
 >
petsc.org<https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!cj7qNAh93kq-C0vTUW85LoKCBqZJa3dpHaCBjrEo7kqQlyaWw5U6ek5pEUU9RQxE1WercDZ97FMnOdUitk4NiA$
 >
[X]<https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!cj7qNAh93kq-C0vTUW85LoKCBqZJa3dpHaCBjrEo7kqQlyaWw5U6ek5pEUU9RQxE1WercDZ97FMnOdUitk4NiA$
 >


Thanks,
Miguel

Reply via email to