1.Lorenz系统
美国著名气象学家E.N.Lorenz在1963年提出来的用来刻画热对流不稳定性的模型,即Lorenz混沌模型,可以简单描述如下:
{
x
˙
=
a
(
y
−
x
)
y
˙
=
c
x
−
x
z
−
y
z
˙
=
x
y
−
b
z
\left\{ \begin{array}{l} \dot{x}=a\left( y-x \right)\\ \dot{y}=cx-xz-y\\ \dot{z}=xy-bz\\ \end{array} \right.
⎩⎨⎧x˙=a(y−x)y˙=cx−xz−yz˙=xy−bz
当参数取值为
a
=
10
,
b
=
8
3
,
c
=
28
a=10,b=\frac{8}{3},c=28
a=10,b=38,c=28时,Lorenz系统有一个混沌吸引子,如下图所示:
其数值仿真实现代码如下:
clear;clc;
[T,Y] = ode45(@Lorenz,[0 300],[0.1;0.1;0.1]);
hold on
plot3(Y(:,3),Y(:,1),Y(:,2),'b','LineWidth',0.5);
view(-30,40);
xlabel('z(t)','FontName','Times New Roman','FontSize',15);
ylabel('x(t)','FontName','Times New Roman','FontSize',15);
zlabel('y(t)','FontName','Times New Roman','FontSize',15);
hold off
function dy = Lorenz(~,y)
a=10;
b=8/3;
c=28;
dy = zeros(3,1);
% a column vector
dy(1) = a*(y(2) - y(1));
dy(2) = -y(1) * y(3)+c*y(1)-y(2);
dy(3) = y(1) * y(2)-b*y(3);
end
2.Rossler系统
O.E.Rossler构造了几个简单但具有混沌行为的非线性方程组,其中最具有代表性的是他在1976年提出的如下方程组:
{
x
˙
=
−
(
y
+
z
)
y
˙
=
x
+
a
y
z
=
z
(
x
−
c
)
+
b
\left\{ \begin{array}{l} \dot{x}=-\left( y+z \right)\\ \dot{y}=x+ay\\ z=z\left( x-c \right) +b\\ \end{array} \right.
⎩⎨⎧x˙=−(y+z)y˙=x+ayz=z(x−c)+b
其中参数
a
=
b
=
0.2
a=b=0.2
a=b=0.2,而参数
c
c
c常取下列数值之一:
2
,
2.3
,
3.5
,
4.7
,
5.0
,
5.7
,
6
,
7
,
8
,
9
,
10
,
11
2,2.3,3.5,4.7,5.0,5.7,6,7,8,9,10,11
2,2.3,3.5,4.7,5.0,5.7,6,7,8,9,10,11
我们在此处取
c
=
5.7
c=5.7
c=5.7,得到如下图所示的Rossler混沌吸引子。值得注意的是,Rossler系统比Lorenz系统简单,而且他们拓扑不等价,即不存在任何同胚变换把一个系统变成另一个系统。
其数值仿真实现代码如下:
clear;clc;
[T,Y] = ode45(@Rossler,[0 500],[0.1;0.1;0.1]);
hold on
plot3(Y(:,1),Y(:,2),Y(:,3),'b','LineWidth',0.5);
view(-30,40);
xlabel('x(t)','FontName','Times New Roman','FontSize',15);
ylabel('y(t)','FontName','Times New Roman','FontSize',15);
zlabel('z(t)','FontName','Times New Roman','FontSize',15);
hold off
function dy = Rossler(~,y)
a=0.2;
b=0.2;
c=5.7;
dy = zeros(3,1);
% a column vector
dy(1) = -(y(2) + y(3));
dy(2) = y(1) + a * y(2);
dy(3) = y(3) * (y(1)-c)+b;
end
Chua电路
L.O.Chua构造的Chua电路是第一个能够真正能够用物理手段实现的混沌系统。其电路方程可以改写成如下形式的无量纲标准型:
{
x
˙
=
p
(
−
x
+
y
−
f
(
x
)
)
y
˙
=
x
−
y
+
z
z
˙
=
−
q
y
\left\{ \begin{array}{l} \dot{x}=p\left( -x+y-f\left( x \right) \right)\\ \dot{y}=x-y+z\\ \dot{z}=-qy\\ \end{array} \right.
⎩⎨⎧x˙=p(−x+y−f(x))y˙=x−y+zz˙=−qy这里:
f
(
x
)
=
m
~
0
x
+
1
2
(
m
~
1
−
m
~
0
)
(
∣
x
+
1
∣
−
∣
x
−
1
∣
)
f\left( x \right) =\tilde{m}_0x+\frac{1}{2}\left( \tilde{m}_1-\tilde{m}_0 \right) \left( \left| x+1 \right|-\left| x-1 \right| \right)
f(x)=m~0x+21(m~1−m~0)(∣x+1∣−∣x−1∣)
其中,
m
~
0
<
0
,
m
~
1
<
0
\tilde{m}_0<0,\tilde{m}_1<0
m~0<0,m~1<0,下图展示了Chua电路的双卷波混沌吸引子,其中参数为:
p
=
10.0
,
q
=
14.87
,
m
~
0
=
−
0.68
,
m
~
1
=
−
1.27
p=10.0,q=14.87,\tilde{m}_0=-0.68,\tilde{m}_1=-1.27
p=10.0,q=14.87,m~0=−0.68,m~1=−1.27
其数值仿真实现代码如下:
clear;clc;
[T,Y] = ode45(@Chua,[0 500],[0.1;0.1;0.1]);
hold on
plot3(Y(:,3),Y(:,1),Y(:,2),'b','LineWidth',0.5);
view(-30,40);
xlabel('z(t)','FontName','Times New Roman','FontSize',15);
ylabel('x(t)','FontName','Times New Roman','FontSize',15);
zlabel('y(t)','FontName','Times New Roman','FontSize',15);
hold off
function dy = Chua(~,y)
p = 10;
q = 14.87;
m0 = -0.68;
m1 = -1.27;
dy = zeros(3,1);
dy(1) = p*(-y(1)+y(2)-(m0*y(1)+0.5*(m1-m0)*(abs(y(1)+1)-abs(y(1)-1))));
dy(2) = y(1)-y(2)+y(3);
dy(3) = -q*y(2);
end