0

我正在尝试使用 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 );

我遇到的问题是它似乎并没有真正使模型适合数据。未知数(杨氏模量 E)始终保持与我给出的起始值相同的数字。对于这种特殊情况,我知道 E 应该在 3.8E6 左右,但从结果中可以看出,E 保持在起始值 1.2E6。Althoug,我不太确定括号中的值代表什么。是不是像 E 值的错误?

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)

我已经玩了很多迭代次数和终止容差,但问题仍然存在。

任何人都遇到过同样的问题或知道我的错误在哪里?

提前非常感谢!

4

0 回答 0