已知数据和已知变量之间的关系,求未知参数。
下面是两组数据:
t=[0,7,14,21,28,35,42,49,56,63,70,77];
x=[14799,42837,65294,73152,70741,76010,70238,77673,76716,89166,87078,95973];
这个是参数之间的关系: y=rt+a,y=ln x,a=ln x0
求未知参数 r和 x0
求用MATLAB进行拟合
已知数据和已知变量之间的关系,求未知参数。
下面是两组数据:
t=[0,7,14,21,28,35,42,49,56,63,70,77];
x=[14799,42837,65294,73152,70741,76010,70238,77673,76716,89166,87078,95973];
这个是参数之间的关系: y=rt+a,y=ln x,a=ln x0
求未知参数 r和 x0
求用MATLAB进行拟合
直接上代码:
t=[0,7,14,21,28,35,42,49,56,63,70,77];
x=[14799,42837,65294,73152,70741,76010,70238,77673,76716,89166,87078,95973];
y = log(x);
p = polyfit(t,y,1);
r = p(1)
a = p(2)
x0 = exp(a)
yfit = polyval(p,t);
xfit = exp(yfit);
figure
plot(t,x,'*')
hold on
plot(t,xfit,'r')
legend('原始数据点','拟合曲线')
xlabel('t')
ylabel('x')
结果:
r =
0.0148
a =
10.5040
x0 =
3.6462e+04
拟合图: