作业帮 > 数学 > 作业

用matlab作指数拟合曲线!

来源:学生作业帮 编辑:拍题作业网作业帮 分类:数学作业 时间:2024/05/22 22:57:02
用matlab作指数拟合曲线!
数据x=[0.187 0.353 0.388 0.399 0.405 0.407 0.409 0.412 0.413 0.415 0.415 0.415 0.415 0.415];y=[75 56 35 26 20 17 15 12 9 8 7 6 5 4.6]
拟合函数原型为y=a*exp(b*x-1)+c 用了cftool做出来的完全不对啊
对于自己定义的函数形式拟合,其中的参数是要设定范围的,如果按matlab中默认的-inf到+inf弄出来的结果肯定不对,根据你的具体数据,大概估计一下三个参数的范围,然后再拟合就OK了
根据你的具体数据设置方法如下:
把参数a的上界设为0,初始值设为-1
其他两个参数b,c默认就行
结果如下:
General model:
f(x) = a*exp(b*x-1)+c
Coefficients (with 95% confidence bounds):
a = -0.03803 (-0.06769,-0.008361)
b = 20.49 (18.66,22.32)
c = 75.53 (73.07,77.98)
Goodness of fit:
SSE:12.14
R-square:0.9979
Adjusted R-square:0.9975
RMSE:1.051