<div dir="ltr">On Fri, Sep 6, 2013 at 10:48 AM, Umut Tabak <span dir="ltr"><<a href="mailto:u.tabak@tudelft.nl" target="_blank">u.tabak@tudelft.nl</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Dear all,<br>
<br>
I am trying to use PETSc to solve linear systems where the operator matrices are composed of blocks. But I am having hard time to set up the PCFieldSplit, and a bit lost in the documentation. I sucessfully created the matrix represented as<br>

<br>
A<br>
=<br>
A11 A12<br>
A21 A22<br>
<br>
with<br>
<br>
MatCreateNest(PETSC_COMM_<u></u>WORLD,nr,NULL,nc,NULL,sub_<u></u>matrices,&blockA);<br></blockquote><div><br></div><div>1) Forget about MatNest. It is completely orthogonal to FieldSplit. Its just an optimization.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
but I could not understand really the following steps on how to associate a KSP object with Field split properties to use different conditioners on different blocks? In the mean time, continue on reading. If you can outline the basic steps on how to construct this scheme and submit analysis with basic command line options, that would of great help.<br>
</blockquote><div><br></div><div>2) If you have the ISes to make a MatNest, just use them to make the FS:</div><div><br></div><div>  <a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCFieldSplitSetIS.html">http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCFieldSplitSetIS.html</a></div>
<div><br></div><div>so you have</div><div><br></div><div>  PCFieldSplitSetIS(pc, "1", is1);</div><div>  PCFieldSplitSetIS(pc, "2", is2);</div><div><br></div><div>Now you can use all the fieldsplit options. There are many examples in PETSc, see</div>
<div><br></div><div>  src/snes/examples/tutorials/makefile</div><div><br></div><div>and ex19 for instance.</div><div><br></div><div>   Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

By the way, is not possible to output blockA that is assembled above on the standard output?<br>
<br>
Best regards,<br>
Umut<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>