help-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gsl_function


From: Patrick Dupre
Subject: Re: gsl_function
Date: Tue, 16 Jun 2020 11:58:06 +0200

Thanks for the feedback.

Humm,
Can I void to make the same calculation twice?
One time to integrate the real part, and one time to integrate the imaginary 
part?

Thanks.

===========================================================================
 Patrick DUPRÉ                                 | | email: pdupre@gmx.com
 Laboratoire interdisciplinaire Carnot de Bourgogne
 9 Avenue Alain Savary, BP 47870, 21078 DIJON Cedex FRANCE
 Tel: +33 (0)380395988
===========================================================================


> Sent: Tuesday, June 16, 2020 at 10:45 AM
> From: "Marek Nečada" <marek@necada.org>
> To: "Patrick Dupre" <pdupre@gmx.com>
> Cc: help-gsl@gnu.org
> Subject: Re: gsl_function
>
> Hi Patrick,
> 
> you can't return a complex with gsl_function.
> 
> Integrate the real and imaginary parts separately.
> 
> Best regards,
> Marek Nečada
> 
> 
> 
> Patrick Dupre kirjoitti 16.6.2020 klo 11.29:
> > Hello,
> > 
> > I need to return a complex with a gsl_function.
> > How can I do?
> > 
> > Here is an example
> > 
> > #include <math.h>
> > #include <stdio.h>
> > #include <complex.h>
> > #include <gsl/gsl_integration.h>
> > 
> > double complex tt (double complex z) {
> >   double complex y = 0 ;
> >   for (unsigned short int i = 0 ; i < 5 ; i++) {
> >     y += z ;
> >     }
> >   return y ;
> >   }
> > 
> > main () {
> >   gsl_function fcn ;
> >   double complex y0 = 1 + I * 0.5 ;
> >   fcn.function = &tt ;
> >   double complex z = tt (y0) ;
> >   double complex zz = (double complex) fcn.function (y0, fcn.params) ;
> >   printf ("%g %g, %g %g\n", z, zz) ;
> >   }
> > 
> > Result (zz is not correct)
> > 5 2.5, 5 0
> > 
> > Some ideas?
> > 
> > Thanks
> > 
> > ===========================================================================
> >  Patrick DUPRÉ                                 | | email: pdupre@gmx.com
> >  Laboratoire interdisciplinaire Carnot de Bourgogne
> >  9 Avenue Alain Savary, BP 47870, 21078 DIJON Cedex FRANCE
> >  Tel: +33 (0)380395988
> > ===========================================================================
> > 
> > 
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]