Matlab建立模型:狐狸与野兔问题

Matlab建立模型:狐狸与野兔问题,第1张

首先用hu_tum建立微分方程组:

function dX=hu_tu(t,X) % X=[x;y]

dX=zeros(2,1);

dX(1)=4X(1)-002X(1)X(2);

dX(2)=0001X(1)X(2)-09X(2);

其次,解这个微分方程(这里用ode45),建立runm

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

[t,X]=ode45(@hu_tu,[0,10],[100,100])

%[0,10]是t的取值范围

%[100,100]是初值,即最开始有100兔子和100狐狸

%计算s:

s=(X(:,1)^09)exp(-0001X(:,1))(X(:,2)^4)exp(-002X(:,2));

%画图

subplot(2,2,1);

plot(t,X) %兔子和狐狸数量随时间变化图

subplot(2,2,2);

plot(t,s)

subplot(2,2,3);

plot3(X(:,1),X(:,2),s); %传说中的像轨线???

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

最后执行run

% 兔子狐狸问题

% written by trayshleigh 20100627

clc

clear all

close all

nMon = 32;

Rn = zeros(1,nMon);

Fn = zeros(1,nMon);

Rn(1) = 1000;

Fn(1) = 1000;

for mon = (1:nMon)+1

Rn(mon)=11Rn(mon-1)-02Fn(mon-1);

Fn(mon)=02Rn(mon-1)+06Fn(mon-1);

end

figure()

plot(0:nMon,Rn,'b',0:nMon,Fn,'g')

legend('兔子','狐狸')

Rnend = Rn(end)

Fnend = Fn(end)

32个月后兔子有667只,狐狸有333只,

n进一步增大,兔子和狐狸的数目不变。

以上就是关于Matlab建立模型:狐狸与野兔问题全部的内容,包括:Matlab建立模型:狐狸与野兔问题、求一个matlab应用实例的解答。在一个新开辟的地方引进兔子和狐狸各1000只,n个月后的数量分别记为Rn和Fn、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10106475.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存