得到3种竞争物种的阴谋

matlab matlab-figure

189 观看

1回复

16 作者的声誉

我想为竞争三个物种的模型制作代码以获取图(将3d z相对于x,y和将2d图x,y,z相对于时间)我的模型是

x'=(r1-a1x-b1y-c1z)x
y'=(r2-a2x-b2y-c2z)y
z'=(r3-a3x-b3y-c3z)z

哪里

r1=1.5; r2=2.65; r3=3.45;
a1=0.1; b1=0.3; c1=0.01; b2=0.2;
a2=0.3; c2=0.2; c3=0.2; a3=0.01; b3=0.1.

任何帮助做此代码将不胜感激。

作者: Raja 的来源 发布者: 2016 年 3 月 17 日

回应 (1)


0

833 作者的声誉

决定

解决这个问题:

% Define diff. equations, time span and initial conditions, e.g.
tspan = [0 20];
y0 = [0.2 0.2 0.2];

r1=1.5;     r2=2.65;    r3=3.45;
a1=0.1;     a2=0.3;     a3=0.01; 
b1=0.3;     b2=0.2;     b3=0.1;
c1=0.01;    c2=0.2;     c3=0.2; 

dy = @(t,y) [
(r1-a1*y(1)-b1*y(2)-c1*y(3))*y(1);
(r2-a2*y(1)-b2*y(2)-c2*y(3))*y(2);
(r3-a3*y(1)-b3*y(2)-c3*y(3))*y(3)];

% Solve differential equations
[t,y] = ode45(dy, tspan, y0);

现在只需绘制结果:

% Plot all species against time
figure(1)
plot(t,y)

% 3D plot of z against xy
figure(2)
plot3(y(:,1), y(:,2), y(:,3))
grid on
xlabel('x')
ylabel('y')
zlabel('z')
作者: jkazan 发布者: 18.03.2016 08:02
32x32