I am using "genfit" routine to fit my data to a modeled signal. The modeled signal in the attached worksheet is sp(k,b) where "k" is the variable and "b" is a set of coefficients.
My first question is that : the output of the "genfit" does not perfectly match with the original data. Is there anything I could do to improve the results? (Except changing the guess values, because they are obtained from another section of the program)
For the second question, the residual function highly depends on the variable "k" as is shown by the graph. Is it a normal behaviour?
Thank you very much in advance
If you zoom in on the graph of Y and sp(k,bb) you will see that at the start Y leads sp(k,bb), in the middle there is almost no phase difference, and at the end sp(k,bb) leads Y. So you have a gradually varying phase, which is not allowed for in your fit. That's why the residuals look the way they do. Since your "data" is synthetic you will have to figure out why it is not modeled well enough by your function. I suspect that it has something to do with the fact that your data is created using 6 parameters, but you are only using 5 parameters in the fit (b0 is not used anywhere in your function).
Your guess values are too far off. If you make b:=inn for the guesses, the fit is much better. Genfit is finding a local minimum.
Maybe, but you still need better guesses. Genfit is an iterative solver, and with your current guesses it heads into a local minimum and stops.