<div class="gmail_quote">On Sun, Jan 15, 2012 at 16:06, Xavier Garnaud <span dir="ltr"><<a href="mailto:xavier.garnaud@ladhyx.polytechnique.fr">xavier.garnaud@ladhyx.polytechnique.fr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Here is the error message I got.<br>
<br>
Building C object CMakeFiles/petsc.dir/src/sys/draw/interface/dsflush.c.o<br>
/home/garnaud/local/petsc/petsc-3.2-p5/src/sys/draw/interface/dsetpause.c:<br>
In function PetscDrawSetPause:<br>
/home/garnaud/local/petsc/petsc-3.2-p5/src/sys/draw/interface/dsetpause.c:33:3:<br>
error: MPIU___FLOAT128 undeclared (first use in this function)<br>
/home/garnaud/local/petsc/petsc-3.2-p5/src/sys/draw/interface/dsetpause.c:33:3:<br>
note: each undeclared identifier is reported only once for each function it<br>
appears in<br></blockquote><div><br></div><div>You will need something like the following, and also some code at about src/sys/objects/pinit.c:750 to create MPIU_C___FLOAT128_COMPLEX. Let us know if you work it out, otherwise I'll take a look at it later.</div>
<div><br></div><div><div><font face="'courier new', monospace">--- a/include/petscmath.h</font></div><div><font face="'courier new', monospace">+++ b/include/petscmath.h</font></div><div><font face="'courier new', monospace">@@ -112,6 +112,9 @@</font></div>
<div><font face="'courier new', monospace"> #define MPIU_SCALAR MPIU_C_COMPLEX</font></div><div><font face="'courier new', monospace"> #elif defined(PETSC_USE_REAL_DOUBLE)</font></div><div><font face="'courier new', monospace"> #define MPIU_SCALAR MPIU_C_DOUBLE_COMPLEX</font></div>
<div><font face="'courier new', monospace">+#elif defined(PETSC_USE_REAL___FLOAT128)</font></div><div><font face="'courier new', monospace">+#define MPIU_SCALAR MPIU_C___FLOAT128_COMPLEX</font></div><div><font face="'courier new', monospace">+extern MPI_Datatype MPIU_C___FLOAT128_COMPLEX</font></div>
<div><font face="'courier new', monospace"> #endif /* PETSC_USE_REAL_* */</font></div><div><font face="'courier new', monospace"> </font></div><div><font face="'courier new', monospace"> /*</font></div>
</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Thank you<br>
<div><div></div><div class="h5"><br>
On Sun, Jan 15, 2012 at 5:43 PM, Jed Brown <<a href="mailto:jedbrown@mcs.anl.gov">jedbrown@mcs.anl.gov</a>> wrote:<br>
<br>
> On Sun, Jan 15, 2012 at 05:54, Xavier Garnaud <<br>
> <a href="mailto:xavier.garnaud@ladhyx.polytechnique.fr">xavier.garnaud@ladhyx.polytechnique.fr</a>> wrote:<br>
><br>
>> Thank you for your help.<br>
>><br>
>> quadmath.h contains quad complex functions. I naively added the functions<br>
>> for quad complex. The beginning of the compilation works, but then it fails<br>
>> with an MPI related error. I will contact you again when i manage to make<br>
>> it work,<br>
>><br>
><br>
> What was the MPI error?<br>
><br>
> It's likely that we are missing data types and MPI_Ops for quad complex.<br>
><br>
><br>
>><br>
>> Sincerely,<br>
>><br>
>> Xavier<br>
>><br>
>><br>
>><br>
>> On Mon, Jan 9, 2012 at 8:01 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>> wrote:<br>
>><br>
>>><br>
>>> We've never tried to do this.<br>
>>><br>
>>> First you need to check if quadmath.h has quad complex stuff in it?<br>
>>> If it does you need to add into petscmath.h the quad complex bindings for<br>
>>> all the various math operations like PetscScalar and PetscSqrtScalar() etc<br>
>>><br>
>>> Barry<br>
>>><br>
>>><br>
>>> On Jan 9, 2012, at 12:05 PM, Xavier Garnaud wrote:<br>
>>><br>
>>> > I am trying to build PETSc with complex number and quadruple<br>
>>> precision, but<br>
>>> > I get an error at the compiling stage. I do not get this error when I<br>
>>> do<br>
>>> > the same using real numbers. Are complex numbers incompatible with<br>
>>> > quadruple precision?<br>
>>> > Thank you very much,<br>
>>> > Sincerely,<br>
>>> ><br>
>>> > Xavier<br>
>>> ><br>
>>> > <configure.log><make.log><br>
>>><br>
>>><br>
>><br>
><br>
<br>
</div></div></blockquote></div><br>