<div class="gmail_quote">On Wed, Oct 12, 2011 at 15:25, Vijay S. Mahadevan <span dir="ltr">&lt;<a href="mailto:vijay.m@gmail.com">vijay.m@gmail.com</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=":wq">What do you mean ? The blocks are formed in memory and handed over to<br>
the algebraic preconditioner (controlled at runtime). Why would the<br>
user have to change the preconditioner manually ? This made use of the<br>
block PC object in petsc-ext which I assume is replaced by FieldSplit<br>
? I eventually do have to handle this elegantly and will need some<br>
input when I get there.<br>
<br>
If you are talking about the compile time switch, then yes, that was a<br>
little painful. But hopefully pure petsc will give me some peace !</div></blockquote></div><br><div>I meant the two pieces of code. It&#39;s more to maintain and test. Needing to choose at compile time is lame, but even if you could do it at run-time, it would not be fun to maintain. In my opinion, we want one code where we can do</div>
<div><br></div><div>-mat_type X -pc_type fieldsplit</div><div><br></div><div>and</div><div><br></div><div>-mat_type Y -pc_type lu</div><div><br></div><div>and have efficient data structures used in both cases.</div>