<div dir="ltr">Hi Barry, <br>Thanks for clearing it up. It will be useful if this info was added to the documentation for SetFields.<div style>Thanks again</div><div style>Subramanya </div></div><div class="gmail_extra"><br clear="all">
<div>Subramanya G Sadasiva,<br><br>Graduate Research Assistant, <br>Hierarchical Design and Characterization Laboratory,<br>School of Mechanical Engineering, <br>Purdue University.<br><br>"The art of structure is where to put the holes"<br>
Robert Le Ricolais, 1894-1977</div>
<br><br><div class="gmail_quote">On Tue, Jul 9, 2013 at 10:05 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
On Jul 9, 2013, at 8:57 PM, Subramanya G <<a href="mailto:subramanya.g@gmail.com">subramanya.g@gmail.com</a>> wrote:<br>
<br>
> Hi Barry,<br>
> Thanks. I've been looking at KSP/ex43.C and from what I understand the following are the main steps.<br>
> PCFieldSplitSetBlockSize(pc,3); // Total number of fields<br>
> PCFieldSplitSetFields(pc,"u"<br>
> ,2,ufields,ufields); // split into groups (u and v)<br>
><br>
> PCFieldSplitSetFields(pc,"p",1,pfields,pfields); // p<br>
><br>
> I am unable to see where petsc expects to know whether the values in node major or variable major order.<br>
<br>
</div> Yes, this is why I wrote "the code is easier to use with node major" :-). The SetFields() interface is for simple node major order. To use any other ordering you need to use the PCFieldSplitSetIS() interface to set the fields. Most of the examples use node major. Sorry for the confusion.<br>
<span class="HOEnZb"><font color="#888888"><br>
Barry<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
> Thanks,<br>
> Subramanya<br>
><br>
><br>
> Subramanya G Sadasiva,<br>
><br>
> Graduate Research Assistant,<br>
> Hierarchical Design and Characterization Laboratory,<br>
> School of Mechanical Engineering,<br>
> Purdue University.<br>
><br>
> "The art of structure is where to put the holes"<br>
> Robert Le Ricolais, 1894-1977<br>
><br>
><br>
> On Tue, Jul 9, 2013 at 9:49 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>> wrote:<br>
><br>
> PCFieldsplit is officially neutral as to the arrangement. One can define IS's to select any arbitrary subset of variables for each field.<br>
><br>
> Unofficially we generally recommend node major order, it generally is more computationally efficient and the code is a bit easier to use with this default.<br>
><br>
> Barry<br>
><br>
> On Jul 9, 2013, at 8:41 PM, subramanya sadasiva <<a href="mailto:subramanya.g@gmail.com">subramanya.g@gmail.com</a>> wrote:<br>
><br>
> > I have a small question about the use of PC field split, does it expect variables to be arranged in a particular fashion? Should it be variable major (all degrees of freedom corresponding to the first followed by all degrees of freedom corresponding to the next) or node major ( all degrees of freedom corresponding to each node - with a sub block structure . Is there some way of switching between the two ?<br>
> > Thanks,<br>
> > Subramanya Sadasiva<br>
><br>
><br>
<br>
</div></div></blockquote></div><br></div>