作业帮 > 综合 > 作业

用MATLAB拟合逻辑斯蒂模型.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/03 07:16:14
用MATLAB拟合逻辑斯蒂模型.
1)编写M-文件curvefun1.m
funtion f = curvefun1(x,tdata)
a=3.1
f=x(1)/(1+(x(1)/a-1)*exp(-t*x(2))) %其中x(1)=Xm;x(2)=r
2)主程序如下:
clear
tdata=[1 2 3 4 5 6 7 8 9 10 11 12];
cdata=[3.1 3.6 4.2 4.8 6.7 9.1 13 18.9 29 51.1 78.2 113];
x0=[300,0.6];
x=lsqcurvefit('curvefun1',x0,tdata,cdata)
f=curvefun1(x,tdata)
这个程序哪错了?怎么不能运行,
我是初学者,怎么定义X?
这样,在一个程序里:
function hh
tdata=[1 2 3 4 5 6 7 8 9 10 11 12];
cdata=[3.1 3.6 4.2 4.8 6.7 9.1 13 18.9 29 51.1 78.2 113];
x0=[300,0.6];
x=lsqcurvefit(@curvefun1,x0,tdata,cdata)
f=curvefun1(x,tdata)
plot(tdata,cdata,'o',tdata,f)
function f = curvefun1(x,t)
a=3.1
f=x(1)./(1+(x(1)/a-1)*exp(-t*x(2))) %其中x(1)=Xm;x(2)=r
如果分开:
function f = curvefun1(x,t)
a=3.1
f=x(1)./(1+(x(1)/a-1)*exp(-t*x(2))) %其中x(1)=Xm;x(2)=r
主程序:
tdata=[1 2 3 4 5 6 7 8 9 10 11 12];
cdata=[3.1 3.6 4.2 4.8 6.7 9.1 13 18.9 29 51.1 78.2 113];
x0=[300,0.6];
x=lsqcurvefit('curvefun1',x0,tdata,cdata)
f=curvefun1(x,tdata)
plot(tdata,cdata,'o',tdata,f)