Using complex from C code
Mathieu Taillefumier
taillefu at mpi-halle.mpg.de
Mon Jul 3 03:49:51 CDT 2006
>> I still have to check the example code which does compile with. I have
>> some suggestions for this modifications.
>>
>
> I've pushed some changes [I -> Ii] to a bunch of examples to make them
> work. There could be some more examples that need this change. Some
> complex examples were giving errors - I'm not sure if this is some
> PETSc bug or a bug with the C99 complex change. This needs debugging.
>
If you look the changes I made in the different codes, they correspond
mostly to change I to Ii. It can be a bug in this changes but I think
that it comes from the examples. I will check also... Of course I had to
modify one header file, but I don't that the problem come from this part.
>> - Since I don't really know python, I made a very bad modification on
>> the language.py file. I put in comment two lines. However I think that
>> it is better to still have the c++ version as default language at this
>> time since I don't have enough feedback for C version. So the best is
>> I think that c++ is the default language for complex but have an
>> option to activate C version for complex numbers. I should also indicate
>> that the we need to have a C99 compliant compiler gcc 3.4 and after
>> work well but they are still not very optimized. Intel compiler works
>> also, but I don't know about the other. So use the option with care. The
>> modifications should not break anything.
>>
> I've made further fixes to configure to get complex working in C mode.
>
> Now the option --with-scalar-type is decoupled from
> --with-clanguage. This mode is a bit cleaner than trying to preserve
> the old default of complex => c++.
>
> BTW - gcc295 worked on my laptop [which also had gcc-3.4]. Not sure
> what that is.. [I have glibc-headers-2.3.6-0.fc3.1 - which is
> providing /usr/include/complex.h - which gcc295 is able to use]
>
I am surprised that gcc -2.95 works with complex numbers, but it is a
good news
> You might want to get the latest petsc-dev & BuildSystem [or
> petsc-dev.tar.gz snapshot] and see if it works.
>
Yes, I will download the last version of petsc-dev. Thank you
Regards
Mathieu
More information about the petsc-dev
mailing list