原帖由 chenwenjuan86 于 2007-3-13 10:05 发表
用小数据量法求lyapunov指数时最后一部分程序如下
linear_zone = '; % 线性区域
F = polyfit(linear_zone,Y(linear_zone),1);
Lyapunov1 = F(1)
线性区域如何判断呢
- function [Lyapunov1]=LargestLyapunov(data,m,tau,P)
- % 用最小数据量法计算混沌时间序列 Lyapunov 指数
- % tau = 1; % 时延
- % m = 14; % 嵌入维
- % data ; % 列向量,即 n*1
- taumax =128; % 最大离散步进时间
- % P = 2; % 序列平均周期
- % 作者:Adu,武汉大学,adupopo@163.com
- Y = lyapunov_small(data,tau,m,P);
- figure(1)
- plot(Y(1:taumax),'-b'); grid; xlabel('i'); ylabel('y(i)');
- n=input('请输入要拟合长度n(默认为8)=');
- if isempty(n)
- n=8
- else
- n
- end
- linear_zone = [1:n]'; % 线性区域
- F = polyfit(linear_zone,Y(linear_zone),1);
- Lyapunov1 = F(1);
- yp=polyval(F,1:n+20);
- hold on
- plot(1:n+20,yp,'-r')
- hold off
复制代码
你说的是不是这个程序?很明显,这里是有人为判断后输入线形区域的点数 |