数学实验报告之一——Rossler方程

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

数学实验报告之一——Rossler方程

自动化学院2001级刘和松

一 .实验目的

掌握用MATLAB软件求解微分方程的基本方法,掌握求微分方程数值解的欧拉方法,了解龙格——库塔方法的思想;了解二次迭代过程中三种图形表示的含义,观察分枝与混沌现象,学会分析迭代对参数的敏感性。

Rossler方程组是非线性动力学中一个非常著名的方程,在理论和实际中都有非常重要的价值。但是,由于它没有精确的解析解,我们只能通过数值方法对其进行求解。

二.试验内容——Rossler方程

Rossler方程组

当固定参数b=2,c=4时,试讨论随参数a由小到大变化(如a∈(0,0.65))时方程解的变化情况,并且画出空间曲线图形,观察空间曲线是否形成混沌状。

三.问题分析

对于Rossler方程组这样的非线性微分方程组,不可能求得其解析解。利用MatLab可以用数值解法进行模拟。

在物理意义上,t一般表示时间,x,y,z通常表示几个随时间变化的物理量,例如几种生物种群的数量,或者是几个常见的物理量。

对于混沌现象,我们通常更关心变量的最终归宿。因此,在研究时,我们有时舍去方程解的前几组数值。

四.MatLab求解

建立函数M文件rossler.m,在其中用x(1)表示x,用x(2)表示y,用x(3)表示z.

function r=rossler(t,x)

global a;

global b;

global c;

r=[-x(2)-x(3);x(1)+a*x(2);b+x(3)*(x(1)-c)];

主程序如下:

global a;

global b;

global c;

b=2;

c=4;

t0=[0,200];

for a=0:0.02:0.65

[t,x]=ode45('rossler',t0,[0,0,0]);

a

subplot(1,2,1);

plot(t,x(:,1),'r',t,x(:,2),'g',t,x(:,3),'b');

title('x(红色),y(绿色),z(篮色)随t变化情况');xlabel('t');

subplot(1,2,2);

plot3(x(:,1),x(:,2),x(:,3))

title('相图');xlabel('x');ylabel('y');zlabel('z');

pause

end

1. b=2,c=4

a=0.00

当a=0时,(x,y,z)收敛于(0,0.5,0.5)

当a=0.05时,(x,y,z)仍然收敛,但收敛速度较小。

a=0.05

a=0.12

当a=0.12时,(x,y,z)仍然收敛(准确的说,只能说具有收敛的趋势,其收敛速度已大大降低)。

a=0.16

a=0.16时,(x,y,z)已经发散。但是,(x,y,z)并不是发散于无穷大,而是周期性变化。

a=0.20

随着a的增大,(x,y,z)接近其极限环的速度加快。

a=0.28

a=0.38

a=0.54

2.因为只关心迭代的最终归宿,我们改变作图方法:忽略初值,只打印迭代末尾的100个值。

主程序如下:

global a;

global b;

global c;

b=2;

c=4;

t0=[0,200];

for a=0:0.02:0.65

[t,x]=ode45('rossler',t0,[0,0,0]);

a

t(1:length(t)-100)=[];

x(1:length(x)-100,:)=[];

subplot(1,2,1);

plot(t,x(:,1),'r',t,x(:,2),'g',t,x(:,3),'b');

title('x(红色),y(绿色),z(篮色)随t变化情况');xlabel('t'); subplot(1,2,2);

plot3(x(:,1),x(:,2),x(:,3));

title('相图');xlabel('x');ylabel('y');zlabel('z');

pause

end

a=0

a=0.10

a=0.22

右边的相图形象地表示了(x,y,z)迭代的最终归宿。象这种(x,y,z)趋向于一个环的,我们称这样的环为“极限环”。

a=0.36

当a增大时,单个极限环的稳定性已经失去,进入二周期极限环。

a=0.38

随着a的增大,二周期极限环也失去稳定性。

3.当a较大时,增加迭代次数,可以更好地看出规律。

a=0.40

a=0.42

a=0.46

a=0.52

由以上几图可以看出,a增大时,任意周期的极限环的稳定性都将失去。这就是形成混沌(chaos)的必要条件。

五、总结体会

Rossler方程组是非线性动力学中非常著名的方程。由于非线性动力学与线性有非常大的区别,我们也不能通过分析的方法求得它的解析解,因此只能采取数值模拟的方法近似求解。通过这个方程组,我们可以窥见混沌的一角。

通过本次实验,我进一步熟悉了MatLab的工作环境,学会了用MatLab解方程的方法,掌握了MatLab数组的操作,强化了用MatLab作图的能力。

相关文档
最新文档