求最大李雅普诺夫指数的matlab程序.docVIP

  • 111
  • 1
  • 约7.2千字
  • 约 6页
  • 2016-10-08 发布于重庆
  • 举报
求最大李雅普诺夫指数的matlab程序

程序一 function dx=Lorenz(t,x); dx(1,1)=10*(x(2)-x(1)); dx(2,1)=x(1)*(30-x(3))-x(2); dx(3,1)=x(1)*x(2)-8/3*x(3); dx(4,1)=0; dx(5,1)=0; dx(6,1)=0; function lambda_1=lyapunov_wolf1(data,N,m,tau,P) %??该函数用来计算时间序列的最大Lyapunov 指数--Wolf 方法 %??m: 嵌入维数 %??tau:时间延迟 %??data:时间序列 %??N:时间序列长度 %??P:时间序列的平均周期,选择演化相点距当前点的位置差,即若当前相点为I,则演化相点只能在|I-J|P的相点中搜寻 %??lambda_1:返回最大lyapunov指数值 %************************************************************************** %??ode计算整数阶系统的时间序列 %****************************************************************** delt_t1 = 0.001; t1 = 0:delt_t1:60; [tt1,y1]=ode45(@lorenz,t1,[-1,0,1]); xx1 = y1(:,1); x1 = spline(tt1, xx1, t1); data= x1(20000:10:60000);%采样 N=length(data); m=3; tau=11; %***************************************************** % FFT计算平均周期 %********************************************************** x=data; xPower=abs(fft(x)).^2; NN=length(xPower); xPower(1)=[];%去除直流分量 NN=floor(NN/2); xPower=xPower(1:NN); freq=(1:NN)/NN*0.5; [mP,index]=max(xPower); P=index; %************************************************************* min_point=1??; %要求最少搜索到的点数 MAX_CISHU=5 ;??%最大增加搜索范围次数 %FLYINGHAWK %? ?求最大、最小和平均相点距离 ? ? max_d = 0;? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???%最大相点距离 ? ? min_d = 1.0e+100;? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? %最小相点距离 ? ? avg_dd = 0; ? ? Y=reconstitution(data,N,m,tau);? ?? ?? ?? ?? ?? ???%相空间重构 ? ? M=N-(m-1)*tau;? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? %重构相空间中相点的个数 ? ? for i = 1 : (M-1) ? ?? ???for j = i+1 : M ? ?? ?? ?? ?d = 0; ? ?? ?? ?? ?for k = 1 : m ? ?? ?? ?? ?? ? d = d + (Y(k,i)-Y(k,j))*(Y(k,i)-Y(k,j)); ? ?? ?? ?? ?end ? ?? ?? ?? ?d = sqrt(d); ? ?? ?? ?? ?if max_d d ? ?? ?? ?? ?? ?max_d = d; ? ?? ?? ?? ?end ? ?? ?? ?? ?if min_d d ? ?? ?? ?? ?? ?min_d = d; ? ?? ?? ?? ?end ? ?? ?? ?? ?avg_dd = avg_dd + d; ? ?? ???end ? ? end ? ? avg_d = 2*avg_dd/(M*(M-1));? ?? ?? ?? ?? ? %平均相点距离 ? ? ? ? dlt_eps = (avg_d - min_d) * 0.02 ;? ?? ?? ?%若在min_eps~max_eps中找不到演化相点时,对max_eps的放宽幅度 ? ? min_eps = min_d + dlt_eps / 2 ;? ?? ?? ?? ?%演化相点与当前相点距离的最小限 ? ?

文档评论(0)

1亿VIP精品文档

相关文档