用Matlab观察分岔与混沌现象

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用M a t l a b观察分岔与

混沌现象

Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

M a t l a b 实验报告 实验目的:用Matlab 观察分岔与混沌现象。

题目:Feigenbaum 曾对超越函数sin()y x λπ=(λ为非负实数)进行了分岔与混沌的研究,试利用迭代格式1sin()k k x x λπ+=,做出相应的

Feigenbaum 图

算法设计:

1、因为λ为非负实数,所以试将λ的范围限制在[0,3],制图时x 的坐标限制在

[0,3],考虑到y 的值有正有负,所以把y 的坐标限制在[-3,3]。

2、根据课本上给的例题,编写程序代码来绘图。

程序代码:

clear;clf;

hold on

axis([0,3,-3,3]);

grid

for a=0::3

x=[];

for i=2:150

x(i)=a*sin(pi*x(i-1));

end

pause

for i=101:150

plot(a,x(i),'k.');

end

end

图像:

结果分析:在λ取值在[0,]区间内时,y 的值保持在0,然后开始上升,在λ取值在附近时,开始分岔为两支。从整体上看,随着λ的值越来越大,所产生的迭代序列越来越复杂,可能会随机地落在区间(-3,3)的任一子区间内。并可能重复,这就是混沌的遍历性。

进一步分析:由于λ的取值空间偏小,考虑扩大其取值范围到[0,6],再进一步观察图像。程序代码如下:

clear;clf;

hold on

axis([0,6,-6,6]);

grid

for a=0::6

x=[];

for i=2:150

x(i)=a*sin(pi*x(i-1));

end

pause

for i=101:150

plot(a,x(i),'k.');

end

end

图像:

分析:由图像可见,随着λ取值范围的增大,图像呈现出周期性的特点。总结:1、当取值范围比较小,不足以发现图像规律时,可以考虑扩大变量的取值范围。

2、由于图像是由大量点构成的,所以在编程的时候注意循环语句的应

用。

相关文档
最新文档