如何用MATLAB解下列微分方程
解微分方程程序如下:functionf=funl(t,x);rl=l;r2=o.5;r3=O.6;lambdal=O.1;lambda2=0.02;lambda3=0.0...
解微分方程程序如下:
function f=funl(t,x);
rl=l;r2=o.5;r3=O.6;lambdal=O.1;lambda2=0.02;
lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));x(2)*(-r2+lambda2*x(1)-mu*x
(3));x(3)*(-r3+lambda3*x(2))];
[t,x]=ode45('funl,[0,2O],[1OO,40,6]);
subplot(1,2,1)
plot(t,x(:,1),'-',t,x(:,2),'-',t,x(:,3), ':'
legend('x1(t)','x2(t)','x3(t)')
grid
subplot(1,2,2)
plot3(x(:,1),x(:,2),x(:,3))
grid
错误如下,
??? function f=funl(t,x);
|
Error: Function definitions are not permitted at the prompt or in scripts.
怎么改正阿 展开
function f=funl(t,x);
rl=l;r2=o.5;r3=O.6;lambdal=O.1;lambda2=0.02;
lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));x(2)*(-r2+lambda2*x(1)-mu*x
(3));x(3)*(-r3+lambda3*x(2))];
[t,x]=ode45('funl,[0,2O],[1OO,40,6]);
subplot(1,2,1)
plot(t,x(:,1),'-',t,x(:,2),'-',t,x(:,3), ':'
legend('x1(t)','x2(t)','x3(t)')
grid
subplot(1,2,2)
plot3(x(:,1),x(:,2),x(:,3))
grid
错误如下,
??? function f=funl(t,x);
|
Error: Function definitions are not permitted at the prompt or in scripts.
怎么改正阿 展开
2个回答
展开全部
function f=funl(t,x)
rl=1;r2=0.5;r3=0.6;
lambdal=0.1;lambda2=0.02;lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));
x(2)*(-r2+lambda2*x(1)-mu*x(3));
x(3)*(-r3+lambda3*x(2))];
%将这一段程序保存为funl.m
%主程序如下
ts=0:0.1:20;
x0=[100,40,6];
[t,x]=ode45('funl',ts,x0);
subplot(1,2,1)
plot(t,x(:,1),'-',t,x(:,2),'-',t,x(:,3), ':');
legend('x1(t)','x2(t)','x3(t)');
grid
subplot(1,2,2)
plot3(x(:,1),x(:,2),x(:,3));
grid
保证funl与主程序在同一目录,并且matlab的当前目录,指向funl函数保存的地方。
相轨迹画出来像数字8
rl=1;r2=0.5;r3=0.6;
lambdal=0.1;lambda2=0.02;lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));
x(2)*(-r2+lambda2*x(1)-mu*x(3));
x(3)*(-r3+lambda3*x(2))];
%将这一段程序保存为funl.m
%主程序如下
ts=0:0.1:20;
x0=[100,40,6];
[t,x]=ode45('funl',ts,x0);
subplot(1,2,1)
plot(t,x(:,1),'-',t,x(:,2),'-',t,x(:,3), ':');
legend('x1(t)','x2(t)','x3(t)');
grid
subplot(1,2,2)
plot3(x(:,1),x(:,2),x(:,3));
grid
保证funl与主程序在同一目录,并且matlab的当前目录,指向funl函数保存的地方。
相轨迹画出来像数字8
展开全部
script不能被调用,你应该把
function f=funl(t,x);
rl=l;r2=o.5;r3=O.6;lambdal=O.1;lambda2=0.02;
lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));x(2)*(-r2+lambda2*x(1)-mu*x
(3));x(3)*(-r3+lambda3*x(2))];
定义在函数中,函数以function开头,可以被调用.
[t,x]=ode45('funl,[0,2O],[1OO,40,6]);
function f=funl(t,x);
rl=l;r2=o.5;r3=O.6;lambdal=O.1;lambda2=0.02;
lambda3=0.06;mu=0.1;
f=[x(1)*(rl-lambdal*x(2));x(2)*(-r2+lambda2*x(1)-mu*x
(3));x(3)*(-r3+lambda3*x(2))];
定义在函数中,函数以function开头,可以被调用.
[t,x]=ode45('funl,[0,2O],[1OO,40,6]);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |