Re: Fitting a Function with no closed form
- To: mathgroup at smc.vnet.net
- Subject: [mg98671] Re: Fitting a Function with no closed form
- From: dh <dh at metrohm.com>
- Date: Thu, 16 Apr 2009 04:12:17 -0400 (EDT)
- References: <gs47hd$7kn$1@smc.vnet.net>
Hi Adam, you can calculate data pairs: d={{x1,y1},{x2,y2}..} You also have the specified function F[x,p1,p2], where p1 and p2 are the parameter to fit. Then you can calculate the parameters by e.g.: FindFit[d,F[x,p1,p2],{p1,p2},x] Here is an example: ========================= d = Table[{x, RandomReal[{-1, 1}] + 2 Exp[0.1 x]}, {x, 0, 10}]; F[x_, p1_, p2_] := p1 Exp[p2 x]; FindFit[d, F[x, p1, p2], {p1, p2}, x] ========================= Daniel Adam Dally wrote: > I have a histogram which I am trying to fit with a convoluted function. > > I get out the list of bin counts easy enough, but I can't figure out a way > to fit the function to the data. > > This is the function: > F(x)=Re[NIntegrate [normalizer*(E0 - u)^2 Sqrt[1 - m^2/(E0 - u)^2]*Exp[(-((x > - u)^2/(2 \[Sigma]^2)))/(Sqrt[2 \[Pi]] \[Sigma])], {u, 0, E0}]] > "E0" and "sigma" are known constants. "Normalize" and "m" are the fitting > parameters. > > I can get a plot or of a table of values out of the function by: > Plot[F(x),{x, minRange, maxRange}] > Table[F(x),{x, minRange, maxRange, binWidth}] > > Is there a way to fit using a function like this? I would also like to error > bars on the fit parameters. > > Thank you, > Adam Dally >