www.gusucode.com > 混沌时间序列工具箱 > 混沌时间序列工具箱/ChaosToolbox1p0_trial/EmbeddingDimension_Cao/Main_EmbeddingDimension_Cao.m

    % Cao方法计算混沌时间吸引子的嵌入维 - 主函数
% 使用平台 - Matlab6.5 / Matlab7.0
% 作者:陆振波,海军工程大学
% 欢迎同行来信交流与合作,更多文章与程序下载请访问我的个人主页
% 电子邮件:luzhenbo@yahoo.com.cn
% 个人主页:http://luzhenbo.88uu.com.cn

clc
clear
close all

%-----------------------------------------------------------------
% 产生 Lorenz 混沌时间序列

sigma = 16;             % Lorenz 方程参数 a
b = 4;                  %                 b
r = 45.92;              %                 c            

y = [1,0,0];            % 起始点 (1 x 3 的行向量)
h = 0.01;               % 积分时间步长

k1 = 10000;             % 前面的迭代点数
k2 = 5000;              % 后面的迭代点数

z = LorenzData(y,h,k1+k2,sigma,r,b);    % 用四阶 Runge-Kutta 法产生 k1+k2 个点
x = z(k1+1:end,1);                      % 去掉前面 k1 个过渡点, 时间序列 - 列向量

%-----------------------------------------------------------------
% 入口参数

tau = 11;               % 时延
DimensionMax = 8;       % 最大嵌入维
k = 3;                  % 需要计算的近邻点个数

%-----------------------------------------------------------------
% 调用cao函数
[E1,E2] = cao_luzhenbo(x,tau,DimensionMax,k);

%-----------------------------------------------------------------
% 结果作图
figure(1); 
plot(1:DimensionMax,E1,'b+-',1:DimensionMax,E2,'kx:');
xlabel('Dimension(d)');
ylabel('E1(d) & E2(d)');
title('Cao方法求嵌入维');
legend('E1','E2',0);