Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Mathematica, fitting an arbitrary number of parameters

  1. Jun 2, 2008 #1
    Let's say I have some data, as a function of a variable [itex]x[/itex]. I want to fit this to the real part of the function

    [tex]\frac{A}{1-ix}\left(1+\sum_{n=1}^\infty\frac{c_n}{(1-ix)^n}\right)[/tex]

    by numerically fitting the first [itex]N[/itex] of the [itex]c_n[/itex]'s ([itex]A[/itex] is fixed). I tried something like

    Code (Text):

    A = 1; N = 100;
    fit = FindFit[data, Re[A(1+Sum[c[k]/(1-i x)^k,{k,1,N}])], Table[c[k], {k,1,N}], x];
    Plot[Re[A(1+Sum[c[k]/(1-i x)^k,{k,1,N}])]/.fit, {x,0,10}]
     
    However, this way does not work. For the case [itex]N=5[/itex], I put in the summation explicitly, calling my parameters c1, c2, etc, and it produces different (better) results than the above code. This is not feasible if I want the first 100 or 1000 coefficients, so any help with the above method would be appreciated. Thanks in advance.
     
  2. jcsd
  3. Jun 5, 2008 #2
    Anybody?
     
  4. Jun 5, 2008 #3

    Redbelly98

    User Avatar
    Staff Emeritus
    Science Advisor
    Homework Helper

    It looks like your code is missing the factor 1 / (1-ix)
     
  5. Jun 6, 2008 #4

    Dale

    Staff: Mentor

    Also, in Mathematica the symbol N is protected, use n instead.
     
  6. Jun 6, 2008 #5
    Yes, it is, but the original code wasn't. That was just me missing it when typing it into here.
    That could be the problem, I'll check it later. Thanks for the replies.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?



Similar Discussions: Mathematica, fitting an arbitrary number of parameters
Loading...