作业帮 > 综合 > 作业

sir传染病模型 MATLAB代码运行不了,

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/07 19:56:39
sir传染病模型 MATLAB代码运行不了,
function y=ill(t,x)
a=1;b=0.3;
y=[a*x(1)*x(2)-b*x(1),-a*x(1)*x(2)]';
ts=0;50;
x0=[0.02,0.98];
[t,x]=ode45('ill',ts,x0);[t,x]
plot(t,x(:,1),t,x(:,2)),grid,pause
plot(x(:,2),x(:,1)),grid,
sir传染病模型 MATLAB代码运行不了,

function y=ill(t,x)
a=1;b=0.3;
y=[a*x(1)*x(2)-b*x(1),-a*x(1)*x(2)]';
保存为m文件就可以运行
再问: 谢谢,但我一运行就出现 ?? Input argument "x" is undefined. Error in ==> ill at 3 y=[a*x(1)*x(2)-b*x(1),-a*x(1)*x(2)]'; 怎么修改哈?
再答: 应该就是函数定义问题 打开matlab,按左上角file菜单,选择第一项new,选择第一项m-flie 将 function y=ill(t,x) a=1;b=0.3; y=[a*x(1)*x(2)-b*x(1),-a*x(1)*x(2)]'; copy进去,选择save as 保存时文件名为ill 然后关闭m文件 回到command window 将 ts=0;50; x0=[0.02,0.98]; [t,x]=ode45('ill',ts,x0);[t,x] plot(t,x(:,1),t,x(:,2)),grid,pause plot(x(:,2),x(:,1)),grid, copy进去运行即可。
再问: 谢谢您的耐心指导,我是新手。按您的步骤运行出现了 ??? Error using ==> odearguments at 101 The last entry in tspan must be different from the first entry. Error in ==> ode45 at 173 [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ... 不知道什么原因?
再答: OMG 你的ts那一行写错了 应该是 ts=0:50; 中间那里是冒号,你写成分号了!!!