网站大量收购闲置独家精品文档,联系QQ:2885784924

基于MATLAB的各类混沌系统的计算机模拟(教学版).doc

基于MATLAB的各类混沌系统的计算机模拟(教学版).doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于MATLAB的各类混沌系统的计算机模拟 ―――《混沌实验教学平台的设计与实现》初期报告 物电05级1A班 张丹伟 20050003101 摘要:本文利用数学软件MATLAB对Lorenz系统等六个重要的混沌模型进行数值计算,同时模拟出各类混沌系统的独特性质,如混沌吸引子,倍周期,初值敏感性,相图,分岔图等。通过观察和分析上述特性,加深了我们对混沌现象的理解。 关键词:混沌; 微分方程; MATLAB; 引言. 混沌探秘 混沌是非线性系统所独有且广泛存在的一种非周期运动形式, 其覆盖面涉及到自然科学和社会科学的几乎每一个分支。1972年12月29日,美国麻省理工学院教授、混沌学开创人之一E.N.洛伦兹在美国科学发展学会第139次会议上发表了题为《蝴蝶效应》的论文,提出一个貌似荒谬的论断:在巴西一只蝴蝶翅膀的拍打能在美国得克萨斯州产生一个龙卷风,并由此提出了天气的不可准确预报性。为什么会出现这种情况呢?这是混沌在作怪! “混沌”译自英语中“chaos”一词,原意是混乱、无序,在现代非线性理论中,混沌则是泛指在确定体系中出现的貌似无则的、类随机的运动。, 若满足当 时, 轨迹, 则称为不动点。 6. 吸引子: 指相空间的这样的一个点集 s (或一个子空间) , 对s邻域的几乎任意一点, 当时所有轨迹线均趋于s, 吸引子是稳定的不动点。 7. 奇异吸引子: 又称混沌吸引子, 指相空间中具有分数维的吸引子的集合。该吸引集由永不重复自身的一系列点组成, 并且无论如何也不表现出任何周期性。混沌轨道就运行在其吸引子集中。 8. 分叉和分叉点: 又称分岔或分支。指在某个或者某组参数发生变化时, 长时间动力学运动的类型也发生变化。这个参数值(或这组参数值)称为分叉点, 在分叉点处参数的微小变化会产生不同性质的动力学特性, 故系统在分叉点处是结构不稳定的。 9. 周期解: 对于系统 , 当时,若存在 , 则称该系统有周期解 。不动点可以看作是周期为1的解, 因为它满足。 10. 初值敏感性:对初始条件的敏感依赖是混沌的基本特征,也有人用它来定义混沌:混沌系统是其终极状态极端敏感地依赖于系统的初始状态的系统。敏感依赖性的一个严重后果就在于,使得系统的长期行为变得不可预见。 MATLAB中的龙格—库塔(Runge-Kutta)实现 MATLAB(Matrix Laboratory)是MathWorks公司开发的,目前国际上最流行应用最广的科学与工程计算机软件之一。MATLAB 软件以矩阵运算为基础,把计算,可视化,程序设计等有机的融合在一起,具有出色的数值计算能力和强大的图形处理功能。 基于Runge—Kutta法,MATLAB提供了求解微分方程数值解的函数,一般调用格式是: 其中fname 是定义的函数文件名,该函数文件必须返回一个列向量。Tspan形式是[t0,tf],表示求解区间,y0是初始状态向量。这两个函数分别采用“二阶,三阶Runge—Kutta法”和“四阶,五阶Runge—Kutta法”,并采用自适应的求解方法,即当解的变化较慢时采用较大的步长,从而使计算速度很快,当解的变化较快时步长会自动变小长,从而使计算精度很高。在MATLAB中,一般选取四阶的龙格库塔方法。 Lorenz 混沌系统 美国气象学家洛伦兹(E.N.Lorenz)于1963年在大气科学杂志上提出第一个表现奇异吸引子的动力学系统。该混沌系统模型可以用下列微分方程组描述: 利用MATLAB数学软件对上面微分方程求解,进行数值模拟。首先建立M-文件 Lorenz.m定义脚本函数,然后编程调用,其中x(1)表示x,x(2)表示y,x(3)表示z ,程序如下: function r=lorenz(t,x) global a; global b; global c; r=[-c*(x(1)-x(2));a*x(1)-x(2)-x(1)*x(3);b*(x(1)*x(2)-x(3))]; clear; global a; global b; global c; b=8/3;c=10; t0=[0,100];f0=[1,1,1]; for a=10:30 [t,x]=ode45(@lorenz,t0,f0); a subplot(3,1,1); plot(t,x(:,1),r,t,x(:,2),g,t,x(:,3),b); title(Lorenz 模型变量时域响应);legend(x,y,z); xlabel(t); subplot(3,1,2); plot3(x(:,1),x(:,2),x(:,3));

您可能关注的文档

文档评论(0)

14576 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档