<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br></div>   This brings up a "why the heck are we writing PETSc in C anyways" question<div><br></div><div>   We have</div><div><br></div><div>     KSPSetOptionsPrefix(), PC, SNES etc. AND PetscObjectSetOptionsPrefix() all do the same thing</div><div><br></div><div>     KSPSetFromOptions(), Vec, Mat, PC etc but NO PetscObjectSetFromOptions()</div><div><br></div><div>     PetscObjectSetName() but NO KSPSetName() etc</div><div><br></div><div>    If we have a XXXSetOptionsPrefix() for each separate class then why not a XXXAddOptionsHandler() for each separate class? Or should we remove all the XXXSetOptionsPrefix() but if we remove all of them why not remove all the XXXSetFromOptions() and just always call a PetscObjectSetFromOptions()</div><div><br></div><div>    Not saying we need to do anything about this, just muttering.</div><div><br></div><div>   Barry</div><div><br></div><div><br></div><div><br><div><div>On Jun 24, 2010, at 9:18 PM, Matthew Knepley wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><div class="gmail_quote">On Fri, Jun 25, 2010 at 10:16 AM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov">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 style="word-wrap:break-word"> <div>  PetscObjectAddOptionsHandler(PetscObject, PetscErrorCode (*)(PetscObject,void*),void *ctx)   ?</div></div></blockquote><div> </div><div>Better.</div><div><br></div><div>   Matt</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div style="word-wrap:break-word"><div>   Barry<div><div></div><div class="h5"><br><div><div>On Jun 24, 2010, at 9:07 PM, Matthew Knepley wrote:</div>
<br><blockquote type="cite">I am for the uniform PetscObjectAddOptionsChecker(). Should it really be called<div>Checker?  Sounds like validation. I think there is some value in treating SetFromOptions</div><div>as a generic facility that can be extended. This is "aspect oriented programming" :)</div>

<div><br></div><div>   Matt<br><br><div class="gmail_quote">On Fri, Jun 25, 2010 at 10:00 AM, 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">
<br>
   KSPAddOptionsChecker() is never used in PETSc. Is it needed? Can it be removed?<br>
<br>
   Or should we have a PetscObjectAddOptionsChecker() instead, thus expanding this (unneeded capability) to all PETSc objects/solvers?<br>
<font color="#888888"><br>
    Barry<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>


</div>
</blockquote></div><br></div></div></div></div></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>
</div>
</blockquote></div><br></div></body></html>