如何在Matlab里对曲线y=exp(-k*X^N)的拟合?x = [0:8:112];y = [64.66,61.56,58.59,50.42,48.56,45.83,42.61,40.01,37.16,34.99,33.14,31.71,30.60,29.98,29.17];数据y=[1 0.95210728 0.906130268 0.779693487 0.75095785 0.708812 0.659004 0.618774 0.5747
来源:学生作业帮助网 编辑:六六作业网 时间:2025/02/06 21:41:50
如何在Matlab里对曲线y=exp(-k*X^N)的拟合?x = [0:8:112];y = [64.66,61.56,58.59,50.42,48.56,45.83,42.61,40.01,37.16,34.99,33.14,31.71,30.60,29.98,29.17];数据y=[1 0.95210728 0.906130268 0.779693487 0.75095785 0.708812 0.659004 0.618774 0.5747
如何在Matlab里对曲线y=exp(-k*X^N)的拟合?
x = [0:8:112];
y = [64.66,61.56,58.59,50.42,48.56,45.83,42.61,40.01,37.16,34.99,33.14,31.71,30.60,29.98,29.17];
数据y=[1 0.95210728 0.906130268 0.779693487 0.75095785 0.708812 0.659004 0.618774 0.574713 0.541188 0.512452 0.490421 0.47318 0.463602 0.451149 ]
如何在Matlab里对曲线y=exp(-k*X^N)的拟合?x = [0:8:112];y = [64.66,61.56,58.59,50.42,48.56,45.83,42.61,40.01,37.16,34.99,33.14,31.71,30.60,29.98,29.17];数据y=[1 0.95210728 0.906130268 0.779693487 0.75095785 0.708812 0.659004 0.618774 0.5747
1.你这个数据显然不能用y=exp(-k*X^N)去拟合
当x=0时y=exp(-k*X^N)=1,而你给的第一个y值是64.66,这错的太离谱了!
2.用y=a*exp(-b*x^c)是可以的
General model:
f(x) = a*exp(-b*x^c)
Coefficients (with 95% confidence bounds):
a = 66.01 (63.28, 68.75)
b = 0.01589 (0.006259, 0.02552)
c = 0.8514 (0.7225, 0.9803)
Goodness of fit:
SSE: 22.64
R-square: 0.9887
Adjusted R-square: 0.9868
RMSE: 1.374
能否将
y=exp(-k*X^N)
改为
y=a*exp(-b*x^c)
polyfit
你这不能用ployfit拟合,那是拟合线性曲线的,要用lsqcurvefit,lsqcurvefit是拟合指数函数的!