Unknown value remains start value - curve fitting toolbox
4 次查看(过去 30 天)
显示 更早的评论
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 个评论
Star Strider
2014-5-28
Not an ‘error’ in the brackets, but the 95% confidence limits. Since they don’t include zero, the estimate for ‘E’ is significant.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Smoothing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!