<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 6, 2017 at 8:09 AM, Vaclav Hapla <span dir="ltr"><<a href="mailto:vaclav.hapla@erdw.ethz.ch" target="_blank">vaclav.hapla@erdw.ethz.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello<br>
<br>
The whole PetscPartitioner class sources are part of src/dm/impls/plex/<wbr>plexpartition.c, mixed together with some DMPlex* functions.<br>
If you don't mind, I would move the PetscPartitioner* stuff into the separate file petscpartitioner.c<br>
(in future, it could be even moved to a separate directory).<br></blockquote><div><br></div><div>Yes, that would be fine. I would say that</div><div><br></div><div>  src/dm/utils/petscpartitioner.c</div><div><br></div><div>would be fine with me.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I would also like to<br>
* add PetscPartitioner{Add,Set,Get}<wbr>OptionsPrefix,<br></blockquote><div><br></div><div>Yes.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
* create the partitioner lazily in DMPlexGetPartitioner, followed by PetscObjectIncrementTabLevel, PetscLogObjectParent and PetscPartitionerSetOptionsPref<wbr>ix calls,<br></blockquote><div><br></div><div>Yes. I am not sure that it helps anything to create the object later. Waiting the set the type is fine.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
* edit src/dm/impls/plex/examples/<wbr>tutorials/ex5.c so that it calls DMSetFromOptions right after DMPlexCreateFromFile, in order to make the partitioner changeable from options.<br></blockquote><div><br></div><div>I am not in favor of this one. I prefer you call</div><div><br></div><div><div>    ierr = PetscPartitionerSetFromOptions(part);CHKERRQ(ierr);</div></div><div><br></div><div>there, as in SNES ex12. Refinement happens inside the SetFromOptions(), and usually people want this after distribution.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Do you have anything against?<br>
<span class="gmail-HOEnZb"><font color="#888888"><br>
Vaclav</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>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><br></div><div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div>
</div></div>