没有合适的资源?快使用搜索试试~ 我知道了~
基于MATLAB的各类混沌系统的计算机模拟(教学版).doc
需积分: 13 1 下载量 139 浏览量
2022-07-16
08:47:49
上传
评论
收藏 777KB DOC 举报
温馨提示
试读
20页
基于MATLAB的各类混沌系统的计算机模拟(教学版).doc
资源详情
资源评论
资源推荐
1 / 20
基于 MATLAB 的各类混沌系统的计算机模拟
―――《混沌实验教学平台的设计与实现》初期报告
摘要:本文利用数学软件 MATLAB 对 Lorenz 系统等六个重要的混沌模型进行数值计算,同
时模拟出各类混沌系统的独特性质,如混沌吸引子,倍周期,初值敏感性,相图,分岔图等。
通过观察和分析上述特性,加深了我们对混沌现象的理解。
关键词:混沌; 微分方程; MATLAB;
引言. 混沌探秘
混沌是非线性系统所独有且广泛存在的一种非周期运动形式, 其覆盖面涉与到自然科
学和社会科学的几乎每一个分支。1972 年 12 月 29 日,美国麻省理工学院教授、混沌学开
创人之一 E.N.洛伦兹在美国科学发展学会第 139 次会议上发表了题为《蝴蝶效应》的论文,
提出一个貌似荒谬的论断:在巴西一只蝴蝶翅膀的拍打能在美国得克萨斯州产生一个龙卷风,
并由此提出了天气的不可准确预报性。为什么会出现这种情况呢?这是混沌在作怪!
“混沌”译自英语中“chaos”一词,原意是混乱、无序,在现代非线性理论中,混沌
则是泛指在确定体系中出现的貌似无规则的、类随机的运动。
混沌现象是普遍的,就在我们身边,是与我们关系最密切的现象,我们就生活在混沌的
海洋中。一支燃着的香烟,在平稳的气流中缓缓升起一缕青烟,突然卷成一团团剧烈搅动的
烟雾,向四方飘散;打开水龙头,先是平稳的层流,然后水花四溅,流动变的不规则,这就
是湍流;一个风和日丽的夏天,突然风起云涌,来了一场暴风雨。一面旗帜在风中飘扬,一
片秋叶从树上落下,它们都在做混沌运动。可见混沌始终围绕在我们的周围,一直与人类为
伴。
一 混沌的基本概念
1. 混沌: 目前尚无通用的严格的定义, 一般认为,将不是由随机性外因引起的, 而是
由确定性方程(因)直接得到的具有随机性的运动状态称为混沌。
2. 相空间: 在连续动力系统中, 用一组一阶微分方程描述运动, 以状态变量(或状态
向量)为坐标轴的空间构成系统的相空间。系统的一个状态用相空间的一个点表示, 通过该
点有唯一的一条积分曲线。
3. 混沌运动: 是确定性系统中局限于有限相空间的高度不稳定的运动。所谓轨道高度
不稳定, 是指近邻的轨道随时间的发展会指数地分离。由于这种不稳定性, 系统的长时间行
为会显示出某种混乱性。
4. 分形和分维: 分形是 n 维空间一个点集的一种几何性质, 该点集具有无限精细的
结构, 在任何尺度下都有自相似部分和整体相似性质, 具有小于所在空间维数 n 的非整数
维数。分维就是用非整数维——分数维来定量地描述分形的基本性质。
5. 不动点: 又称平衡点、定态。不动点是系统状态变量所取的一组值, 对于这些值系
统不随时间变化。在连续动力学系统中, 相空间中有一个点
0
x
, 若满足当
t ® ¥
时, 轨迹
0
( )x t x®
, 则称
0
x
为不动点。
6. 吸引子: 指相空间的这样的一个点集 s (或一个子空间) , 对 s 邻域的几乎任意一
点, 当
t ® ¥
时所有轨迹线均趋于 s, 吸引子是稳定的不动点。
7. 奇异吸引子: 又称混沌吸引子, 指相空间中具有分数维的吸引子的集合。该吸引集
由永不重复自身的一系列点组成, 并且无论如何也不表现出任何周期性。混沌轨道就运行在
其吸引子集中。
2 / 20
8. 分叉和分叉点: 又称分岔或分支。指在某个或者某组参数发生变化时, 长时间动力
学运动的类型也发生变化。这个参数值(或这组参数值)称为分叉点, 在分叉点处参数的微小
变化会产生不同性质的动力学特性, 故系统在分叉点处是结构不稳定的。
9. 周期解: 对于系统
1
( )
n n
x f x
+
=
, 当
n ® ¥
时,若存在
n i n
x x
x
+
= =
, 则称该系
统有周期
i
解
x
。不动点可以看作是周期为 1 的解, 因为它满足
1n n
x x
+
=
。
10. 初值敏感性:对初始条件的敏感依赖是混沌的基本特征,也有人用它来定义混沌:
混沌系统是其终极状态极端敏感地依赖于系统的初始状态的系统。敏感依赖性的一个严重后
果就在于,使得系统的长期行为变得不可预见。
一. MATLAB 中的龙格—库塔(Runge-Kutta)实现
MATLAB(Matrix Laboratory)是 MathWorks 公司开发的,目前国际上最流行应用最广
的科学与工程计算机软件之一。MATLAB 软件以矩阵运算为基础,把计算,可视化,程序设
计等有机的融合在一起,具有出色的数值计算能力和强大的图形处理功能。
基于 Runge—Kutta 法,MATLAB 提供了求解微分方程数值解的函数,一般调用格式是:
[ , ] 23(@ , , 0)
[ , ] 45(@ , , 0)
t y ode fname tspan y
t y ode fname tspan y
=
=
其中 fname 是定义的函数文件名,该函数文件必须返回一个列向量。Tspan 形式是
[t0,tf],表示求解区间,y0 是初始状态向量。这两个函数分别采用“二阶,三阶 Runge—Kutta
法”和“四阶,五阶 Runge—Kutta 法”,并采用自适应的求解方法,即当解的变化较慢时采
用较大的步长,从而使计算速度很快,当解的变化较快时步长会自动变小长,从而使计算精
度很高。在 MATLAB 中,一般选取四阶的龙格库塔方法。
二. Lorenz 混沌系统
美国气象学家洛伦兹(E.N.Lorenz)于 1963 年在大气科学杂志上提出第一个表现奇
异吸引子的动力学系统。该混沌系统模型可以用下列微分方程组描述:
)(
)(
zxyb
dt
dz
xzyax
dt
dy
yxc
dt
dx
��
���
���
利用 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;
3 / 20
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));
title('Lorenz模型相图');xlabel('x');ylabel('y');zlabel('z');
grid on;
subplot(3,1,3);
plot(x(:,1),x(:,3));
title('Lorenz模型X—Z平面相图'); xlabel('x');ylabel('z');
grid on;
pause;
end
1. 固定参数 b 和 c,设置初始值 f0 和计算时间 t0,通过改变参数 a 可以发现系统逐
步进入混沌状态的过程。
0 20 40 60 80 100
0
5
10
15
Lorenz 模 型 的 状 态 变 量 的 时 域 响 应
t
x
y
z
1
2
3
4
5
6
0
2
4
6
0
10
20
x
Lorenz模 型 相 图
y
z
1 2 3 4 5 6
0
5
10
15
Lorenz模 型 X-Z相 图
x
z
a=10
4 / 20
0 10 20 30 40 50 60 70 80 90 100
-20
0
20
40
Lorenz 模 型 的 状 态 变 量 的 时 域 响 应
t
-10
-5
0
5
10
-10
-5
0
5
10
0
20
40
x
Lorenz模 型 相 图
y
z
-8 -6 -4 -2 0 2 4 6 8
0
10
20
30
Lorenz模 型 X-Z相 图
x
z
x
y
z
a=15
0 10 20 30 40 50 60 70 80 90 100
-20
0
20
40
Lorenz 模 型 的 状 态 变 量 的 时 域 响 应
t
-10
-5
0
5
10
15
-10
0
10
20
0
20
40
x
Lorenz模 型 相 图
y
z
-8 -6 -4 -2 0 2 4 6 8 10 12
0
20
40
Lorenz模 型 X-Z相 图
x
z
x
y
z
a=23
剩余19页未读,继续阅读
智慧安全方案
- 粉丝: 3707
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0