基于马尔萨斯的人口模型的一个Logistic模型(MATLAB)

基于马尔萨斯的人口模型的一个Logistic模型(MATLAB)

直接上代码:(没有找到真实数据,程序中都是假定的数据)

%Name:人口  模型 
%Editor:H.y.Z
%Time:Apr.18,2020
%Part1:Logistic Model
   %   dP/dt=rP*dt,P(t0)=P0
  %   P:t时刻人口数 r:人口自然增长率
%fplot(@(t)1000000*ones(1,2));
K=100000;%设定人口上限
r=0.1;%自然增长率
syms P t
P=dsolve('DP/((1-P/100000)*P)=r','P(0)=20000',t);%K<P0
P=matlabFunction(P);
fplot(P(r,t));
t0=0.2*t;
hold on
P=dsolve('DP/((1-P/100000)*P)=r','P(0)=120000',t);%K>P0
P=matlabFunction(P);
fplot(P(r,t));
fplot(@(t)0*t+100000,'m:')%P=K处
axis([-50 100 0 150000]);%坐标范围
set(gca,'xtick',-50:10:100);%刻度设置
ti=title('人口模型');
xlabel('t')
ylabel('P人数')
l=legend('P0<K','P0>K','K=100000')

上面程序的运行结果
通过上面的运行结果可以看出,当初始时刻的人口数目大于大于环境所能承受的极限值时,将呈现下降趋势,且在初始时刻之前的某个时刻趋于无穷,这显然是不符合事实的,但是之后的数据,逐渐达到阈值,这与事实相符合。
当初始的人口数据小于阈值时,人口数目将会不断增加,直至达到阈值,当然,这是在一个理想条件下。而在初始时刻之前,仍是在增加,这也是比较符合的。注意到,在一段时间内t越小,基数小,增加量很低,类似于工业革命之前的世界人口增长。随后,经济快速发展,劳动力的需求增加,人口的基数增大,同时,医学的进步,使得人口的自然增长率增加,人数就经历了一段快速增加的过程。随后,资源过度开发,生态环境恶化等各种因素,使得人口的增长受到限制,增速变缓。

这样的模型,不仅应用于人口的增长,在一定的范围内,对于特定生态系统的生物数目演化过程同样适用。

  • 7
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值