求高手验证解答MATLAB程序指数函数的函数M——文件function f=fun1(a,t)f=exp(a(1)*x+a(2));用最小二乘拟合求上述函数中待定常数,以及检验拟合效果的图形绘制程序t=1790:10:1990;x=[3.9 5.3 7.2 9.6 12.9
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/03 00:24:41
求高手验证解答MATLAB程序指数函数的函数M——文件function f=fun1(a,t)f=exp(a(1)*x+a(2));用最小二乘拟合求上述函数中待定常数,以及检验拟合效果的图形绘制程序t=1790:10:1990;x=[3.9 5.3 7.2 9.6 12.9
求高手验证解答MATLAB程序
指数函数的函数M——文件
function f=fun1(a,t)
f=exp(a(1)*x+a(2));
用最小二乘拟合求上述函数中待定常数,以及检验拟合效果的图形绘制程序
t=1790:10:1990;
x=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76 ...
92 106.5 123.2 131.7 150.7 179.3 204 226.5 251.4];
plot(t,x,'*',t,x);
a0=[0.001,1];
a=curvefit('fun1',a0,t,x)
ti=1790:5:2020;
xi=fun1(a,ti);
hold on
plot(ti,xi);
t1=2010;
x1=fun1(a,t1)
hold off
到了a0=[0.001,1];
a=curvefit('fun1',a0,t,x)
就进行不下去了显示?a=curvefit('fun1' a0 t x)
|
Error:Unexpected MATLAB expression.
或是显示?Undefined function or method 'curvefit' for input arguments of
type 'char'.
求救!到底是怎么回事?
求高手验证解答MATLAB程序指数函数的函数M——文件function f=fun1(a,t)f=exp(a(1)*x+a(2));用最小二乘拟合求上述函数中待定常数,以及检验拟合效果的图形绘制程序t=1790:10:1990;x=[3.9 5.3 7.2 9.6 12.9
matlab里面没有curvefit这个函数
可以用lsqcurvefit
fun1=@(a,t)exp(a(1)*t+a(2))
t=1790:10:1990;
x=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76 ...
92 106.5 123.2 131.7 150.7 179.3 204 226.5 251.4];
plot(t,x,'*',t,x);
a0=[0.001 1];
a=lsqcurvefit(fun1,a0,t,x)
ti=1790:5:2020;
xi=fun1(a,ti);
hold on
plot(ti,xi);
t1=2010
x1=fun1(a,t1)
hold off
fun1 =
@(a,t)exp(a(1)*t+a(2))
Optimization terminated: relative function value
changing by less than OPTIONS.TolFun.
a =
0.0148 -23.8308
t1 =
2010
x1 =
358.4798