Here is my data
{{1.25, 1.80901*10^-7}, {1.29, 2.09306*10^-7}, {1.31,
2.26933*10^-7}, {1.33, 2.30064*10^-7}, {1.43, 3.15002*10^-7}, {1.47,
3.63006*10^-7}, {1.51, 4.31649*10^-7}, {1.535, 4.73*10^-7}, {1.57,
5.42432*10^-7}, {1.61, 6.19763*10^-7}, {0.14, 8.4686*10^-7}, {0.23,
6.45612*10^-7}, {0.27, 5.65504*10^-7}, {0.305, 5.12656*10^-7}}
and I use the function of
f[zr_, z0_, x_] := l*zr/Pi (1 + ((x + z0)/zr )^2)
And usding Find fit I tried to estimate the paramter z0 and zr
z = FindFit[data, f[zr, z0, x], {zr, z0}, x]
But the problem is it does not give me the best fitting!
If I use just half of the data after 1.00,
{{1.25, 1.80901*10^-7}, {1.29, 2.09306*10^-7}, {1.31,
2.26933*10^-7}, {1.33, 2.30064*10^-7}, {1.43, 3.15002*10^-7}, {1.47,
3.63006*10^-7}, {1.51, 4.31649*10^-7}, {1.535, 4.73*10^-7}, {1.57,
5.42432*10^-7}, {1.61, 6.19763*10^-7}}
I will get the fitting such like this. It seems to me that the residual is much smaller than previous graph, and making more sense, but why mathmetica is showing me the bad fit for all the data? and how can I solve the problem?