matlab用最小二乘法求一形如Y=ct^m(c和m为待定系数)的多项式,使之与下列数据相拟合,

2025-04-07 23:17:16
推荐回答(1个)
回答1:

没使用过fittype和fit函数。不过要拟合y=ct^m的话可以使用多项式拟合:

两边取对数得:log y = m log t + log c,变成线性拟合(即一阶多项式拟合),代码如下:

t = [19 25 31 38 44];
y = [19 32.3 49 73.8 97.8];
a = polyfit(log(t), log(y), 1);
m = a(1), c = exp(a(2))

tt = 1:100;
yy = c*tt.^m;
plot(t, y, 'o', tt, yy)