Using complex from C code

Satish Balay balay at mcs.anl.gov
Sat Jul 1 09:40:30 CDT 2006


On Sat, 1 Jul 2006, Mathieu Taillefumier wrote:

> 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.

> - 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]

You might want to get the latest petsc-dev & BuildSystem [or
petsc-dev.tar.gz snapshot] and see if it works.

Satish

> - As I said before. I still have to look at the example code with do
> not compile when Complex are activated. It is just question of time.
> 
> Regards
> 
> Mathieu
> 




More information about the petsc-dev mailing list