MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: fitting multiple datasets

Hi Nate,
You could e.g. add an additional first coordinate x0 to your data 
points, that indicates the data set,  and define f (I call the known 
parameters a and b and the unknown p1,p2,p3):
    x0==1, f[x,a1,b1,p1,p2,p3],
    x0==2, f[x,a2,b2,p1,p2,p3],
    x0==3, f[x,a3,b3,p1,p2,p3],
    x0==4, f[x,a4,b4,p1,p2,p3],
    x0==5, f[x,a5,b5,p1,p2,p3]
Then you would call FindFit:


for contstrained optimization you could use NMinimize

sincerely, Daniel

Nate Traaseth wrote:
> I have two questions,
> 1) I have multiple datasets, and one function that depend on multiple 
> parameters, of which I would like to find a global best fit to three of the 
> parameters. However, within each dataset, I need to specify slightly 
> different parameters within the function. For example (not actual function 
> and will not make sense),
> f(a_,b_,c_,d_,e_) = a*x^5 + b*x^4 + c*x^3 + d*x^2 + e*x
> In datasets 1-5, I would like to specify different "a" and "b" values (for 
> each dataset), while finding the best single fit (global) for "c," "d," and 
> "e" in the function using all datasets.
> I see that using "FindFit" one can enter multiple points of the same 
> dataset, and minimize the parameters of a function to best fit one dataset, 
> but is it possible to enter multiple datasets and find a global minimum for 
> multiple parameters in a function? Or do I need to write my own loop in 
> Mathematica?
> 2) When I am doing a minimization using "FindFit" how do I tell the 
> minimization routine that I am only interested in solutions (assuming they 
> exist as local minima) that satisfy a certain range. For example, a 
> solution to a parameter that is only within the range {a,b}.
> thanks
> Nate

  • Prev by Date: Mathematica program generating sequence of points stalls for no apparent reason.
  • Next by Date: Re: problem with InverseLaplaceTransform
  • Previous by thread: Re: Re: fitting multiple datasets
  • Next by thread: problem with InverseLaplaceTransform