Fitting question
- To: mathgroup at smc.vnet.net
- Subject: [mg51585] Fitting question
- From: János <janos.lobb at yale.edu>
- Date: Sat, 23 Oct 2004 00:22:57 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
I have two lists. One of them contains the running total of some quantity per cycles, the other contains the totals per cycles. Here they are: In[35]:= runtotpergen = {1, 23, 136, 568, 1735, 4382, 9099, 16384, 25993, 36694, 47752, 58044, 66761, 73534, 78429, 81753, 83750, 84873, 85482, 85779, 85937, 86025, 86069, 86081, 86087} In[36]:= totpergen = {1, 22, 113, 432, 1167, 2647, 4717, 7285, 9609, 10701, 11058, 10292, 8717, 6773, 4895, 3324, 1997, 1123, 609, 297, 158, 88, 44, 12, 6} I am trying to find out the analytical form of a function which fits best totpergen. Looking the ListPlot of runtotpergen, it looks similar to the sigmoid function, so I define: In[37]:= sg[x_] := 1/(1 + E^(-x)) and In[38]:= dsg = Derivative[1][sg] The best I could come out with manual try was: In[40]:= dsgfit = Fit[totpergen, {dsg[0.48*(x - 11)]}, x] Out[40]= 44143.063409020484/ (E^(0.48*(-11 + x))* (1 + E^(-0.48*(-11 + x)))^ 2) When I create the plots of the data totpergen and the above Fit dsgfit as: In[41]:= lsp = ListPlot[totpergen, PlotRange -> All] In[42]:= psp = Plot[dsgfit, {x, 1, 25}] and plot them together, they overlap to some degree, but not to my satisfaction. In[43]:= Show[lsp, psp] totpergen is not symmetrical, so I tried different multiplications of x^n and dsg without any success. I also tried the polynomials of dsg like: In[83]:= polydsgfit = Fit[totpergen, {1, dsg[x - 11], dsg[x - 11]^2, dsg[x - 11]^3, dsg[x - 11]^4}, x] but it just looks funny. I also tried: In[92]:= paramdsgfit = FindFit[ totpergen, a*dsg[b*x - c] + d, {a, b, c, d}, x] Out[92]= {a -> -2250.9485483974095, b -> -14745.171180125675, c -> 111324.17194273268, d -> 3443.48} but it gave me just a horizontal line when I plotted it. In[101]:= ip = InterpolatingPolynomial[ totpergen, x] does not help either. I feel that Mathematica has the capability to find the best fitting function without too much manual trials. Any hint how to do that ? Thanks ahead. János ---------------------------------------------- Trying to argue with a politician is like lifting up the head of a corpse. (S. Lem: His Master Voice)