[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-gsl] question for GSL nonlinear least squares fitting
From: |
Patrick Alken |
Subject: |
Re: [Help-gsl] question for GSL nonlinear least squares fitting |
Date: |
Thu, 18 Dec 2014 08:53:56 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 |
The nonlinear least squares solver doesn't care about the dimensionality
of the data - its your job to handle that.
The 'f' vector is the vector of residuals, whose sum of squares is
minimized by the solver. If you have a total of n residuals (ie: n data
points),
f_i = D_i - G(x_i,y_i,p)
where G is your model (Gaussian) and p are the parameters.
On 12/17/2014 08:11 PM, address@hidden wrote:
> Hello,
>
> I'm trying to fit a two dimensional Gaussian function to many measured
> data points D(x,y,z) which x and y are position coordinates and z is the
> value of point (x,y). However there are some questions about data
> dimension.
>
> I use "GSL nonlinear least squares fitting" to do the fitting. The two
> dimensional Gaussian G(x,y,p1,p2,...,pn) is matrix which p1,p2,..pn are
> parameters. However the f is gsl_vector * datatype in the function int (*
> f) (const gsl_vector * x, void * params, gsl_vector * f) of
> gsl_multifit_function_fdf. I'm wondering that if the nonlinear least
> squares fitting only can deal with one-dimensional data?? If data is
> higher dimensional, we need flat the higher-dimensional data into one
> dimension?
>
> for two dimensional Gaussian model, the Jacobian is a cube which is (x,y,p).
>
> However If we flat the higher-dimensional data into one dimension, when we
> fit the position parameter (x,y ...), Can I get the fitted parameters from
> nonlinear least squares fitting directly?
>
> Bests
>
> Li
>
>