On Sat, Oct 9, 2010 at 11:32 AM, Michel Laurent <span dir="ltr">&lt;<a href="mailto:laurent.michel@epfl.ch">laurent.michel@epfl.ch</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi,<br>
<br>
I have heard from some friend who participated to one of your workshops that you have now support for unstructured meshes and simulations in your library (I have even found a pdf presentation on Google about that). It seems like one can use the fieldsplit preconditioner now with unstructured problems (which wasn&#39;t the case a few months ago when I asked).<br>

<br>
My question is: where can I find documentation about that? I mean, about fieldsplit applied to unstructured problems, AND the way petsc users are supposed to deal with unstructured meshes with your library.<br></blockquote>
<div><br></div><div>I will answer in two parts:</div><div><br></div><div>  1) FieldSplit</div><div><br></div><div>This is somewhat well-documented and stable. It is very easy to do. Instead of saying which</div><div>dofs in which DA belong to a &quot;field&quot;, you gives a set of IS objects, listing the dofs in each &quot;field&quot;.</div>
<div>After that, everything is the same. Should be very easy. We use this strategy in the <a href="http://www.geodynamics.org/cig/software/pylith">PyLith</a></div><div>package to solve our systems.</div><div><br></div><div>
  2) Unstructured meshes</div><div><br></div><div>This is not well-documented. There is a tutorial presentation and a repository of code for it. A few</div><div>people have used this, but it is nowhere near the level of clarity and robustness that the rest of</div>
<div>PETSc has. However, it can do that mesh handling and if you are willing to be an alpha user it</div><div>might be right for you. I suggest:</div><div><br></div><div>  a) Looking at the tutorial and our <a href="http://portal.acm.org/citation.cfm?id=1611487">paper</a></div>
<div><br></div><div>  b) Look at some sample code. I attach a really simple example here in the C interface. There is</div><div>      a more expressive C++ interface (that PyLith uses) which has no documentation at all.</div>
<div><br></div><div>  c) Do requirements gathering for your code. If you know what you need, I can easily tell you</div><div>      whether the library supports it. There is no consensus for what should be supported by</div>
<div>      unstructured mesh packages, unlike say linear algebra.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><div>P.S. The sample code reads an ExodusII mesh which i also attached.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Thanks guys for your work, it&#39;s amazing,<br>
<br>
L.<br>
<font color="#888888"><br>
--<br>
Laurent Michel<br>
PhD Candidate<br>
EPFL MATHICSE<br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <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<br>