当前位置:首页 > 两种群间的相互竞争
xy?rx(1??s)?01?1n1n2?令 ?
?ry(1?sx?y)?022?n1n2?得到四个奇点以并利用(7)和(8)算得相应的p值和q值如下
11<1>.奇点(x0,y0)?(0,0)
p1??(r1?r2)
q1?r1r2
22<2>.奇点(x0,y0)?(n1,0)
p2?r1?r2(1?s2)
q2??r1r2(1?s2)
33<3>.奇点(x0,y0)?(0,n2)
p3??r1(1?s1)?r2
q3??r1r2(1?s1)
44<4>. 奇点(x0,y0)?(n1(1?s1)n2(1?s2),)
1?s1s21?s1s2
p4?r1(1?s1)?r2(1?s2)
1?s1s2
q4?r1r2(1?s1)(1?s2)
1?s1s2
首先由模型可知,参数r1、r2、s1和s2都是大于0的。
现在我们开始来逐个分析四个奇点,先来讨论<1>.根据常微分方程稳定性理论,
11p1??(r1?r2)?0,因此奇点(x0,y0)?(0,0)是不稳定的。换句话说,两种群是不可能同
时灭绝的。
其次来讨论<2>.
2??p?0令 ?2
??q?0r1?s?1??2r2?s2?1 ???s?1?222这说明在s2?1的条件下,奇点(x0,y0)?(n1,0)是稳定的。换句话说,在s2?1的条件下,
甲种群达到环境所允许的最大数量,乙种群最终会灭亡。 接下来讨论<3>.
3??p?0令 ?3
??q?0r2?s?1??1r1?s1?1 ???s?1?133这说明在s1?1的条件下,奇点(x0,y0)?(0,n2)是稳定的。换句话说,在s1?1的条件下,
乙种群达到环境所允许的最大数量,甲种群最终会灭亡 最后来讨论<4>.
4??p?0令 ?4
??q?0?s,s?1(不满足q?0,因此舍去)??12?0?s1,s2?1 ?0?s1,s2?144这说明在0?s1,s2?1的条件下,奇点(x0,y0)?(n1(1?s1)n2(1?s2),)是稳定的。换句话
1?s1s21?s1s2说,在0?s1,s2?1的条件下,甲乙两种群都会存活下来,它们是以相互依存的方式生存下去的。 现在理论分析告一段落,我们接下来进行下一步:数值解法。
第二部分:数值解法
根据第一部分的理论分析,我们在这里根据第一部分的结果,分别给出不同s1、s2条
件下的数值解。在分情况之前,需对模型中的其他参数给定一个初值,这样更有利于我们接下来的分析,现作如下规定:r1?r2?1,n1?n2?1000,初值x(0)?y(0)?50,接下来我们开始分情况讨论。 情况(一):s1?0.5,s2?2
利用MATLAB,编写M文件如下
function aaa=bbb(t,x)
r1=1;r2=1;n1=1000;n2=1000;s1=0.5;s2=2;
aaa=diag([r1*(1-x(1)/n1-s1*x(2)/n2),r2*(1-x(2)/n2-s2*x(1)/n1)])*x;
然后在命令窗口输入如下命令(这里用5级4阶Runge-Kutta-Fehberg公式,并描绘从第0年到第50年的变化趋势) >> ts=0:0.1:50; >> x0=[50,50];
>> [t,x]=ode45(@bbb,ts,x0); >> plot(t,x),grid,
>> gtext('\\fontsize{20}x(t)'),gtext('\\fontsize{20}y(t)')
得到增广相空间中的积分曲线如下(蓝色是x(t),绿色是y(t))
12001000x(t)800600400200y(t)0-20005101520253035404550
继续在命令窗口中输入如下命令 >> pause,plot(x(:,1),x(:,2)),grid, >> xlabel('x'),ylabel('y')
>> gtext('\\fontsize{20}y=y(x)') 得到相空间中的轨线如下
200150100y=y(x)50y0-500200400600x80010001200
可以看到,s1?0.5,s2?2对应于理论分析中的<2>. 这很好的验证了之前的理论分析,
并且可以看出,在第10年左右的时候甲种群趋于环境所允许的最大数量,而乙种群趋于灭亡。
情况(二):s1?1.9,s2?0.4
修改M文件如下
function aaa=bbb(t,x)
r1=1;r2=1;n1=1000;n2=1000;s1=1.9;s2=0.4;
aaa=diag([r1*(1-x(1)/n1-s1*x(2)/n2),r2*(1-x(2)/n2-s2*x(1)/n1)])*x;
保存后直接执行如下命令 >> [t,x]=ode45(@bbb,ts,x0); >> plot(t,x),grid,
>> gtext('\\fontsize{20}x(t)'),gtext('\\fontsize{20}y(t)')
得到增广相空间中的积分曲线如下(蓝色是x(t),绿色是y(t))
共分享92篇相关文档