声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2383|回复: 4

[其他相关] tent映射的Lyapunov指数图

[复制链接]
发表于 2014-5-7 13:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
谁有tent映射的Lyapunov指数图和分岔图的程序啊???方程见附件
QQ截图20140507134741.png

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2014-5-18 01:24 | 显示全部楼层
tent映射序列程序

  1. clear
  2. x0=0.8;
  3. y0=0.83;
  4. u=1.7;
  5. e=0;
  6. t=50;
  7. n=100;
  8. x=zeros(1,n);
  9. y=zeros(1,n);
  10. for i=1:n
  11.     if (x0>=0)&(x0<=0.5)
  12.         x(i)=u*x0;
  13.     elseif (x0>0.5)&(x0<=1)
  14.         x(i)=u*(1-x0);
  15.     end
  16.     x0=x(i);
  17. end
  18. for i=1:n
  19.     if (y0>=0)&(y0<=0.5)
  20.         y(i)=u*y0;
  21.     elseif (y0>0.5)&(y0<=1)
  22.         y(i)=u*(1-y0);
  23.     end
  24.     y0=y(i);
  25. end
  26. for j=1:n
  27.     Ex=e+x(j);
  28.     e=Ex;
  29. end
  30. e=0;
  31. for k=1:n-t
  32.     s(k)=x(k)*x(k+t);
  33.     r=e+s(k);
  34.     e=r;
  35. end
  36. EX=Ex/n
  37. Rx=r/(n-t)
  38. e=0;
  39. for k=1:n-t
  40.     s(k)=x(k)*y(k+t);
  41.     r=e+s(k);
  42.     e=r;
  43. end
  44. Rxy=r/(n-t)
  45. hold on
  46. plot(x)
  47. plot(y,'r')
复制代码



发表于 2014-5-18 01:26 | 显示全部楼层
tent映射图程序:

  1. % Chapter 2 - Nonlinear Discrete Dynamical Systems.
  2. % Program 2a - Graphical Iteration of the Tent Map.
  3. % Symbolic Math toolbox required.
  4. % Copyright Birkhauser 2013. Stephen Lynch.

  5. % Plot a cobweb diagram (Figure 2.7(b)).
  6. clear
  7. % Initial condition 0.2001, must be symbolic.
  8. nmax=200;
  9. t=sym(zeros(1,nmax));t1=sym(zeros(1,nmax));t2=sym(zeros(1,nmax));
  10. t(1)=sym(2001/10000);
  11. mu=2;
  12. halfm=nmax/2;
  13. axis([0 1 0 1]);
  14. for n=2:nmax
  15.     if (double(t(n-1)))>0 && (double(t(n-1)))<=1/2
  16.             t(n)=sym(2*t(n-1));
  17.         else
  18.             if (double(t(n-1)))<1
  19.                 t(n)=sym(2*(1-t(n-1)));
  20.             end
  21.     end
  22. end

  23. for n=1:halfm
  24.     t1(2*n-1)=t(n);
  25.     t1(2*n)=t(n);
  26. end

  27. t2(1)=0;t2(2)=double(t(2));
  28. for n=2:halfm
  29.     t2(2*n-1)=double(t(n));
  30.     t2(2*n)=double(t(n+1));
  31. end
  32. hold on
  33. fsize=20;
  34. plot(double(t1),double(t2),'r');
  35. x=[0 0.5 1];y=[0 mu/2 0];
  36. plot(x,y,'b');
  37. x=[0 1];y=[0 1];
  38. plot(x,y,'g');
  39. title('Graphical iteration for the tent map','FontSize',fsize)
  40. set(gca,'XTick',0:0.2:1,'FontSize',fsize)
  41. set(gca,'YTick',0:0.2:1,'FontSize',fsize)
  42. xlabel('x','FontSize',fsize)
  43. ylabel('T','FontSize',fsize)
  44. hold off

  45. % End of Program 2a.
复制代码



发表于 2014-5-18 01:26 | 显示全部楼层
tent映射分岔图:

  1. clear
  2. x=0.3;
  3. u=0.9:0.001:2;
  4. n=length(u);
  5. figure(2)
  6. hold on;
  7. for i=1:n
  8.     a=x;
  9.     for k=1:300
  10.   %  f(i)=u(i)*a*(1-a);
  11.     if (a>=0)&(a<=0.5)
  12.         f(i)=u(i)*a;
  13.         a=f(i);
  14.     elseif (a>0.5)&(a<=1)
  15.        f(i)=u(i)*(1-a);
  16.        a=f(i);
  17.     end
  18.     end
  19.     z(1)=a;
  20.     for j=1:99
  21.        % z(j+1)=u(i)*z(j)*(1-z(j));
  22.         if (z(j)>=0)&(z(j)<=0.5)
  23.             z(j+1)=u(i)*z(j);
  24.         elseif (z(j)>0.5)&(z(j)<=1)
  25.             z(j+1)=u(i)*(1-z(j));
  26.         end
  27.     end
  28.     plot(u(i)*ones(1,100),z,'.','markersize',4);
  29. end
  30. hold off
复制代码



发表于 2014-5-18 01:27 | 显示全部楼层
Lyapunov指数图没有现成的,你可以在上述基础上自己做,Lyapunov指数的计算方法论坛有很多,自己搜索参考
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-5 08:06 , Processed in 0.056184 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表