On 3 Aug 2016, at 13:00, numpy-discussion-requ...@scipy.org wrote: > Message: 3 > Date: Tue, 2 Aug 2016 22:50:42 +0100 > From: Evgeni Burovski <evgeny.burovs...@gmail.com> > To: Discussion of Numerical Python <numpy-discussion@scipy.org> > Subject: Re: [Numpy-discussion] scipy curve_fit variable list of > optimisation parameters > Message-ID: > <camro0ivcs8hqr6pyo9-wvnhbopgyzafwfznmvwe5q5ntxna...@mail.gmail.com> > Content-Type: text/plain; charset=UTF-8 > > > You can use `leastsq` or `least_squares` directly: they both accept an > array of parameters. > > BTW, since all of these functions are actually in scipy, you might > want to redirect this discussion to the scipy-user mailing list.
Hi all I found the solution in the following thread: http://stackoverflow.com/questions/28969611/multiple-arguments-in-python One has to call curve_fit with 'p0' (giving curve_fit a clue about the unknown number of variables) I changed func2 to (note the *): def func2( x, *a ): # Bessel function tmp = scipy.special.j0( x[:,:] ) return np.dot( tmp[:,:] , a[:] ) and call it: N = number of optimisation parameters popt = scipy.optimize.curve_fit( func2, x, yi , p0=[1.0]*N) Regards, Siegfried Gonzi Met Office, Exeter, UK -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org https://mail.scipy.org/mailman/listinfo/numpy-discussion