Thank, I know the fdfsolver works fine but not the fsolver which do not require the derivatives =========================================================================== Patrick DUPRÉ | | email: pdupre@xxxxxxx Laboratoire de Physico-Chimie de l'Atmosphère | | Université du Littoral-Côte d'Opale | | Tel. (33)-(0)3 28 23 76 12 | | Fax: 03 28 65 82 44 189A, avenue Maurice Schumann | | 59140 Dunkerque, France =========================================================================== > Sent: Saturday, June 06, 2015 at 10:54 PM > From: "Veli-Pekka Kestilä" <fedora@xxxxxxxxx> > To: "Community support for Fedora users" <users@xxxxxxxxxxxxxxxxxxxxxxx> > Subject: Re: gsl > > On 4.6.2015 16:23, Patrick Dupre wrote: > > > > =========================================================================== > > Patrick DUPRÉ | | email: pdupre@xxxxxxx > > Laboratoire de Physico-Chimie de l'Atmosphère | | > > Université du Littoral-Côte d'Opale | | > > Tel. (33)-(0)3 28 23 76 12 | | Fax: 03 28 65 82 44 > > 189A, avenue Maurice Schumann | | 59140 Dunkerque, France > > =========================================================================== > > > > > >> Sent: Thursday, June 04, 2015 at 3:01 PM > >> From: "Jonathan Underwood" <jonathan.underwood@xxxxxxxxx> > >> To: "Community support for Fedora users" <users@xxxxxxxxxxxxxxxxxxxxxxx> > >> Subject: Re: gsl > >> > >> On 3 June 2015 at 22:23, Patrick Dupre <pdupre@xxxxxxx> wrote: > >>> Hello, > >>> > >>> Can somebody help me? > >>> > >>> This short piece of code fails. > >>> It seems to be due to the gsl library! > >>> > >>> Thank for your help. > >>> > >>> #include <gsl/gsl_multifit_nlin.h> > >>> > >>> int main () { > >>> const gsl_multifit_fsolver_type *T_ ; > >>> gsl_multifit_fsolver *s_ = gsl_multifit_fsolver_alloc (T_, 10, 1); > >>> } > >>> > >> > >> You haven't initialized T_, so when you call > >> gsl_multifit_fsolver_alloc, it fails because it doesn't know what > >> solver type to allocate for. > >> > >> So, try initializing it, eg. > >> > >> const gsl_multifit_fsolver_type *T_ = gsl_multifit_fdfsolver_lmsder; > > warning: initialization from incompatible pointer type [enabled by default] > > const gsl_multifit_fsolver_type *T_ = gsl_multifit_fdfsolver_lmsder ; > > > > fsolver and fdfsolver are not compatible! > > I did not find a way to initiate this pointer. > > > > Try this code: > #include <gsl/gsl_multifit_nlin.h> > > int main () { > const gsl_multifit_fdfsolver_type * T = gsl_multifit_fdfsolver_lmder; > gsl_multifit_fdfsolver * s = gsl_multifit_fdfsolver_alloc (T, 100, 3); > } > > from: http://manpagez.com/info/gsl-ref/gsl-ref-1.12/gsl-ref_507.php > > Atleast I got it to compile and run without segfaults. > > -vpk > > -- > users mailing list > users@xxxxxxxxxxxxxxxxxxxxxxx > To unsubscribe or change subscription options: > https://admin.fedoraproject.org/mailman/listinfo/users > Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct > Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines > Have a question? Ask away: http://ask.fedoraproject.org > -- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines Have a question? Ask away: http://ask.fedoraproject.org