求助:已画出系统的混沌图,请教关于最大lyapunov相关问题
小的有个系统如下:dx(1)=x(1)*(a11+a12+a13-a11*x(1)-a12*x(2)-a13*x(3));
dx(2)=x(2)*(a21+a22+a23-a21*x(1)-a22*x(2)-a23*x(3));
dx(3)=x(3)*(a31+a32+a33-a31*x(1)-a32*x(2)-a33*x(3));
a11=0.5; a12=0.5; a13=0.1;
a21=-0.5; a22=-0.1;a23=0.1;
a31=1.43; a32=0; a33=0.1;(这些参数值是参考《混沌生物学》第65页的数据)
现在作出了一个该系统的混沌图(x1,x2,x3的相图)如下,我觉得是混沌,本人刚接触这方面,说的不对的请指正。
现在想求当参数a31在区间【1,3】之间变化时,此三维系统的最大lyapunov指数随a31变化的曲线图
看到oct前辈的帖子里(http://forum.vibunion.com/thread-60037-1-1.html) liliangbiao大侠给的程序,想模仿那个程序写一个,可行么?我把该程序存为m文件,但运行时总是报错,请问是为什么呢?我知道这些错误都是很简单的错误,请各位大侠见谅,本人刚刚接触这方面。万分感谢,谢谢谢谢谢。把li大侠的程序贴过来,方便大家看。
global a b c
Z=[];
d0=1e-8;
for a=linspace(32,40,80)
lsum=0;
x(1)=1;x(2)=1;x(3)=1;
x1(1)=1;x1(2)=1;x1(3)=1+d0;
x0=;
x_0=;
for i=1:100
=ode45('Chen',1,x0);
=ode45('Chen',1,x_0);
n1=length(Y1);n2=length(Y2);
x=Y1(n1,1);y=Y1(n1,2);z=Y1(n1,3);
x1=Y2(n2,1);y1=Y2(n2,2);z1=Y2(n2,3);
d1=sqrt((x-x1)^2+(y-y1)^2+(z-z1)^2);
x1=x+(d0/d1)*(x1-x);
y1=y+(d0/d1)*(y1-y);
z1=z+(d0/d1)*(z1-z);
if i>50
lsum=lsum+log(d1/d0);
end
end
Z=;
end
a=linspace(32,40,80);
plot(a,Z,'-');
title('Chen 系统最大lyapunov指数')
xlabel('parameter a'),ylabel('lyapunov exponents')
%Chen 系统
function xdot = chen(t,x)
%dx/dt=a*(y-x)
%dy/dt=(c-a)*x+c*y-x*z
%dz/dt=x*y-b*z
global a b c
b=3;c=28;
xdot=[ 0,0,0];
xdot(1)=a*(x(2)-x(1));
xdot(2)=(c-a)*x(1)+c*x(2)-x(1)*x(3);
xdot(3)=x(1)*x(2)-b*x(3);
%其中a,b,c是系统参数。当a=35, b=3, c=28 时,Lorenz 系统是混沌的。
存为m文件运行后,报错:
??? Error: File: Untitled6.m Line: 32 Column: 1
Function definitions are not permitted at the prompt or in scripts.
哪位大侠能否给我传个 最大le随参数变化的图谱 的源程序 ,我想学习研究一下。谢谢,麻烦大家了。
eve810@126.com
[ 本帖最后由 meicyeve 于 2009-5-1 22:54 编辑 ]
回复 楼主 meicyeve 的帖子
混沌个人门外汉, 但LZ这个抱错是编程问题请参见7F,常见的程序出错问题整理 (eight)
http://forum.vibunion.com/forum/thread-46001-1-1.html 谢谢,谢谢,本人刚刚接触混沌和Matlab很多地方都不知道,谢谢楼上的指点.
另外,我找到了个类似的源程序,得出的图像我觉得不错,拿来跟大家分享 http://ustbchaos.blogspot.com/2007_02_01_archive.html
顺便再提个问题,如果我这个系统里 参数aij(i,j=1,2,3)有部分未知或全部都不知道,我想求参数aij在取何值时或者在aij满足什么条件(比如 a11*a13=4) 时 系统出现混沌或周期,理论上应该怎么算呢,希望能指点一下方向
[ 本帖最后由 meicyeve 于 2009-5-2 00:19 编辑 ] :@) 大侠们,都很忙么
[ 本帖最后由 meicyeve 于 2009-5-2 00:22 编辑 ]
回复 板凳 meicyeve 的帖子
这个就比较麻烦了,只有两个参数的话,你可以将一个参数用另外一个表达出来,然后做控制参数的分岔分析 多谢无水,您的几句话对我帮助很大,因为我这个是门外汉,呵呵 请教meicyeve一个问题,你得到三维最大李雅普诺夫指数的曲线图中,三个坐标分别表示什么,从你图中如何判断最大李雅普诺夫指数大于0???
回复 板凳 meicyeve 的帖子
LZ程序还报这个错吗?Function definitions are not permitted at the prompt or in scripts.
回复 8楼 ChaChing 的帖子
已经不报了,谢谢chaching回复 7楼 health 的帖子
三个坐标分别代表x1,x2,x3,那个是系统的三维相图,最大le>0我是通过程序算出来的
页:
[1]