求助MATLAB

来源:百度知道 编辑:UC知道 时间:2024/05/12 11:37:58
,t=1:10,y=[4.842 4.362 3.754 3.368 3.169 3.038 3.034 3.016 3.012 3.005 ] 分别用y(t)=a+b*e^(-t)和y(t)=a+b*t*e^(-t)进行拟和!!
用什么来进行线性拟和啊

如果是进行线形拟合时,就使用polyfit(x,y,1)函数;
如果是用y(t)=a+b*e^(-t)和y(t)=a+b*t*e^(-t)进行拟和,(用MATLAB7.0测试成功.源程序如下所示)

t=1:10;
y=[4.842 4.362 3.754 3.368 3.169 3.038 3.034 3.016 3.012 3.005];
plot(t,y,'ro')
hold on
c=exp(-t');
A=[ones(10,1),c];
b=y';
C=pinv(A)*b;
t=1:0.1:10;
y1=C(1)+C(2)*exp(-t);
plot(t,y1,'-k')
grid on

对y(t)=a+b*t*e^(-t)进行拟和,同上例所示,只需把”c=exp(-t'); ”变化为"t=t';c=t*exp(-t);"即可.