<div dir="ltr">On Wed, Jan 2, 2013 at 3:21 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Matt, you know how we always tell people not to use KSP (or even Lapack) for 2x2 problems? Surely the same advice applies to SNES, but your point location code is doing it.</div>
</blockquote><div><br></div><div style>Yep. The wrapping overhead is far less with some Newton iterations, and we have no good alternative.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div>Also, please remember to test that complex actually works before declaring it fixed. I just cleaned up a bunch more stuff, including pain invoked by SNES operating in PetscScalar for those 2x2 point location problems.<br>

<div><br></div><div><a href="https://bitbucket.org/petsc/petsc-dev/commits/0213b4504a412b7304d6032d6047079603a8c2c8" target="_blank">https://bitbucket.org/petsc/petsc-dev/commits/0213b4504a412b7304d6032d6047079603a8c2c8</a></div>
</div></div></blockquote><div><br></div><div style>We need to get mixed-mode working. This kind of programming is far to inconvenient and ugly, especially</div><div style>for small side problems like these that are never ever ever intended to support complex.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div></div><div>To be vectorization-friendly, I would write point location to operate directly on a batch of points, wrapped in the little Newton loop (not SNES). Maybe this implementation of yours is a reference that you're planning to replace?</div>

</div>
</blockquote></div><br>Yes, this is for a very small number of point locations necessary for seismic sources, not intended for</div><div class="gmail_extra">inter-mesh interpolation or anything that fills up the mesh.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra" style>   Matt</div><div class="gmail_extra"><div><br></div>-- <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
</div></div>