Unknown value remains start value - curve fitting toolbox

1 view (last 30 days)
Hello,
I'm trying to fit the Hertz model (parabolic) to some data using the curve fitting toolbox of MATLAB.
ft = fittype( '(4/3 * sqrt(20E-9)) * (E /(1-0.4^2)) * (d - 0)^(3/2)', 'independent', 'd', 'dependent', 'F' );
opts = fitoptions( ft );
opts.Algorithm = 'Levenberg-Marquardt';
opts.Display = 'Off';
opts.Lower = -Inf;
opts.StartPoint = 1.2E6;
opts.Upper = Inf;
ex = excludedata( xData, yData, 'Indices', [1 2 3... ]);
opts.Exclude = ex;
[fitresult, gof] = fit( xData, yData, ft, opts );
The problem I have is that it doesn't really seem to fit the model to the data. The unknown (Young's modulus E) always stays the same number I give as a start value. For one particular case I know that E should be around 3.8E6 but as you can see from the results E remains at the start value 1.2E6. Although, I'm not quite sure what the values in the brackets represent. Is it like an error of the E value?
General model:
ans(d) = (4/3 * sqrt(20E-9)) * (E /(1-0.4^2)) * (d - 0)^(3/2)
Coefficients (with 95% confidence bounds):
E = 1.2e+06 (6.103e+05, 1.79e+06)
I already played a lot with the number of iterations and the termination tolerance but the problem remains.
Anyone encountered the same problem or has an idea where my mistake is?
thanks a lot in advance!
  1 Comment
Star Strider
Star Strider on 28 May 2014
Not an ‘error’ in the brackets, but the 95% confidence limits. Since they don’t include zero, the estimate for ‘E’ is significant.

Sign in to comment.

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!