非线性动力学_matlab应用2:离散非线性动力学系统

逻辑斯蒂方程 是数学生物学家 P. Verhulst 提出的著名的人口增长模型.从其问世以来,它的应用从人口增长模型拓展到很多领域.

而逻辑斯蒂映射正是逻辑斯蒂方程的离散形式。

                                     94c6f839-ab3d-eb11-8da9-e4434bdf6706.svg

给定一个初始值  ,不断利用上式进行迭代,我们会得到一系列  . 

例如  

8ac09135562afbc6078e4ea9dc320088.png

又例如  得到

0236ba2643260721cbc22493148899bf.png

对应代码如下:

clear allclcmu=3.2;x0=0.4;n=100;data=x0;for i = 1:n    x1=mu*x0*(1-x0);    x0=x1;    data=[data x0 ];endsubplot(121)plot(data,'k-o')axis([0 n 0. 1])axis squaretext(0.1,0.1,'\mu=3.52,x_0=0.4')subplot(122)for i = 1:1:n-1    line([data(i) data(i+1)],[data(i) data(i)])    hold on    line([data(i+1) data(i+1)],[data(i) data(i+1)])    hold onendaxis([0 1 0 1])axis squareh=line([0 1 ],[0 1]);set(h,'color','r')x=0:0.01:1;y=mu*x.*(1-x);plot(x,y,'r--')

对于不同的参数值,我们会得到截然不同的结果,例如  

c1606782233083e4c616912432daf211.png

clear allclcmu=3.52;x0=0.4;n=100;data=x0;for i = 1:n    x1=mu*x0*(1-x0);    x0=x1;    data=[data x0 ];endsubplot(121)plot(data,'k-o')axis([0 n 0. 1])axis squaretext(0.1,0.1,'\mu=3.52,x_0=0.4')subplot(122)for i = 1:1:n-1    line([data(i) data(i+1)],[data(i) data(i)])    hold on    line([data(i+1) data(i+1)],[data(i) data(i+1)])    hold onendaxis([0 1 0 1])axis squareh=line([0 1 ],[0 1]);set(h,'color','r')x=0:0.01:1;y=mu*x.*(1-x);plot(x,y,'r--')

当  的时候

27d67aa9947856d3904c5542db7c63af.png

clear allclcmu=3.56;x0=0.4;n=100;data=x0;for i = 1:n    x1=mu*x0*(1-x0);    x0=x1;    data=[data x0 ];endsubplot(121)plot(data,'k-o')axis([0 n 0. 1])axis squaretext(0.1,0.1,'\mu=3.52,x_0=0.4')subplot(122)for i = 1:1:n-1    line([data(i) data(i+1)],[data(i) data(i)])    hold on    line([data(i+1) data(i+1)],[data(i) data(i+1)])    hold onendaxis([0 1 0 1])axis squareh=line([0 1 ],[0 1]);set(h,'color','r')x=0:0.01:1;y=mu*x.*(1-x);plot(x,y,'r--')

分岔图

我们发现不同的参数下,图像可以有一个周期到两个周期,四个周期,八个周期等等。

dbcc466628a0f4fbdc4ed9eb704b9338.png

clear allclcx0=0.4;n=200;for mu = 2.8:0.005:4    mu    data=x0;    for i = 1:n        x1=mu*x0*(1-x0);        x0=x1;        data=[data x0 ];    end        plot(mu,data(end-50:end),'.','color',rand(1,3))    hold onendxlabel('\mu')ylabel('x')set(gca,'fontsize',15)xlim([2.8 4])
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值