<div class="gmail_quote">On Thu, Feb 24, 2011 at 10:56, gouarin <span dir="ltr">&lt;<a href="mailto:loic.gouarin@math.u-psud.fr">loic.gouarin@math.u-psud.fr</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div id=":381">I set block size to 3 for my matrix but I&#39;m not sure that I can use it because I don&#39;t have the same number of points for each field. I don&#39;t hnow how petsc defines the blocks.<br>
<br>
How can I use again fieldsplit for the preconditioner ?</div></blockquote></div><br><div>It is worth switching to petsc-dev for this:</div><div><br></div><div>1. Use DMComposite to &quot;glue&quot; the velocity and pressure DAs together.</div>
<div><br></div><div>2. Call PCSetDM (or the higher level KSPSetDM, SNESSetDM, or TSSetDM as appropriate) and pass in the DMComposite.</div><div><br></div><div>Now when you -pc_type fieldsplit, it will automatically pick up the fields from the DMComposite (in the order they were registered). That would give you two splits in this case.</div>
<div><br></div><div>You can use DMComposite with petsc-3.1, but you have to create index sets yourself and call PCFieldSplitSetIS().</div>