On Mon, Sep 10, 2012 at 11:19 AM, 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_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I would like to use complex arithmetic in some code that does polynomial optimization in the complex plane (for adaptive smoothers), even when PetscScalar is real. I'd like to push something like the attached, but since this is potentially fragile, I'm posting here before pushing. Any objections to my pushing?<div>

<br></div><div>This works with my C and C++ real builds as well as C and C++ complex. I also tried a real build that disabled PETSC_HAVE_C99_COMPLEX (because all my compilers support it), but of course that's not much of a check.<br>

<div>
<br></div><div>One thing that I think we could support (because C99 and C++ complex is binary compatible) is choosing the complex implementation based on the current language rather than PETSC_CLANGUAGE.</div>
</div>
</blockquote></div><br>This looks good to me, but I am confused. What does this diff have to do with unstructured meshes?<div><br></div><div>   Matt<br clear="all"><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<br>
</div>