声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1196|回复: 3

[分形与混沌] 急!跪请高手进来帮忙

[复制链接]
发表于 2009-12-16 21:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
为什么时间序列是稳定的,我无论用最小数据量法还是wolf法,求出的李指数都是两个0呢?
按道理说稳态应该是两个负数才对啊 ?
小弟很急切的想知道原因在哪里 跪请各位高手指教!
先谢谢了。
(时序图 和 data值 还有小数据量法程序附后。)我用的是2000个点 去掉前500计算指数


clear
delt_t=1;
data(1:500)=[];% 列向量
data=data(1,:)';
N=length(data);%时间序列长度
dmax=max(abs(data));% 最大离散步进时间
if dmax==0
     data=data;
else
data=data/dmax;
end
% 序列平均周期
P=ave_T(data,N);
m=21;% 嵌入维
tau=13;% 时延

Y=reconstitution(data,N,m,tau );%reconstitute state space
M=N-(m-1)*tau;%M is the number of embedded points in m-dimensional space
for j=1:M
    d_max=1e+100;
    idx_j=2;
    for jj=1:M                                              %寻找相空间中每个点的最近距离点,并记下
        d_s=0;                                              %该点下标
        if abs(j-jj)>P                                      %限制短暂分离
            for i=1:m
                d_s=d_s+(Y(i,j)-Y(i,jj))*(Y(i,j)-Y(i,jj));
                d_min=d_max;
                if d_s<d_min
                   d_min=d_s;
                   idx_j=jj;
               end
            end
        end
    end
    %idx_j=30;
%     index(j)=idx_j;
    max_i=min((M-j),(M-idx_j));%计算点j的最大演化时间步长i
     
    for k=1:max_i              %计算点j与其最近邻点在i个离散步后的距离
        d_j_i=0;
        for kk=1:m-1
            d_j_i=d_j_i+(Y(kk,j+k-1)-Y(kk,idx_j+k-1))*(Y(kk,j+k-1)-Y(kk,idx_j+k-1));
            d(k,j)=d_j_i;
        end
    end
end
%对每个演化时间步长i,求所有的j的lnd(i,j)平均
[l_i,l_j]=size(d);
for i=1:l_i
    q=0;
    y_s=0;
    for j=1:l_j
        if d(i,j)~=0
            q=q+1;
            y_s=y_s+log(d(i,j));
        end
    end
    if q==0
        q=1;
    end
    y(i)=y_s/(q*delt_t);
end
x=1:length(y);
pp=polyfit(x,y,1)
lambda_1=pp(1);
yp=polyval(pp,x);


pp
max_ly=max(pp)

数据data如下:
data.txt (13.7 KB, 下载次数: 4)

[ 本帖最后由 zebtra_stripe 于 2009-12-16 21:37 编辑 ]
时间序列.jpg
回复
分享到:

使用道具 举报

发表于 2009-12-17 08:13 | 显示全部楼层
这三个参数:
% 序列平均周期
P=ave_T(data,N);
m=21;% 嵌入维
tau=13;% 时延
是怎么求出来的?
 楼主| 发表于 2009-12-17 09:44 | 显示全部楼层

回复 沙发 无水1324 的帖子

平均周期的程序:
function P=ave_T(x,N)
Y=fft(x);
N=length(Y);
L=round(N/2);
Y(1)=[];
power=abs(Y(1:L)).^2;%%幅度的平方为能量
nyquist=1/2;
freq=(1:L)/(L)*nyquist;
%subplot(2,1,1);plot(freq,power);
%title('freq-power gram');
period=1./freq;
%subplot(2,1,2);plot(period,power);
%title('period-power gram');
[mp,index]=max(power);
P=period(index);
%end
至于嵌入维数 我GP算法 还有关联维数算法都试了,因为在变参数下的m都是不同的,我就选了个比较大的。
但是我是对照数据仔细筛选过的,最后定的21
延时刚开始用自相关函数法算了,同样的在变参数下的tau都是不同的,选择了一个可以表现系统大部分形态的值
我想它们两个的影响不至于把所有的稳态李亚普诺夫指数都变成0 吧!

还请高手指教!谢谢
发表于 2009-12-18 08:02 | 显示全部楼层

回复 板凳 zebtra_stripe 的帖子

是的,在具体的我也不知道你错在哪里了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-20 10:49 , Processed in 0.060631 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表