<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 12, 2014 at 6:44 AM, Lawrence Mitchell <span dir="ltr"><<a href="mailto:lawrence.mitchell@imperial.ac.uk" target="_blank">lawrence.mitchell@imperial.ac.uk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I have a mixed FEM system, for which the null space is constant<br>
functions in one of the sub spaces.  That is, I have W = V * Q and the<br>
null space is a constant function in Q (and zero in V).  If I assemble<br>
the operator, I get a block structure:<br>
<br>
X = [A B,<br>
     C D]<br>
<br>
When I solve this monolithically, I project the null space out by<br>
attaching it to X.  However, if I use Schur complement preconditioning,<br>
then S = D - C Ainv B has a null space of the constant functions as<br>
well.  Do I therefore need to attach null spaces to both X and S in this<br>
case, or will attaching it to X be enough?  If I do need to hang<br>
something on S, is there an easy way to do it?<br></blockquote><div><br></div><div>Here are two ways to do this, depending on how you manage your fields. At the</div><div>lowest level, an IS defines the field in PCFIELDSPLIT. So you can attach your</div>
<div>MatNullSpace that way</div><div><br></div><div>  PetscObjectCompose(isD, "nullspace", nullspace)</div><div><br></div><div>of if you use a DM, you can say</div><div><br></div><div>  DMGetField(dm, 1, &obj);</div>
<div>  PetscObjectCompose(obj, "nullspace", nullspace)</div><div><br></div><div>This is also how we pass in "nearsullspace" for AMG, and "pmat" for a separate</div><div>preconditioning operator.</div>
<div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Cheers,<br>
<br>
Lawrence<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>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>