<div dir="ltr"><div dir="ltr">On Mon, May 5, 2025 at 2:08 PM MIGUEL MOLINOS PEREZ <<a href="mailto:mmolinos@us.es">mmolinos@us.es</a>> wrote:</div><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
Hi Matt, thank you for your response!<br id="m_-1640743572746169310lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>
<div dir="ltr">
<div class="gmail_quote">
<div>The most likely thing is that the nullspace is slightly wrong, or the convergence test is not accounting for the nullspace somehow.</div>
<div><br>
</div>
<div>However, since so many equations are inactive, I would consider projecting the problem. I might either</div>
<div><br>
</div>
<div>1) Select a subset of the mesh to phrase the problem on. In you use DMPlex, you could use DMPlexFilter().</div>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>I’am using a DMSwarm mesh so I can’t use this function.</div></div></div></blockquote><div><br></div><div>Oh, so you want to turn off some Swarm nodes? Joe has a DMSwarmCreatreSubswarm() function somewhere. This might work.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div>
<blockquote type="cite">
<div>
<div dir="ltr">
<div class="gmail_quote">
<div>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.</div>
</div>
</div>
</div>
</blockquote>
</div>
<div><br>
</div>
<div>I assume you meant <span style="color:rgb(44,54,63);background-color:rgb(255,255,255)"><b>SNESVINEWTONRSLS (former SNESVI)</b></span>.</div></div></blockquote><div><br></div><div>This is a subtype of SNESVI as it is a particular implementation.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div> 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:</div></div></blockquote><div><br></div><div>The way I am thinking, you must have some test to determine what nodes are active. I was supposing that test depending on the solution at those nodes. If that is true, you can use that test as the constraint.</div><div><br></div><div> Thanks,</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
<div><br>
</div>
<div style="display:block">
<div style="display:inline-block" role="link">
<a style="border-radius:10px;font-family:-apple-system,Helvetica,Arial,sans-serif;display:block;width:300px;overflow:hidden;text-decoration:none" rel="nofollow" href="https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!ezvVIFtMgyEOMIRv8YEwgp7LXjHr2RxGixxJ5mO6iKk1tUEbvE5XyAUc3DcQzPkbbby5AcQBnFG79U9jYfcL$" dir="ltr" role="button" width="300" target="_blank">
<table style="table-layout:fixed;border-collapse:collapse;width:300px;background-color:rgb(229,230,233);font-family:-apple-system,Helvetica,Arial,sans-serif" cellpadding="0" cellspacing="0" border="0" width="300">
<tbody>
<tr>
<td>
<table bgcolor="#E5E6E9" cellpadding="0" cellspacing="0" width="300" style="table-layout:fixed;font-family:-apple-system,Helvetica,Arial,sans-serif;background-color:rgb(229,230,233)">
<tbody>
<tr>
<td style="padding:8px 0px">
<div style="max-width:100%;margin:0px 16px;overflow:hidden">
<div style="font-weight:400;font-size:11px;overflow:hidden;text-overflow:ellipsis;text-align:left">
<a rel="nofollow" href="https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!ezvVIFtMgyEOMIRv8YEwgp7LXjHr2RxGixxJ5mO6iKk1tUEbvE5XyAUc3DcQzPkbbby5AcQBnFG79U9jYfcL$" style="text-decoration:none" target="_blank"><font color="#808080" style="color:rgba(0,0,0,0.498)">petsc.org</font></a></div>
</div>
</td>
<td style="padding:0px 12px 0px 0px" width="32">
<a rel="nofollow" href="https://urldefense.us/v3/__https://petsc.org/release/src/snes/tutorials/ex9.c.html__;!!G_uCfscf7eWS!ezvVIFtMgyEOMIRv8YEwgp7LXjHr2RxGixxJ5mO6iKk1tUEbvE5XyAUc3DcQzPkbbby5AcQBnFG79U9jYfcL$" target="_blank"><img style="display: inline-block; width: 32px; height: 32px;" width="32" height="32"></a></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</a></div>
</div>
<div> </div>
<div><br>
</div>
<div>Thanks,</div>
<div>Miguel</div>
<br>
</div>
</blockquote></div><div><br clear="all"></div><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="https://urldefense.us/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!ezvVIFtMgyEOMIRv8YEwgp7LXjHr2RxGixxJ5mO6iKk1tUEbvE5XyAUc3DcQzPkbbby5AcQBnFG79YI3nCj0$" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>